1.level1
2.level3
3.level3_x64
4.smashes
5.easystack(nepctf)
6.[签到] 送你一朵小红花 (nepctf)
@TOC
level1
1 | #!/usr/bin/env python3 |
level3
重新做这个题弄懂了接收地址时以及p32,p64,p16的一些细节
1 | #!/usr/bin/env python3 |
level3_x64
x64位程序调用函数一般应该使用万能gadget(ret2csu)控制参数
这个题ROPgadget中只能控制rdi和rsi,无法控制rdx,但由于调用read函数时rdx被置于0x200h,并且没有改变,rdx大于8,因此能够leak出我们所需地址,因此可以不用csu解题
这里练习一下ret2csu,
1 | #!/usr/bin/env python3 |
smashes
canary:ssp攻击(故意触发___stack_chk_fail,覆盖argv[0],输出已知地址字符串)
1 | #!/usr/bin/env python3 |
easystack(nepctf)
和smashes一个知识点
1 | #!/usr/bin/env python3 |
[签到] 送你一朵小红花 (nepctf)
知识点:
1.malloc开了0x18空间,而栈只有0x10空间
2.地址随机化,低位覆盖
1 | #!/usr/bin/env python3 |
-------------本文结束感谢您的阅读-------------