之前分析
反病毒引擎扫描:https://www.virustotal.com/#/home/upload
哈希值识别:
查找字符串:strings
检查壳:
动态链接函数:
常见DLL
Kernel32.dll:这是一个很常见的DLL,它包含核心系统功能,如访问和操作内存、文件和硬件等等。
OpenProcess,GetcurrentProcess和GetProcessHeap:打开操作进程
Readfile,createfile,writefile:文件操作
FindFirstFile和FindNextFile:搜索目录下的所有文件
winexec:执行其他程序,恶意代码创建一个新进程,需要进一步分析这个新进程
LoadResourec:从PE文件装载资源到内存中
GetWindowsDirectory:用这个函数来确定将恶意代码安装到哪个目录下
Advapi32.dll:这个DLL提供了对核心Windows组件的访问,比如服务管理器和注册表。
User32.dll:这个DLL中包含了所有用户界面组件,如按钮、滚动条以及控制和响应用户操作的组件。
RegisterClassEx,Setwindowtext和showwindow:图形化操作界面
SetWindowsHookEx:间谍软件函数,键盘记录器
RegisterHotKey:注册热键
RegOpenKeyExA/RegSetValueExA:往注册表中插入信息
Gdi32.dll:这个DLL中包含了图形显示和操作的函数。
Advapi32.dll:注册表操作
CreateService:创建一个服务
Ntdll.dll:这个DLL是Windows内核的接口。可执行文件通常不直接导入这个函数,而是由Kernel32.dll间接导入,如果一个可执行程序导入了这个文件,这意味着作者企图使用那些不是正常提供给Windows程序使用的函数。一些如隐藏功能和操作进程等任务会使用这个接口。
Wsock32.dll和Ws2_32.dll:这两个是联网DLL,访问其中任何一个DLL的程序非常可能会连接网络,或是执行网络相关的任务。
Winnet.dll:这个DLL包含了更高层次的网络函数,实现了如FTP、HTTP和NTP等协议。
InternetOpen和InternetOpenURL:联网操作
URLDownloadToFile:网络函数
Register
WinINet.dll:InternetOpenA:初始化对WinINet库的使用,设置用于HTTP通信的User-Agent字段
InternetOpenUrlA:使用一个完整的FTP或者HTTP的URL,来打开一个句柄
InternetReadFile:用于从InternetOpenUrlA打开的句柄中读取数据
InternetCloseHandle:用于关闭这些已打开的文件句柄
函数名约定
1.一些以Ex为后缀的函数名(例如CreateWindowEx),是微软在更新一个函数。
2.名字后面会包含一个A或者一个W,如CreateDirectoryW,以A结尾的输入参数类型为ASCII字符串,而以W结尾的输入参数以宽字符字符串。当你在微软的文档中搜索这个函数时,你需要记得丢掉后缀的A或者W
加壳和混淆代码通常会包含LoadLibrary和GetProcAddress函数,用来加载和使用其他函数功能
PEview分析PE文件
Subsystem:指出是控制台程序还是图形界面程序
当节中的虚拟大小比实际大小大的多,则可能有壳。
小结:导入函数
导出函数
时间戳
分节
子系统
资源