在开发过程中,调试器是绕不开的一环,如果使用gdb的话,pwndbg是必不可少的伴侣。 平时大家主要在 PC 上使用 pwndbg,但偶尔只带了手机时,也需要在手机上做一些探索。 借助termux,可以实现在手机上编译并调试,不过只有原版的gdb未免过于简陋,有没有办法将 pwndbg搬到手机上呢?有的,兄弟...
-
上海磐石行动 2025 初赛 - user
利用负索引越界修改
stdout
泄露libc并覆盖__free_hook
为system
实现get shell。 -
上海磐石行动 2025 初赛 - account
栈溢出利用ret2libc构造32位ROP链泄露libc并执行
system("/bin/sh")
。 -
长城杯 2025 决赛 - orw
利用 protobuf-pwn-tool 还原结构体,分析错误RC4实现与无效seccomp,构造可打印shellcode绕过检查获取shell。
-
西湖论剑 2025 初赛 - babytrace
利用
int3
干扰 ptrace 监控,劫持strlen@GOT
实现 ROP 链,最终通过system
拿 shell。 -
西湖论剑 2025 初赛 - Heaven's door
利用无效seccomp绕过限制,直接注入常规shellcode获取shell。
-
永远在“服务器故障”的gpg与解决方案
自从配好了
*ray
的 DNS 接管并自动分流后,我在使用 gpg 接收公钥的时候就一直显示 “gpg: 从公钥服务器接收失败:服务器故障”。这令我非常头疼,明明 keyserver 的网页都可以正常打开,但是没法使用 gpg 下载公钥。关闭*ray
后,有时候可以,有时候又不行。 背后的原因到底是什么? hkp 和 http 协议导致发送的 DNS 请求又有什么区别? 这次,我终于抓住了破解了其背后的秘密... -
国赛 决赛 2025 - mqtt
利用MQTT客户端处理消息时的条件竞争,通过
sleep
窗口篡改全局变量arg
实现命令注入。 -
L3HCTF 2025 - Library
题目基于 Kotlin/Native 编译,利用UTF-16字符串特性与jvm heap内存布局,通过构造伪对象泄露libc地址并FSOP获取shell。
-
L3HCTF 2025 - heack_revenge
利用
game
函数中的pop rbp
劫持rbp指向堆,构造tcache链分配chunk 0写入ROP链,通过leave; ret
实现堆上ROP拿shell。