汇编
counsellor
这个作者很懒,什么都没留下…
展开
-
Assembly call和ret指令
很多人不知道call和ret的具体动作,只知道call的时候会跳转到被调用函数的地址继续执行指令,ret会直接跳转到返回地址,至于寄存器和栈上的变化不是很了解。0x00 定义CALL pushes the return address onto the stack and transfers control to a procedure.RET pops the return addr...原创 2018-06-14 01:49:55 · 1656 阅读 · 0 评论 -
shellcode转换为汇编代码的方法
0x00 shellcode这段是楼主最近在看历史中的exp时发现的shellcode,功能是弹计算器,在09年时使用很广泛,但是没有找到相关的分析文献,准备有时间研究下。0xdb 0xc0 0x31 0xc9 0xbf 0x7c 0x16 0x70 0xcc 0xd9 0x74 0x24 0xf4 0xb1 0x1e 0x58 0x31 0x78 0x18 0x83 0xe8 0xfc ...原创 2018-07-05 00:57:09 · 6685 阅读 · 1 评论 -
test和je指令的组合用法
0x00 指令介绍test 指令用于两个操作数的按位AND运算,并根据结果设置标志寄存器,结果本身不会写回到目的操作数。 要点:1. AND 运算结果为0时, ZF(zero flag)置位;2. test可以影响CF,OF,PF,SF,ZF标志位;3. 两个操作数相等,同时为0时,AND 结果为0, 此时ZF置位。je 指令【Jump if Equals】在ZF被置位时跳转。...原创 2018-07-11 18:27:23 · 24441 阅读 · 1 评论 -
mov和lea指令的区别
0x00 指令概念lea 指令(Load Effective Address)只能用于 memory addressing calculations, 不能用于 address memory 的计算。lea 接受标准的memory addressing operand,除了计算特定的寄存器(可能是任意用于一般目的的寄存器)的内存偏移,其他什么都做不了。这个指令能干啥?两件add 指令做不到...原创 2018-07-18 12:54:31 · 19287 阅读 · 3 评论