摘要:
在逆向一些x64的代码时,会发现有一小段汇编代码理解不了,这个时候回想,要是能单独执行这一小段汇编就好了。现在我就介绍一个我的解决方法:很小汇编一段代码,但是不好理解,我就把它单独写成了一个函数,供c语言调用,这样下来执行个几次,就大概知道意思了。 当然了,完全可以设置rip/rdi/rsi/rdx/rcx/r8/r9等寄存器为想要的值后执行即可,这是另外的一种方法。 ... 阅读全文
摘要:
(以前为给同学分享写的点东西,很基础。)现在的比赛中堆溢出非常常见,对于glibc下malloc的理解也要深入一些。 malloc_chunk的对齐属性 在glibc中,malloc_chunk以 2*sizeof(size_t)对齐,在32位系统中以8字节对齐,在64位系统中一般以16字节对齐。M 阅读全文
摘要:
很久很久前写的。越来越意识到作为一名科班出身的学生的重要性。 自己在使用IDA时,发现F5产生类似的这种代码。 其中有一句,v5 <= -141920797,我在想为什么是负数。如果把-141920797化为16进制,如下图: 为什么不是比较的无符号数0xab3f35e3? 看一下对应的汇编代码,如 阅读全文
摘要:
Crackhash 这个题目是我为月赛出的,完全仿照自mma 1st simple_hash。 这道题目比较有意思的地方在于在32位的程序中模拟了64位的算术运算。 题目的思路很清晰。要求输入全为数字,然后对输入的数字求hash值并判断是否正确。如下图: 所以关键的部分就在于cacl_hash这个函 阅读全文