csapp attack lab实验总结

这5个实验都可以说是栈溢出然后修改ret地址而进行的一系列攻击操作。对于前三个可以代码注入的实验来说。
1.考虑shellcode的编写地址位置,shellcode写在哪是关键。
(1)如果要溢出的栈帧开辟的足够大,那就写在这个要溢出的栈帧中,然后在调用当前栈帧的rsp作为shellcode的地址。
(2)如果开辟的栈帧空间较小,那么考虑在上一个栈帧写shellcode 根据jmp rsp(这个rsp是上一个栈帧的rsp)或者根据已知一个buf的地址加偏移量作为shellcode的地址。
2.所调用的函数完成时,栈指针会add 栈帧的空间,此时栈指针到返回地址处,最后会执行ret 这个ret是以后能gadget的关键。
3.这个实验的指令有很大的限制,根据图表而对应抓取的指令很少,所以后两个level只能从那些指令里拼凑。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值