新手,望各位大佬指点
样本基础信息:
文件名称 de8adfda39d9a383894cfb6acd243447e3fc2b63a6e643f7c33b58ded9e1b60a
文件类型(Magic) PE32 executable (DLL) (GUI) Intel 80386, for MS Windows
文件大小 52.00KB
SHA256 de8adfda39d9a383894cfb6acd243447e3fc2b63a6e643f7c33b58ded9e1b60a
SHA1 baad24272b5b13dc105112aec20451508b86183f
MD5 08b1547672a359972e7038834ab18c9f
CRC32 CAB14814
ImpHash 57d0b7aacf554cf45c7330d4d46ca4aa
Tags PE32,lang_english,encrypt_algorithm
静态分析:
样本部分静态分析结果:
样本有获取其他样本的倾向:
虚拟机检测操作,如检测到当前环境不为虚拟机才进入接下来的程序,否则就关闭当前进程:
有提升执行权限,建立互斥量,并且导入其他动态链接库的操作:
有检测互斥量的操作,该操作疑似机器感染检测机制:
存在将自身按位运算导入堆内存的操作
有枚举操作系统关键位置的操作:
样本导入表中存在的可疑函数
AdjustTokenPrivileges:该函数取自ADVAPI32动态链接库,地址为 10005038。用来启用或禁用特定权限,常用于获取额外权限
ControlService:该函数取自ADVAPI32动态链接库,地址为 10005008。用来启动、停止、修改或发送一个信号到运行服务,需对服务进行进一步分析。
CreateFileA:该函数取自KERNEL32动态链接库,地址为 1000512C。创建一个文件或仅仅打开一个已有文件。
CreateFileMappingA:该函数取自KERNEL32动态链接库,地址为 100050C8。将文件加载到内存,并使其可以通过内存地址访问,常用于读取和修改pe文件。
CreateMutexA:该函数取自KERNEL32动态链接库,地址为 10005168。创建一个互斥对象,确保给定时刻只有一个实例于系统中运行,常用于系统是否被感染。
CreateServiceA:该函数取自ADVAPI32动态链接库,地址为 10005014。创建一个启动时运行的服务,常用于恶意代码的持久化、隐藏和启动内核驱动。
CreateToolhelp32Snapshot:该函数取自KERNEL32动态链接库,地址为 100050A4。用于创建一个进程、线程、堆空间的快照,常用于多进程、线程的感染。
DeviceIoControl:该函数取自KERNEL32动态链接库,地址为 10005064。从用户空间向设备驱动发送一个控制消息,常用于在用户空间和内核空间之间传信息。
FindFirstFileA:该函数取自KERNEL32动态链接库,地址为 10005050。用来搜索文件目录和枚举文件系统。
GetModuleFileNameA:该函数取自KERNEL32动态链接库,地址为 10005110。返回目前进程装载某个模块的文件名,常用于修改和复制文件。
GetModuleHandleA:该函数取自KERNEL32动态链接库,地址为 100050B4。用来获取已加载模块的句柄,用于搜索合适的位置注入代码。
GetVersionExA:该函数取自KERNEL32动态链接库,地址为 10005144。返回目前运行Windows操作系统的版本信息,可以用来获取受害主机的摘要信息。
GetWindowsDirectoryA:该函数取自KERNEL32动态链接库,地址为 10005154。获取Windows目录的文件系统路径,用于确定将其他恶意程序安装到哪个目录。
LoadLibraryA:该函数取自KERNEL32动态链接库,地址为 1000507C。装载一个动态链接库到进程中,这个动态链接库在进程启动时不会被加载。
MapViewOfFile:该函数取自KERNEL32动态链接库,地址为 100050CC。映射一个文件到内存,使文件可通过内存地址访问,该函数可以避免使用writefile函数被捕获恶意操作。
OpenProcess:该函数取自KERNEL32动态链接库,地址为 100050E4。打开一个进程的句柄。这个句柄可以用来向其他进程内存中读写数据或是注入代码。
OpenSCManagerA:该函数取自ADVAPI32动态链接库,地址为 10005010。打开一个到服务控制管理器的句柄,修改程序都要调用这个函数。
Process32First:该函数取自KERNEL32动态链接库,地址为 100050A8。用于枚举进程,常用于寻找可以注入恶意代码的进程。
QueueUserAPC:该函数取自KERNEL32动态链接库,地址为 10005098。用于在其他线程执行代码,有时用于注入代码到其他进程。
ReadProcessMemory:该函数取自KERNEL32动态链接库,地址为 100050E8。用来从远程进程读取内存。
RegOpenKeyExA:该函数取自ADVAPI32动态链接库,地址为 10005030。注册一个热键,常被间谍软件使用,热键被输入前对用户保持隐藏。
ResumeThread:该函数取自KERNEL32动态链接库,地址为 1000516C。继续之前挂起的线程,该函数在多种注入技术中都会被使用。
SetFileTime:该函数取自KERNEL32动态链接库,地址为 100050D8。修改一个文件的创建时间,恶意代码常用于隐藏恶意行为。
SetThreadContext:该函数取自KERNEL32动态链接库,地址为 10005108。修改一个线程的上下文,一些注入技术会使用这个函数。
Thread32First/Thread32Next:该函数取自KERNEL32动态链接库,地址为 1000509C。轮询一个进程的所有线程,注入器可用这些函数来找出可供注入的线程。
VirtualAllocEx:该函数取自KERNEL32动态链接库,地址为 10005100。一个内存分配的例程,可以在远程进程中分配内存。
WideCharToMultiByte:该函数取自KERNEL32动态链接库,地址为 1000510C。将unicode类型字符串转换成ascii类型字符串,可通过unicode类型字符躲过常态化静态检测,将unicode转换为ascii后使用。
WriteProcessMemory:该函数取自KERNEL32动态链接库,地址为 10005104。用于向远程进程写数据。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
最后于 2023-2-17 21:33
被头像不好看了编辑
,原因: