恶意代码分析实战Lab0602
问题1:main调用的第一个子过程
问题根据函数调用逻辑关系,main中第一个子过程是401000,第二个子过程是401040。
401000的操作:InternetGetConnectedState:判断当前机器是否连接互联网
问题2:位于40117F的子过程
401000的操作40117F函数在IDA成这样
看不出来细节要做什么
根据main的图示,分析401000和401040的代码逻辑,发现
40107F可以简单理解成printf的功能
问题3、4:main调用的第二个子过程,使用了什么代码结构
第二个子过程是401040,主要函数逻辑是if-else框架结构
根据调用的几个API函数进行分析
InternetOpen:初始化一个应用程序,以便打开WinInet。参数是szAgent常数字符串
InternetOpenUrl:通过一个完整的网址,打开网络上一个资源
问题5:基于网络指示的标志
根据提示字符串,有如下几种情况
Error 1.1:没有网络连接
Success:有网络连接
Error 2.1:无法连接Url资源
Error 2.2:无法读取文件
Error 2.3:无法读取命令行
问题6:程序目的
该程序比0601更进一步了。不仅可以判断当前机器是否连接网络,还可以与服务器进行通信、文件传送等木马后门功能。