本着随意的步伐步入9-6,准备吃饭,发现一圈老师,我头也没回的跑去了楼道吃饭。--6.22
6.22 To do list:
1.每日Pwn学习
2.算法导论高效阅读两小时
3.CPP完成第四章练习 阅读完第五章
一:每日Pwn学习
32位程序是栈传参,64位程序是寄存器传参。
1.查看保护,有NX保护,所以用ROP(代码复用技术)绕过,关键在于system和/bin/sh的地址
2.-j plt查看plt表中并没有system函数
3.也找不到/bin/sh
4.于是用libc
ldd查看动态库依赖关系
plt表和got表这些地址都是可以取的
换成.got就可以看got表里了
到了一个函数,就把返回地址放进去,
为什么syscall不是先放返回地址,是因为那只是指令不是函数
这里就是覆盖返回地址到write,预留返回地址vul,第一个参数1,第二个参数gets_got表就是真实地址(因为已经执行过一遍了),第三个参数打印4个字节
exp!
二:算法导论
今天看的有抑郁起来了,越看越看不懂,冷静冷静,下次设置页书较好。
三:CPP
在这书找回来了点自信,完成了个 人 工 智 能 ,完成了第四章练习,第五章形参准备再看一下。
今天肚子还是不太舒服,不过应该快好了,顺便cue一句tyy的渣男形成之路。