首页
社区
课程
招聘
[原创] 微步云沙箱Linkinfo.dll样本分析报告
2023-2-17 20:46 6298

[原创] 微步云沙箱Linkinfo.dll样本分析报告

2023-2-17 20:46
6298

新手,望各位大佬指点

样本基础信息:

文件名称 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

静态分析:

样本部分静态分析结果:

样本有获取其他样本的倾向:

 

Base64

 

虚拟机检测操作,如检测到当前环境不为虚拟机才进入接下来的程序,否则就关闭当前进程:

 

base64

 

base64

 

有提升执行权限,建立互斥量,并且导入其他动态链接库的操作:

 

base64

 

有检测互斥量的操作,该操作疑似机器感染检测机制:

 

base64

 

存在将自身按位运算导入堆内存的操作

 

base

 

有枚举操作系统关键位置的操作:

 

base64

样本导入表中存在的可疑函数

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。用于向远程进程写数据。


[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

最后于 2023-2-17 21:33 被头像不好看了编辑 ,原因:
收藏
点赞1
打赏
分享
最新回复 (1)
雪    币: 267
活跃值: (834)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
头像不好看了 2023-2-17 21:34
2
0
base64插入的图片为什么显示不出来啊?
游客
登录 | 注册 方可回帖
返回