前言昨天刚刚结束的湾区杯全场只有5解的pwn题,差点拿到3血(其实差了不少: / )失去了AI的辅助,全身心投入逆向分析,看起来也不是件坏事 附件分析附件可以到看雪上下载: 下载链接本题的数据传输采取了类似protobuf的序列化/反序列化数据包传输指令所以我们在进行堆利用前要将自定义的vm操作梳理清楚 数据包逆向在主逻辑前,先是进行了对时间种子的设置经典的伪随机数 随后是个循环读入注意看这里读入的循环判断,是当前读入的字节(char)为负数 字符串与数字的转化读入后进行了dump_num操作,按照一定格式把str转化为__int64 123456789101112131
off_by_null—-从null戳到getshell| 0 | 前言好久没写博客了……最近发生了很多事情,有点疲惫 :_( 选择了二进制安全,再痛苦也要走完,只是最近精神上有些失落 :( 好羡慕铃仙师傅啊 | 1 | 基础知识在ctf的二进制安全的对堆利用板块,有一种特殊的漏洞 : off_by_null 这种漏洞指的是我们能对一个堆块越界写一个字节,且这个字节是'\x00' 从直觉上看,这几乎没有任何一点点利用价值 heap_overflow >> off_by_one >> o
house of water : 一种无泄露情况下的堆利用手法| 0 | 前言一种可以在没有显式打印函数存在情况下,将libc指针写入tcachebins的手法 虽然条件苛刻但是思路十分巧妙 | 1 | 利用条件 我们可以对堆块进行use-after-free操作 能够malloc/free一个较大堆块(0x9000) 无需溢出与泄露内存即可完成攻击 我们在攻击的过程中需要几枚悬空指针,如果在真实ctf环境中要先堆好风水,预留好指针的位置 | 2 | 攻击演示0x00设置伪造chunksize当我们申请了0x3d0与0x3e0两种堆块并释放后,在tcachebins_struct中会出现一个
TOTOLINK–webserver与cgi| 0 | 前言经过了nepctf的洗礼,感觉自己找回了对二进制安全的热爱 依旧不会web,依旧被拷打…不过已经开始补web的知识了 | 1 | web基础知识固件包中,常见的二进制文件包括httpd/xxx(.cgi) httpd用于 维护webserver,监听端口,等待客户端发发送的请求 显示静态页面(资源) 调用后端程序(cgi,php)处理请求 处理HTTP协议细节,如重定向、状态码、缓存控制 cgi用于请求处理的具体实现 httpd会fork出一个子进程用于执行(execve)cgi程序 httpd获取client报文,将不
NEPCTF2025-pwn| 0 | 前言今年的nep和往年比简单不少,但对我来说还是很有挑战的 QwQ 之前的半个月因为学iot和kernel导致我对二进制安全有点提不起兴趣,但是nep一下把我的状态打满了 :) 本次的成绩为4/5,差一点ak了 | 1 | 题目解析0x00.Time 12345678910111213141516171819unsigned __int64 input_my_name(){ char *argv[5]; // [rsp+10h] [rbp-30h] BYREF unsigned __int64 v2; // [rsp+38h] [
Linksys 栈溢出漏洞复现| 0 | 前言依然是一道关于hook使用方法的复现 此次复现记录来源于一本书家用路由器0day漏洞挖掘技术 同时使用的攻击手法是一种特殊的栈溢出 | 1 | 固件下载&解包下载地址linksys_wrt54gv2 固件解包1binwalk -e --preserve-symlinks WRT54GV3.1_4.00.7_US_code.bin | 2 | 环境修复 可以看到有很多关于nvram函数的调用,我们使用qemu模拟不可能有nvram,所以要使用hook劫持这些函数 工具 zcutlip修复NVRAM 下载地址 https://github.c
NetCore 后门RCE漏洞| 0 | 前言在netcore路由器设备中存在硬编码的登录密码,可以通过登录+命令注入实现执行任意系统命令、上传/下载文件、控制路由器任意命令执行 | 1 | 固件下载&解包&qemu配置固件下载下载地址 固件解包1binwalk -e --preserve-symlinks T1.bin qemu配置本固件是socket服务,我习惯使用qemu的system仿真 下载所需的qemu,内核文件 debian_wheezy_mipsel_standard.qcow2 vmlinux-3.2.0-4-4kc-malta 将文件复制到虚拟机
PSV-2020-0211:Netgear R8300 UPnP 栈溢出漏洞| 0 | 前言本次的漏洞复现比较特殊的是环境搭建中的 hook操作,属于 iot安全研究中一个很巧妙的手法 我通过这个漏洞展现一个如何通过 hook绕过一些硬件的检测 | 1 | 环境搭建1.1 下载官方提供了固件的下载,根据官网漏洞报告于 V1.0.2.134 中修复了该漏洞,所以可以选取任意之前的版本,我选择的是 V1.0.2.130 下载地址 : netgear R8300 解包依旧使用 binwalk解包 1binwalk -e --preserve-symlinks R8300-V1.0.2.130_1.0
TP-Link SR20 RCE漏洞| 0 | 前言TDDP协议(TP-LINK Device Debug Protocol) 是TP-LINK申请了专利的一种在UPD通信的基础上设计的协议,而Google著名安全专家Matthew Garrett在TP-Link SR20设备上的TDDP协议文件中发现了一处可造成 “允许来自本地网络连接的任意命令执行”(RCE) 的漏洞. UPD通信协议的设计目的:轻便、快速、不建立连接(不像TCP那样要三次握手) | 1 | 固件下载&解包&qemu配置下载地址 :SR20(US)_V1_180518 解包1binwalk -e --pre
CVE-2018-7034 信息泄露漏洞复现| 0 | 前言TrendNet设备,参数处理过程和前两篇文章复现差不多,这次了解到跨文件的漏洞利用–c语言处理后的请求被传入php文件实现了account与passwd的泄露 可惜的是现在已经没有公网设备还留存着这个漏洞,导致只能在本地复现 : ( | 1 | 固件下载与解包TrendNet官网: 固件下载地址 下载后在虚拟机中使用binwalk解包 1binwalk -e --preserve-symlinks TEW751DR_FW103B03.bin | 2 | 漏洞文件逆向分析php文件分析我们打开web文件夹(web文件夹内的文件会