欢迎来到天天文库
浏览记录
ID:24648604
大小:51.50 KB
页数:3页
时间:2018-11-15
《黑客老鸟讲逆向分析-逆向分析技术全揭秘》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
黑客老鸟讲逆向分析:逆向分析技术全揭秘~教育资源库 经过前几课的学习,我们现在开始正式开讲逆向分析。逆向分析技术是指通过分析反汇编代码来理解其代码功能,如各接口的数据结构等,然后用高级语言重新描述这段代码,逆向推出原软件的思路。下面从函数的调用、循环、控制语句等方面分析。 在高级语言中,子程序依懒于堆栈来传递参数。 例如test1(Par1,Par2,Par3:integer),按C,Psacal和StdCall的调用约定汇编代码如下: 函数调用 按StdCall约定调用函数test2(par1,par2),其堆栈建立情况如下: Push ebp ;保护现场原先的EBP指针 Movebp,esp ;设置新的EBP指针,指向栈顶 Subesp,xxx ;堆栈中留出点空间放局部变量 Addesp,xxx ;释放局部变量占用的堆栈 Popebp ;恢复现场的ebp指针 Ret8 ;返回 循环 如果确定某段代码是循环,就可以分析其计数器,一般是用ecx寄存器做计数器。 下面的汇编代码: xorecx,ecx;ecx清零 :00440000 incecx;计数 cmpecx,05;循环4次 jbe00440000;重复 上面的汇编代码用C语言描述有以下3种形式:◆oveax,edi ; Subeax,00000002; Je 00401 ; Subeax,0000000E; Jne0040114E SInformation()或NtQuerySystemInformation()检测内核模式调试器。 检测用户模式调试器 利用NT的ZationProcess()或NtQueryInformationProcess()检测使用ovedi,edi-----和nop效果一样 addesp,1-----指针寄存器加1 subesp,1-----指针寄存器减1 incecx -----计数器加1 dececx -----计数器减1 子明最近一直在研究有关逆向分析的技术。上面的就是我的一点研究,不知道大家是否还能够满意。我以后还会为大家服务,写出更加通俗易懂的文章来。友情提醒:,特别!
此文档下载收益归作者所有
举报原因
联系方式
详细说明
内容无法转码请点击此处