第 1 章:静态分析基础技术
Last updated
Last updated
这个实验使用 Lab01-01.exe 和 Lab01-01.dll 文件,使用本章描述的工具和技术来获取关于这些文件的信息。
答案:匹配到了。
检测报告:
答案:2010 年 12 月 20 日。与书中答案不同,我用 PEView 打开会报错,并且看不到时间戳信息,和文末的参考链接中所说的一致。需要用 Dependency Walker 打开才能看到。
答案:两个文件都没有加壳。都是用的 Micro Visual C++ 6.0 编译和链接的。使用 PEiD 可以查看该信息。
答案:用 Dependency Walker 可以看到导入函数。
Lab01-01.exe 中,重点是 kernel32.dll 中同文件操作相关的导入函数。这意味着该程序可能会对系统中的文件进行搜索、调用和修改操作。
Lab01-01.dll 中,重点是 CreateProcessA 和 Sleep 导入函数,这两个函数经常在后门程序中使用。WS2_32.dll 则提供了联网功能。
使用 strings -n 8 -nobanner Lab01-01.exe 指令查看 Lab01-01.exe 中的字符串。除了已知的文件操作相关的字符串,我们还看到了 kerne132.dll,可能是恶意程序试图冒充 kernel32.dll,这里用数字 1 冒充字母 l。
使用 strings -n 4 -nobanner Lab01-01.dll 指令查看 Lab01-01.dll 中的字符串。除了已知的 CreateProcessA 和 Sleep,我们还注意到 exec 和 sleep。exec 可能用于通过网络给后门程序传送命令 ,再利用 CreateProcess 函数运行某个程序 。sleep 可能用于让后门程序进入休眠模式。
答案:上图解析出的字符串中,包含了一个 IP 地址:127.26.152.13。结合其调用的 WS2_32.dll,猜测该程序可能联网通信。尽管 127 开头的 IP 为本地地址,在此处表明是用于教学目的,现实中很可能指向一个具体的外网 IP。
.dll 文件可能是一个后门,而 exe 文件则用于安装和运行该后门。
恶意代码分析实战 Lab 1-1 习题笔记_isinstance的博客-CSDN博客
恶意代码分析实战 — Lab 01-01 – Atom Kid
分析 Lab01-02.exe 文件。
答案:匹配到了。
检测报告:
答案:用 PEiD 打开,显示 “Nothing found *”,表明被加壳了。
在 PEiD 的 Options 里选择 Deep Scan,发现是 UPX 加的壳。
事实上,用 PEview 查看节区,能发现 UPX字段,也能推出是 UPX 壳。
使用 upx Lab01-02-decrypt.exe -d Lab01-02.exe 命令对其脱壳。
用 PEiD 查看脱壳后的 Lab01-02-decrypt.exe,显示为 VC 6.0 编译。
答案:使用 Dependency Walker 查看导入函数。
wininet.dll 中的 InternetOpen 和 InternetOpenUrl 函数,表明会进行联网操作。
advapi32.dll 中的 CreateService 函数,表明会创建服务。
答案:使用 strings Lab01-02-decrypt.exe 命令查看字符串。可以看到 CreateMutex、CreateThread、CreateService、InternetOpenUrl、InternetOpen、MalService 等可疑函数。还有网址 http://www.malwareanalysisbook.com,和浏览器名 Internet Explorer 8.0。
恶意代码分析实战 — Lab 01-02 – Atom Kid
分析 Lab01-03.exe 文件。
答案:匹配到了。
检测报告:
答案:PEiD 显示是 FGS 加的壳。以后再对其脱壳。
答案:未脱壳前,只能在 kernel32.dll 中看到 LoadLibrary 和 GetProcAddress 导入函数。更多信息,需进一步脱壳才能得知。
答案:更多信息,需进一步脱壳才能得知。
分析 Lab01-04.exe 文件。
答案:匹配到了。可能为下载器。
检测报告:
答案:没有加壳。使用 VC 6.0 编译链接。
答案:2019 年 8 月 31 日(创建时间:2011 年 7 月 5 日)。同其他时间信息相比,该编译时间明显是伪造的。
答案:
kernel32.dll 的导入函数可能从资源节中装载数据(FindResource、LoadLibrary、LoadResource、SizeofResource),并写文件到磁盘中(CreateFile、WriteFile),并执行磁盘上的文件(WinExec),该文件甚至可能写到了系统目录(GetWindowsDirectory)。
advapi32.dll 可能涉及到修改程序的权限(AdjustTokenPrivileges、LoopupPrivilegeValue、OpenProcessToken)。
答案:解析程序中的字符串。
\system32\wupdmgrd.exe (Windows 升级管理器)表明可能是在该路径下创建或修改文件。
www.malwareanalysisbook.com/updater.exe 很可能是要下载的恶意代码的存储位置,或者是伪装成这个文件。URLDownloadToFile 则间接印证了下载器的功能。
答案:可以看到资源段中还有一个可执行文件(101:1033)。
右键 101:1033,选择 Save Resource to a BIN file,命名为 Lab01-04-bin.exe。用 PEiD 查看加壳情况,很好,没有加壳,用的是 VC 6.0。
从 Lab01-04-bin.exe 中解析出的字符串在前文已经基本提过,功能是从远程主机中下载恶意代码。
VirusTotal 的检测报告显示该代码是恶意的,是一个下载器。
恶意代码分析实战笔记(一) | damaoooo的blog