- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
8088 汇编速查手册
学习一些指令的含义:1.MOV 传送字或字节??2.PUSh 把字压入堆栈??3.POP把字弹出堆栈??4.ADD 加法运算 5.SUB减法运算??6.JMP无条件转移指令??7.CALL 过程调用@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@方法一:顺序调换法1.如果是跳转(未实现)或者call或者mov,可以尝试交换,但是一定要测试程序能否运行2.movjmp(未实现) 这两个也可以尝试交换3.movcall dword...(后面是符号或者是字母)这两个也可以尝试交换注意:如果定位到call 410000(后面带数字)的时候我们可以来到410000查看代码等等例子:move yyy yyy yyymovsx xxx xxx xxx (特征)move yyy yyy yyy修改方法:交换第1.2排的位置(内容)4.如果定位到是mov或则是movs看看他前面是几排(一排也行)是不是mov如果是我们就可以把这几排的十六进制的代码(是中间那排)换一下。******************************************************************************************方法二:通用跳转法1.把定位出来的物理特征转换成内存特征2.找0区域记录内存地址(测试是否可用)3.记录特征码内存地址并且NOP掉4.用jmp跳转到0区域地址5.修改6.在用jmp跳回到原地址*******************************************************************************************方法三:nop移位法如果定位在了mov我们观察到他上一排的十六进制是0000我们就可以使用此方法我们就把特征码这排转移到上一排。因为上一排0000是没有意思的 NOP掉也没关系********************************************************************************************方法四:等值替换法如果定位到POP或则是PUSH我们就要观察。如果是定位到POP EAX就可以在他上面或者是下面去找有没有PHSH EAX 如果有就可以把POP改成PHSH 把哪个PHSH修改为POP。如果定位到PUSH就和POP同样的道理.还可以比如JN,JNE 换成JMP等.如:????push—pop????push eax改pop eax????je—jnz????????je 41000改jnz 41000????add—sub????add ecx,2改sub ecx,-2方法五:直接修改特征码的十六进制法1.修改方法:把特征码所对应的十六进制改成数字差1或差不多的十六进制.这里我们把十六进制09改成08方法六:入口点变换*****************************************************************************CALL的修改方法1.当定位到一个灰色CALL上时候,可以测试一下把CALL替换成JMP。2.当定位到前后有2个或则是几个绿色CALL上的时候,可以尝试一下交换一下位置.3.当定位到特殊的时候我们可以双击打开看一下CALL对应的地址,然后跳到这个地址看一下他前面有没有NOP,如果有可以尝试把CALL对应的地址换成他前面的哪个NOP地址4.特殊的CALL就可以使用跳转法总结:当定位到CALL的时候注意观察他的前后的命令然后修改,最后测试能不能上线。方法积累:????sbb—adc????????add eax,410000改add eax,410001????????call 410000我们可以来到410000查看代码等等????????不实现的跳转尝试nop掉,测试上线???????????????? je改成jgexor 可以直接NOPpush改成CALL---------------------test????edx, edxje??????XXXXXX????可改成下面的test????dl, dlje??????XXXXXX---------------------sar??ecx, 2 可改成shr??ecx, 2test 改成andje改成jlejnz改成ja
文档评论(0)