Oops-re's Blog.

Oops-re's Blog.

一旦接受了自己的软弱,那我就是无敌哒

简单复习--二进制漏洞
二进制漏洞-简单总结常见漏洞 12345栈溢出漏洞(Stack-Overflow)堆溢出漏洞(Heap-Overflow)释放后重引用漏洞(Use-After-Free)双重释放漏洞(Double-Free)越界访问漏洞(Out-of-bounds) 栈溢出原理栈溢出是指程序在使用栈空间时,向栈中写入的数据超出了栈的大小,导致覆盖了栈的边界,破坏了程序的正常执行流程。 常见利用点数组 危险函数:gets()、strcpy()、 好像C语言的库函数都挺不安全的... 修复限制输入字符长度,修改危险函数的调用 堆溢出原理堆溢出的原理是当程序向堆中分配内存时,分配的内...
简单复习--软件保护绕过
软件保护绕过GS保护cookie校验 通过在生成栈帧的时候先插入一个cookie cookie通过ebp^data节的第一个字(dword) 在函数返回的时候校验cookie是否正确来保护栈,防止返回地址被溢出覆盖 绕过方法 攻击虚函数 通过成员变量修改虚表 来达到控制程序流程且不触发GS的效果 控制cookie 函数未启用cookie校验safeSEH保护safeSEH表 – 由编译器生成,保存异常函数地址 检验规则 绕过方法硬刚可以知道 执行异常函数的情况如下: 1.跳转触发的异常函数地址位于本模块之外 且DEP关闭 通过堆溢出绕过,将shellcod...
UPX逆向分析
UPX逆向分析UPX原理 UPX是一种流行的开源可执行文件压缩工具,它可以减小可执行文件的体积,并且可以提高程序的启动速度。UPX实现可执行文件的压缩是通过加壳技术实现的。 UPX的加壳原理大致如下: 1. UPX首先读取可执行文件的头部信息,包括文件格式、程序头、节表等信息。 2. 然后,UPX在可执行文件中添加一个新的“壳”程序,通常是一个简单的解压缩程序。这个壳程序会被添加到文件的头部或尾部,具体位置取决于可执行文件格式和UPX的配置。 3. 接下来,UPX将原始可执行文件的内容压缩,并将压缩后的数据添加到壳程序的后面。 4. 最后,UPX修改可执行文件的程序头和节表等其...
afl_Fuzzing学习
Fuzzing系列学习参考: HotSec/Fuzzing101: An step by step fuzzing tutorial. A GitHub Security Lab initiative 原理生成随机输入并将其输入到目标程序中,以寻找程序中的漏洞 123456789选择种子文件:AFL会选择一些种子文件,作为测试用例的基础,用于生成随机输入。种子文件可以是程序的正常输入,也可以是其他测试用例。插桩和监视:AFL会对目标程序进行插桩和监视,以便在程序执行时收集关键信息,比如代码覆盖率、分支覆盖率、路径覆盖率等。AFL会利用这些信息,帮助生成更加有针对性的测试用例。生成随机输入...
CVE-2018-18708
CVE-2018-018708复现参考: Tenda 路由器栈溢出详细分析(CVE-2018-18708)_黑客技术 (hackdig.com) 相关信息: NVD - CVE-2018-18708 (nist.gov) 该漏洞是处于httpd服务的缓冲区溢出漏洞,web服务器在处理post请求时,对ssid参数直接复制到栈上的一个局部变量中导致栈溢出 第一次分析固件上的漏洞 磕磕绊绊捏Orz 复现思路通过 ubuntu-qemu 起一个模拟路由的环境 然后通过宿主机对qemu启用的web服务器进行二进制攻击 分析环境 固件服务 httpd(ELF) 调试环境 gdb 静态...
NCTF--复现
NCTF复现虽然比了两天,但是一题也没有做出来 菜。。 REVERSEez_revZ3爆破,由于对z3的不了解导致没有解出来QAQ (就是把Slover()放错位置辣) 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556from z3 import *checkstr=[0x7A, 0x08, 0x2E, 0xBA, 0xAD, 0xAF, 0x82, 0x8C, 0xEF, 0xD8, 0x0D, 0xF8, 0x99, 0xE...
复现--安洵杯
2022 安洵杯Reverse第一题还好reeee动调就能出 但是后面看了官方是RC4变异 然后其他题也好难QAQ 看wp都复现不出来的程度 我好菜。。。 Re1 wcstombs函数将a2转换会宽字节存到str处 sub_7D11D0布置函数,也就是初始化 sub_7D1280调用布置的函数 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758unsigned char ida_chars[] ={ 0xF1, ...
SYC2022--复现

[极客大挑战]2022 复现

这次的极客大挑战学到了不少东西,包括之前没有深入了解的

android方面的逆向

RC4加密与解密

Base变表的爆破

pwn方面

主要还是在做题得到角度能到拓展

(做出来的题就不复现了哈)….(@A@)

花指令随记
分为两大类: 可执行花指令 不可执行花指令 可执行花指令IDApro函数的识别分析失败是因为IDA检测出堆栈操作破坏堆栈平衡 函数调用首先要知道一个函数的调用以及返回的栈变化 1234567call label ---push 下一条指令的地址/mov eip,offset labellabel:add [esp],5 ---[esp]+5ret --- pop eip IDA主要还是看retn处的堆栈不平衡,没有将esp=ebp。 混淆特征码 1234mov op1,op2 ...
avatar
Oops-re