rop
  • 2024-07-06栈溢出入门03 ret2syscall ROP NX绕过
    本例题会使用ROP技术来绕过堆栈不可执行保护(NX保护),随着NX保护的开启,以往直接向栈或者堆上直接注入代码的方式难以继续发挥效果。攻击者们也提出来相应的方法来绕过保护,目前主要的是ROP(ReturnOrientedProgramming),其主要思想是在栈缓冲区溢出的基础上,利用程序中已有的小片段
  • 2024-06-16编写多个函数的ROP链
    我们已经学会了编写单个和两个简单函数的ROP链,在这里我们说一下,编写ROP链多个需要注意的问题之前我们在学习两个函数的ROP时,编写了这样的payload我们当时没有考虑,参数冲突和栈溢出大小,现在我们来说一说举个例子,如果我们上次学习的两个函数的ROP中没有gets函数,而是read函数我们
  • 2024-06-16编写单个函数的ROP链
    什么是ROP链在我初识栈溢出那篇博客已经详细的讲了函数的调用过程(基于X86框架),不了解的可以看一下,没有这个理论基础,是学不好ROP的。现在我们说一下什么是ROP。ROP链就是通过返回地址的修改来完成的编程,调用特定的函数的一种编程模式。我们可以联想一下你做的最简单的栈溢出的题,返
  • 2024-06-12栈溢出漏洞利用二,ret2syscall,构造rop链条实现攻击(pwn入门)
    原理原理就直接参考别的大佬写的文章讲下了 参考文章:https://blog.csdn.net/qq_33948522/article/details/93880812ret2syscall,即控制程序执行系统调用,获取shellret2syscall通常采用execve(重点函数,32位调用号为0x0b,64位调用号为0x3b)ROPReturnOrientedProgramming,其
  • 2024-06-03ERP发展阶段一之ROP(库存订货点法)
    库存订货点方法(ROP)企业为了维持均衡的生产,一般会有相应的原材料和产成品库存,作为应付异常变化的一种缓冲手段。但是,库存要占用流动资金,应该考虑机会成本和库存需要场所和管理人员带来相关费用,以及库存物可能丢失、变质、贬值、淘汰,造成损失。因此表明,企业在不断地为库存付出代
  • 2024-05-29栈溢出漏洞利用,详解基本ROP,构造rop链条实现攻击(pwn入门)
    写在前面:随着NX(Non-eXecutable)保护的开启,传统的直接向栈或者堆上直接注入代码的方式难以继续发挥效果,由此攻击者们也提出来相应的方法来绕过保护。目前被广泛使用的攻击手法是 返回导向编程 (ReturnOrientedProgramming),其主要思想是在 栈缓冲区溢出的基础上,利用
  • 2024-04-24延迟绑定与retdlresolve
    延迟绑定与retdlresolve我们以前在ret2libc的时候,我们泄露的libc地址是通过延迟绑定实现的,我们知道,在调用libc里面的函数时候,它会先通过plt表和gor表绑定到,函数真实地址上,那么在第二次调用的时候就可以用了,不用再次绑定那么它是怎么样实现的呢,我们还是通过一个题目一步步去看一
  • 2024-03-02基本ROP学习
    基本ROP学习初学者水平有限,理解可能有误,以CTFshowpwn43-46为例题。返回导向编程,核心是控制ret点ret2shellcodeNX保护未开,bss段可执行。bss段:存储未初始化的全局变量和静态变量的内存区域ret2text在源文件中寻找利用点ret2libc一般为system函数和/bin/sh都有,二者其一没有
  • 2024-02-16HackTheBox - Drive
    #nmap--top-ports=100010.10.11.235StartingNmap7.94SVN(https://nmap.org)at2024-02-1511:10CSTNmapscanreportfordrive.htb(10.10.11.235)Hostisup(0.12slatency).Notshown:997closedtcpports(reset)PORTSTATESERVICE22/tcpop
  • 2024-02-14迟来的HIT2024和reaworld2024体验赛WP
    目录前言碎语2024.2.14中午rwctf2024体验赛vision哈工大青训营2024结营赛计算器小技巧神奇玩意gdb!再也不用苦哈哈往回翻跟踪fork赛后复现rwpwnhttp搜索字符串,github找源码具体构造GET路径穿越POST栈溢出构造ROP前言碎语2024.2.14中午过年玩也玩了,休息也休息了,终于把之前
  • 2023-12-30铁人三项(第五赛区)_2018_rop
    铁人三项(第五赛区)_2018_rop函数参数劫持32位泄露libcfrompwnimport*context.log_level='debug'#io=gdb.debug('./2018_rop','break*0x8048474')io=process('./2018_rop')elf=ELF('./2018_rop')Lib=ELF('
  • 2023-12-30PicoCTF_2018_rop_chain
    PicoCTF_2018_rop_chain函数参数劫持整数型绕过\x00绕过len()函数vuln中存在栈溢出flag是后门函数,只要满足win1&&win2和a1=0xDEADBAAD就可以得到flag3.win1&win2存在于.bss段上,但是可以利用win_function1&win_function2两个函数构造win1win2fro
  • 2023-08-08 铁人三项(第五赛区)_2018_rop
    铁人三项(第五赛区)_2018_rop经典ret2libc3expfrompwnimport*fromLibcSearcherimport*context(os='linux',arch='i386',log_level='debug')#p=process('./pwn')p=remote('node4.buuoj.cn',28146)elf=ELF
  • 2023-07-142023.7.14
    原本应该从7.10学校放暑假就开始记录的,但是之前因为一些原因没有开始。前两天主要是把之前学的pwn的相关内容复习了一下,因为在学校最后一段时间忙着备考英语六级和期末考,有几周没动网安相关的东西,有点遗忘了。从基本的栈溢出开始,基础rop的ret2text、ret2shellcode、ret2syscall
  • 2023-07-125.2 基于ROP漏洞挖掘与利用
    通常情况下栈溢出可能造成的后果有两种,一类是本地提权另一类则是远程执行任意命令,通常C/C++并没有提供智能化检查用户输入是否合法的功能,同时程序编写人员在编写代码时也很难始终检查栈是否会发生溢出,这就给恶意代码的溢出提供了的条件,利用溢出攻击者可以控制程序的执行流,从而控制
  • 2023-05-14pwntools
    PwntoolsCheatsheet(github上薅的)(方便自己查找)ProgramInteractionEnvironmentandContextsLoggingandOutputEncoding,PackingandUtilityAssemblyandShellcraftELFs,StringsandSymbolsReturnOrientedProgrammingSROPandSigreturnFramesFormatStringEx
  • 2023-05-13【技术分享】ROP技术入门教程
    【技术分享】ROP技术入门教程原文地址:https://ketansingh.net/Introduction-to-Return-Oriented-Programming-ROP/译文仅供参考,具体内容表达以及含义原文为准。 翻译:beswing预估稿费:200RMB投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿 前言不可否认的是,不
  • 2023-04-27pwn刷题笔记(ret2libc、ROP)
    ciscn_2019_c_1 (ret2libc+rop)checksec查看保护机制,开启了NX,不能往栈里写入shellcode。encrypt函数反汇编encrypt(){chars[50];puts(InputyourPlaintexttobeencrypted)gets(s);ifstrlen(strlen(s)<x){puts("ciphertext")
  • 2023-04-24三种栈溢出保护
    Canary:在系统中插入一个"Canary"值,即一个特定的随机数或标记。这个Canary值被放置在缓冲区(buffer)的末尾,用于检测缓冲区溢出(bufferoverflow)攻击。当攻击者试图修改缓冲区以达到控制系统的目的时,他们通常会尝试覆盖Canary值。由于Canary值是随机生成的,攻击者不知道正确的值是什
  • 2023-03-27pwn学习笔记-ROP和hijack GOT
    前情提要修改返回地址,让其指向溢出数据中的一段指令(shellcode)修改返回地址,让其指向内存中已有的某个函数(return2libc)修改返回地址,让其指向内存中已有的一段指令(ROP)修
  • 2023-03-21初探内核(三)
    pwnhubkheap学完了基础的三种内核漏洞,回头看看前一周的pwnhub公开赛的这道kheap先查看start.sh文件和init文件可以看到开启了kaslr、smep,双核单线程运行
  • 2023-01-06栈溢出(一):栈溢出原理以及基本ROP
    栈栈是一种数据结构,遵循后进先出的原则(LastinFirstOut),主要有压栈(push)与出栈(pop)两种操作eax,ebx,ecx,edx,esi,edi,ebp,esp等都是X86汇编语言中CPU上的通用寄
  • 2022-12-29ROP返回导向编程
    同步:https://x.zhufn.fun/rop返回导向编程看从零到一第一遍有没懂的地方记录一下长篇大论:现代操作系统往往有比较完善的MPU机制,可以按照内存页的粒度设置进程的内存使用
  • 2022-12-29强网杯2018 - core 学习记录
    环境搭建首先解包core.cpio,去掉init中poweroff强制关机那一句,然后重新打包./gen_cpio.shcore.cpio启动qemu的时候出现了报错Kernelpanic-notsynci
  • 2022-12-29MINI-LCTF2022 - kgadget 学习记录
    关于ret2dir用来绕smep、smap、pxn等用户空间与内核空间隔离的防护手段。首先,在内核中存在directmappingarea,线性地直接映射了整个物理内存空间。这就意味着,对于