通常IDA对一个PE文件逆向出来的代码中,存在四个最基本的段text、idata、rdata、data,四个段为PE文件的结构中对应的段。 一、text段: 该段位程序代码段,在该段一开始就可以看到: .text:00401000 ; Segment type: Pure code .text:00401000 ; Segment per...

[转]在嵌入式中使用gdbserver

2016.09.15, ASM ,抢沙发,1936人打酱油
一:准备 PC机:172.16.7.153 broad:172.16.7.155 # ifconfig eth0      Link encap:Ethernet  HWaddr 00:07:63:00:00:0B             ine...

汇编中retn的含义详析

2016.09.15, ASM ,抢沙发,2230人打酱油
retn 4 是个函数返回指令。 先假设个环境: retn 4未执行时,ESP=0013feb8;EIP=5d1d8b97;而[0013feb8]=7c974a19 执行retn 4之后: 首先 EIP=[0013feb8] :即此时cpu先指挥EIP获取到栈中0013feb8起4个字节的值7c974a19,作为...

[转]汇编中的跳转指令

2015.09.15, ASM ,抢沙发,979人打酱油
名称   功能  操作数 操作码 模数 寄存器1 寄存器2 或内存 位移量 立即数 符号 方向 芯片 型号 16位 32位  JO 溢出跳转 短  $70 无 无 无 无 10 无 无 8086 无 无  JNO 不溢出跳转 短  $71 无 无 无 无 10 无 无 8086 无 无 ...

[转]GDB中断原理

2015.09.15, ASM ,抢沙发,1180人打酱油
gdb的断点是基于信号(signal)实现的 在某个地址增加一个断点,实际上就是修改那个地址的代码,把原来的代码替换成INT 3指令,同时让gdb捕获这个signal并做相应的处理:包括执行被替换掉的指令,并跳转回来。 因此,只要断点不被走到,那么断点就不会影响程序的运行效率;因为程序的其他地方都没改变,该怎么运行还是怎么运行。 gdb在遇到断...