社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 3410阅读
  • 3回复

[分享]观赏某大佬分析病毒blocker 后的一次复现分析

楼层直达
z3960 
级别: 茶馆馆主
发帖
770593
飞翔币
207694
威望
215657
飞扬币
2511651
信誉值
8

[font=-apple-system, BlinkMacSystemFont, &quot]一、样本简介及行为检测[font=-apple-system, BlinkMacSystemFont, &quot]blocker样本伪装成了eset的升级程序图标如下[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]由于再分析之初对样本行为不太清楚,这里需要用到相应的行为检测工具,此类工具有火绒剑,systracer,Procmon,Sysmon等,这里我们采用火绒剑来看下,具体步骤[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]然后双击运行样本即可开启对相应样本的监视,程序运行后界面如下[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]我们看到该程序的这里火绒剑标记为了蓝色,这里完成了程序的释放、自拷贝、开机自启动这些操作。[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]相关网络请求如下[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]可以看到该样本与general-second.org-help.com/dl_ex1.png?m=701CE78EC02D&NOTE=Ni4xIDogOS45fDV8djEuMAo= 进行了一系列交互通过奇安信的威胁情报平台(https://ti.qianxin.com)查询可以看到关于该域名的相关信息[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]行为总结:
  • 样本在C:Users用户AppDataRoaming 执行释放自拷贝 自启动的行为
  • 样本会与恶意域名general-second.org-help.com进行交互
[font=-apple-system, BlinkMacSystemFont, &quot]二、Pe结构和ida分析[font=-apple-system, BlinkMacSystemFont, &quot]我们借用PEID查看下pe信息如下,[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]我们利用peid的Krypto ANAlyzer插件查看下文件的加密信息,里面大概有两种加密Base64和crc32加密[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]并且利用peid未发现该样本加壳信息,我们直接拖进ida进行分析,程序会默认停留在winmain函数处,winmain函数内部有如下几个函数,[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]CreateMutexA(win32api)GetLastError(win32api)CloseHandle(win32api)sub_4011E0(自定义函数)sub_403600(自定义函数)[font=-apple-system, BlinkMacSystemFont, &quot]sub_401580(自定义函数)sub_401770(自定义函数)sub_402790(自定义函数)CreateThread(win32api)[font=-apple-system, BlinkMacSystemFont, &quot]函数功能分析:[font=-apple-system, BlinkMacSystemFont, &quot]CreateMutexA、[font=-apple-system, BlinkMacSystemFont, &quot]GetLastError分别为创建相关进程对象和探测本地用户组情况;sub_4011E0为加载dll和相关字串解密获取相关api函数地址;sub_403600为文件的自[font=-apple-system, BlinkMacSystemFont, &quot]拷贝和自启动等操作;sub_401580为获取当前环境变量设置;sub_401770 为判断系统版本 内存拷贝;sub_402790注册表操作;CreateThread创建相[font=-apple-system, BlinkMacSystemFont, &quot]关网络请求进程;下面我们看下相关函数的具体实现,(除部分win32api),[font=-apple-system, BlinkMacSystemFont, &quot]sub_4011E0[font=-apple-system, BlinkMacSystemFont, &quot]该函数为加载dll和相关字串解密获取相关api函数地址,[font=-apple-system, BlinkMacSystemFont, &quot]函数内部调用sub_401040对传入字串进行解密处理,具体操作为将加密字串-5即可,然后加载kenel32.dll利用getprocaddress函数来获取api函数地址,[font=-apple-system, BlinkMacSystemFont, &quot]相关功能部分截取如下[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]总结:函数内部使用了特定解密函数sub_401040来处理加密字串,加载三个dll文件分别为WININET.dll、urlmon.dll、kennel32.dll、通过getproaddress函数获取相关api地址[font=-apple-system, BlinkMacSystemFont, &quot]sub_403600[font=-apple-system, BlinkMacSystemFont, &quot]该函数内部功能为文件自拷贝,自启动设置,程序弹窗设置,程序首先通过SHGetFolderPathA函数获取自启动文件夹C:/Documents and Settings/当前用户/Application Data;[font=-apple-system, BlinkMacSystemFont, &quot]通过GetModuleFileNameA获取当前程序运行的直接路径Strcmp判断当前执行文件夹是否等于C:/Documents and Settings/当前用户/Application Data;,如果相同,[font=-apple-system, BlinkMacSystemFont, &quot]通过copyfile将文件拷贝到C:/Documents and Settings/当前用户/Application Data下,然后通过向注册表SOFTWAREMicrosoftWindowsCurrentVersionRun加入eset_update值,达到自启动的目的。[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]sub_401580[font=-apple-system, BlinkMacSystemFont, &quot]此部分主要功能为获取本机网卡信息和执行获取磁盘序列号,以及随机数的生成,通过GetAdaptersInfo获取网卡配置和ip信息,[font=-apple-system, BlinkMacSystemFont, &quot]后又通过GetVolumeInformationA来获取磁盘序列号,最后通过GetTickCount来生成随机数,具体功能如下:[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]sub_401770[font=-apple-system, BlinkMacSystemFont, &quot]该函数主要为获取系统版本信息的获取和操作系统的位数,通过GetVersion函数获取相关系统版本信息,[font=-apple-system, BlinkMacSystemFont, &quot]然后通过GetNativeSystemInfo,格式化一下,然后做数学运算,具体实现如下。[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]sub_402790[font=-apple-system, BlinkMacSystemFont, &quot]函数为注册表信息的修改,主要就是对XhwjjsWnggtsxItrfns和XTKY\FWJaRnhwtxtkya\nsit|xaHzwwjsy[jwxntsaXhwjjsxf{jwx解密后做拼接,然后将存储在qword_41A620处的恶意url写入注册表内,[font=-apple-system, BlinkMacSystemFont, &quot]该恶意url为general-second.org-help.com,内部功能如下[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]CreateThread[font=-apple-system, BlinkMacSystemFont, &quot]针对该样本的分析,在完成上述的一部分函数分析时已经有了一些初步的的认识,我们到新进程StartAddress内来继续分析下,StartAddress开头部分函数分析如下[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]我们跟下sub_932F30为网络请求设置[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]请求头为Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36,gzip(gfe),gzip(gfe)",[font=-apple-system, BlinkMacSystemFont, &quot]94A7A0:"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.101 Safari/537.36,gzip(gfe),gzip(gfe[font=-apple-system, BlinkMacSystemFont, &quot])[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]这部分程序流程比较直接看下sub_931AA0这里,首先样本会对特定字串进行解密[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]这里程序加载了一个rundll32.exe文件,但缺失该文件的相关行为说明,可能需要进行动态调试进行查看,我们继续向下走,通过动态调试看到[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]程序会获取C:\Users\用户\AppData\Local\Temp\相关文件下,然后将tmp.LOG与该文件夹进行拼接。向下走看到[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]这里会对文件名进行一个分割添加动物后缀,然后修改SOFTWAREMicrosoftWindowsCurrentVersionRun和SOFTWAREMicrosoftWindowsCurrentVersionScreensaversScreenRibbonsDomain[font=-apple-system, BlinkMacSystemFont, &quot]两个参数达到自启动和修改屏保属性的目的[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]这里会根据文件后缀的判断结果,如果为包含有tiger接受相应的命令参数,然后通过cmd执行[font=-apple-system, BlinkMacSystemFont, &quot][font=-apple-system, BlinkMacSystemFont, &quot]样本行为总结[font=-apple-system, BlinkMacSystemFont, &quot]
  • 样本通过sub_4011E0调用解密函数解密一部分关键api,加载了dll、urlmon.dll、
kennel32.dll,并通过GetProcAddress函数获取相应函数地址,函数如下InternetOpenA、InternetCloseHandle、InternetConnectA、HttpOpenRequestAHttpSend、RequestAURLDownloadToFileA、DeleteUrlCacheEntryA、WinExec、CreateToolhelp32Snapshot、InternetReadFile、InternetQueryDataAvailable。
  • 通过sub_403600函数实现文件自拷贝,自启动设置,程序弹窗设置。
  • 通过sub_401580获取主机网卡和ip信息。
  • 通过sub_401770获取系统版本信息的获取和操作系统的位数。
  • 通过sub_402790修改注册表写入恶意url。
  • 通过sub_931AA0实现相关的远程注入。
  • 该样本代码中加入了一系列动物名称,例如tiger、wolf等,属于KimSuky家族系列。
[font=-apple-system, BlinkMacSystemFont, &quot]个人体会[font=-apple-system, BlinkMacSystemFont, &quot]样本分析中动静态分析跑飞了好多次,由于自己对一部分关键点把控不是很准确,另外利用这次分析巩固了x64dbg的调试技巧,收获还是不错的。此次文章参考安全客doash123样本hash:ae986dd436082fb9a7fec397c8b6e717app.any.run地址:[font=-apple-system, BlinkMacSystemFont, &quot]https://app.any.run/tasks/c5066e3d-974b-499a-971f-954dbf2d5c5d/[font=-apple-system, BlinkMacSystemFont, &quot]参考连接:
1、https://www.anquanke.com/post/id/208525#h2-122、https://blog.csdn.net/m0_37312808/article/details/77891372?utm_source=blogxgwz9
本帖最近评分记录: 1 条评分 飞扬币 +50
爱我中华 飞扬币 +50 2022-04-28 社区因为有您的参与更精彩!
关键词: bot 系统 360 安全 格式
我不喜欢说话却每天说最多的话,我不喜欢笑却总笑个不停,身边的每个人都说我的生活好快乐,于是我也就认为自己真的快乐。可是为什么我会在一大群朋友中突然地就沉默,为什么在人群中看到个相似的背影就难过,看见秋天树木疯狂地掉叶子我就忘记了说话,看见天色渐晚路上暖黄色的灯火就忘记了自己原来的方向。
级别: 茶馆馆主
发帖
561855
飞翔币
199259
威望
3696
飞扬币
2858933
信誉值
0

只看该作者 1 发表于: 2022-04-28
辛苦了
级别: 超级版主
发帖
836137
飞翔币
228732
威望
224673
飞扬币
2459957
信誉值
0

只看该作者 2 发表于: 2022-04-29
来看一下
级别: 超级版主
发帖
836137
飞翔币
228732
威望
224673
飞扬币
2459957
信誉值
0

只看该作者 3 发表于: 2022-04-29
不错,了解了