CSAPP课后实验第四集:年轻人的第一个动态内存分配器。该部分会结合heap exploit一起理解,就个人能力来说从头搓一个malloc不现实,这部分会参考前辈的实现然后结合对glibc 2.23中malloc机制的一些理解来搞。在理解的基础上试着复现ptmalloc2的一些机制。本篇blog对于想过关这个lab的没有参考价值。
CSAPP课后实验第三集:Attack Lab。栈溢出和ROP,年轻人的第一道二进制题目。
CSAPP课后实验第二集:Bomb Lab。年轻人的第一道逆向题目。
CSAPP课后实验第一集:Data Lab。用最底层的位运算实现某些高级的逻辑功能以及对浮点数的操作。
突然某天开机之后“卡顿”
开了Lenovo vantage的那个电池优化锁80电量导致的。一直开着无所谓,但是如果中间关闭了冲到100,开机后打开系统可能会判断一直处于断电或者什么别的状态反正会限制cpu主频导致非常卡。关了就行了。md亏我还检查系统。
tpm重启自动关闭 ?
不知道怎么解决的最后,在bios里将安全启动和ptt开开关关,清除ptt keys多搞几次就好了,忘了怎么解决的了
House of Roman是fastbin dup和Unsortedbin attack利用的组合,是一种将malloc_hook写为main_arena+88后再写其低三字节改成one_gadget的攻击方式。该方法不需要泄露地址且能绕过ASLR,但是代价是需要爆破。House of Rabbit是一种fastbin的overlap攻击,通过修改fastbin的size域或者fd指针然后触发malloc_consolidate,能够将我们伪造的chunk变成合法的chunk。
2024.4.6: NAS复现RCE?
听不懂一点 python
https://hust-l3hsec.feishu.cn/docx/E3JtdTKtCoDrwzxyIIIc8LaYnCg
2024.4.17:CFI(Control Flow Integrity)与绕过
控制流保护,防止异常跳转。理想CFI:
已知所有控制流跳转
对所有间接跳转指令进行监控
Canary就是一种后向跳转指令保护
clang cfi:函数头签名写数据,跳转之前取校验无法强保证,代码段被篡改,强依赖于代码段不可写
intel cet?shadow stack
校验函数头
clang——cfi类似...
有限做题经验的小总结
参阅 https://course.rs/basic 即可,写太多浪费时间,后续的东西全写在这闲了再整。Rustlings的题目全部写了,熟练度有所上升但是感觉没什么太多新东西。
堆漏洞利用之unsorted bin attack & House of Lore。Unsorted bin attack可以将一个任意地址写成一个大数(unsorted bin链头的地址,main arena+88或main arena+96)。House of Lore则可以借助small bin实现任意地址的chunk分配。