使用ARK工具ATool清除典型蠕虫MyDoom

news2024/10/6 18:35:46

1          概述

在长期的日常安全事件监测过程中,安天CERT经常捕获到大量的MyDoom蠕虫样本和传播该蠕虫的钓鱼邮件。受害主机感染MyDoom后会被放置后门,以便攻击者下发后续恶意软件,进行攻击或窃密等操作。MyDoom蠕虫最早发现于2004年,至今仍然活跃,主要利用SMTP协议传播钓鱼邮件。研究人员通过分析发现,MyDoom蠕虫落地后会将自身的前三个区段名替换为随机生成的8个字母,并将其作为钓鱼邮件的附件再次发送,导致每次传播时样本的哈希值均不相同。

MyDoom蠕虫运行后会不断扫描主机文件,提取邮箱地址,随机获取样本中的邮件标题、发件人等信息,压缩后的MyDoom作为附件生成钓鱼邮件,使用SMTP协议不断发送钓鱼邮件。最后使用DGA(域名生成算法)生成上线域名,进行三次校验后,回传本地信息,并等待“DDoS攻击、下发恶意文件和可移动介质传播”等指令,期间会释放多个文件以及写入注册表,对于此种情况,可使用集成的ARK工具ATool进行快速处置[1]。

ATool是针对系统进行安全分析和反RootKit木马的工具,有Windows版本和信创系统版本。主要供网络管理员、勘察取证人员、计算机爱好者和专业用户使用。ATool对进程、服务、驱动、内核模块等执行对象和启动项、计划任务等环境配置进行相关枚举,并以清单的方式来呈现。通过本地库+云端对象信誉查询的方式对相关对象的安全信誉进行评价,从而“孤立”出威胁对象和值得提取分析的可疑对象。

2          MyDoom传播

2.1     钓鱼邮件

安天CERT捕获到多封传播MyDoom蠕虫的钓鱼邮件,其附件内可执行文件为MyDoom蠕虫。邮件中包含具有迷惑性的标题和正文内容,例如:“网络汇款提示”、“生日祝福”、“更改账户密码通知”等,以诱导用户点击查看附件。部分钓鱼邮件如图所示:

图 2‑1 钓鱼邮件内容

2.2     攻击流程

MyDoom蠕虫通过钓鱼邮件进行传播,运行后会创建注册表启动项,复制自身到C:\Windows\system32\smnss.exe并启动。smnss.exe被启动后会调用线程不断从本地提取邮箱地址并发送钓鱼邮件,最后连接C2服务端等待下发指令,如DDoS攻击、下发恶意文件和可移动介质传播等操作。

图 2‑2 攻击流程

3          清除建议

3.1     清除步骤

(1)结束进程

开启3159端口的进程(解压出的附件或smnss.exe,该进程有守护进程需要先结束)

名称为smnss.exe的进程

(2)删除文件(由于MyDoom为32位样本所以在不同位数的操作系统上有一定的区别)

32位操作系统:

解压出的附件

C:\Windows\system32\smnss.exe

C:\Windows\system32\shervans.dll

C:\Windows\system32\grcopy.dll

C:\Windows\system32\ctfmen.dll

C:\Windows\system32\zipfi.dll

C:\Windows\system32\zipfiaq.dll

C:\Windows\system32\satornas.dll

64位操作系统:

解压出的附件

C:\Windows\SysWOW64\smnss.exe

C:\Windows\SysWOW64\shervans.dll

C:\Windows\SysWOW64\grcopy.dll

C:\Windows\SysWOW64\ctfmen.dll

C:\Windows\SysWOW64\zipfi.dll

C:\Windows\SysWOW64\zipfiaq.dll

C:\Windows\SysWOW64\satornas.dll

(3)删除注册表(由于MyDoom为32位样本所以在不同位数的操作系统上有一定的区别)

32位操作系统:

HKEY_CLASSES_ROOT\CLSID\{E6FB5E20-DE35-11CF-9C87-00AA005127ED}\InprocServer32

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run\ctfmen

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\ctfmen

64位操作系统:

HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{E6FB5E20-DE35-11CF-9C87-00AA005127ED}\InprocServer32

HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version

HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version

HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\ctfmen

HKEY_CURRENT_USER\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run\ctfmen

3.2         使用ATool进行清除

系统深度分析工具ATool是安天实验室在2006年开始发布更新的一款系统安全内核分析和RootKit检测工具,因Windows 10以后系统签名和启动认证的要求更为苛刻,很多原有免费ARK工具都不能在Windows 10等更新的系统下运行,所以近日安天更新发布了ATool V3.5免费版本,加强了对 Windows 10及Windows 11版本的支持,可在安天垂直响应平台[2]下载,如下所示:

图 3‑1 下载ATool

MyDoom释放文件、创建注册表较多,若使用任务管理器、资源管理器和注册表编辑器等Windows自带工具进行处置,则会导致频繁切换工具使得操作不便、效率低。当MyDoom蠕虫加载shervans.dll后会启动线程不断调用smnss.exe(病毒母体),所以清除时需要先关闭该进程。由于shervans.dll会启动线程开启3159端口,所以可以使用这个作为特征识别最初的样本,使用ATool可快速识别到开启该端口的进程并进行处置。以x64位MyDoom为例:

(1)端口管理中,暴力删除开启3159端口的进程,使用“删除文件”不能删除运行状态下的文件。

图 3‑2 暴力删除开启3159端口的进程

(2)进程管理中,结束并删除附件进程。

图 3‑3 结束并删除恶意进程

(3)自启动项中,删除自启动项ctfmen,暴力删除ctfmen.exe文件。

图 3‑4 定位自启动项

定位到注册表,删除该项。

图 3‑5 删除自启动项

(4)文件管理中,删除SysWOW64下的释放文件,先点击修改时间进行排序,随后点击查找进行文件的定位,最后使用暴力删除文件将文件删除,除下图所示仍需删除shervans.dll、grcopy.dll。

图 3‑6 删除MyDoom释放文件

(5)注册表管理中,定位到注册表项后删除表项,除下图所示仍需删除,HKEY_LOCAL_MACHINE(或HKEY_CURRENT_USER)\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version中的表项。

图 3‑7 删除MyDoom写入的注册表项

4          防护建议

(1)安装终端防护软件:安装反病毒软件,建议安装安天智甲终端防御系统;

(2)加强口令强度:避免使用弱口令,建议使用16位或更长的口令,包括大小写字母、数字和符号在内的组合,同时避免多个服务器使用相同口令;

(3)部署入侵检测系统(IDS):部署流量监控类软件或设备,便于对恶意代码的发现与追踪溯源。安天探海威胁检测系统(PTD)以网络流量为检测分析对象,能精准检测出已知海量恶意代码和网络攻击活动,有效发现网络可疑行为、资产和各类未知威胁;

(4)安天服务:若遭受恶意软件攻击,建议及时隔离被攻击主机,并保护现场等待安全工程师对计算机进行排查;安天7*24小时服务热线:400-840-9234。

经验证,安天智甲终端防御系统(简称IEP)可实现对该蠕虫的有效查杀。

图 4‑1 安天智甲可实现对MyDoom蠕虫的有效查杀

5          样本分析

MyDoom蠕虫运行后首先检测虚拟机和调试器,然后通过注册表项A判断是否首次运行。

MyDoom蠕虫运行后首先检测虚拟机和调试器,然后通过注册表项A判断是否首次运行。

(1)若首次运行,则在C:\Windows\system32\目录下释放ctfmen.exe、shervans.dll、grcopy.dll,随后在注册表中记录5项感染标识,调用shervans.dll进行初始化、复制并运行smnss.exe、守护smnss.exe进程、设置自启动、监听3159端口进行代理等恶意操作,最后调用ctfmen.exe(启动母体复制文件smnss.exe或shervans.dll)。

(2)若非首次运行,则创建互斥量A保证自身唯一实例运行,判断注册表项B。若存在,则加载shervans.dll进行初始化和代理等操作;若不存在,则创建注册表项B。判断后启动线程收集Outlook邮箱通讯录,并从体积小于0.97MB且后缀为“html”、“htm”、“txt”、“xml”、“doc”、“pl”、“php”、“tbb”的文件中过滤特征字符串搜索邮箱地址,随后以MyDoom作为附件向其发送随机生成的钓鱼邮件。判断是否存在互斥量B,若不存在则加载shervans.dll,根据感染标识usbactiv的值判断是否进行移动介质传播。

最后使用DGA(域名生成算法)随机生成上线域名,经过三次校验后,连接C2服务端上传信息,包括:注册表iduser项的值、端口号3159、本地IP、操作系统版本。等待攻击者指令继而执行重启自身、DDoS攻击、下发恶意文件和可移动介质传播等操作。

注册表项A:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version或HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version

注册表项B:HKEY_CLASSES_ROOT\CLSID\{E6FB5E20-DE35-11CF-9C87-00AA005127ED}\InprocServer32

互斥量A:VULnaShvolna,保证smnss.exe唯一运行

互斥量B:x_socks5aan,加载shervans.dll标识

Software\Microsoft\Windows\CurrentVersion\Explorer\vulnvol32\Version下MyDoom写入的各个键值,如下表所示:

表 5‑1注册表Version项下感染标识各键值说明

序号

说明

1

iduser

字符串:随机8字符

机器的标识,连接C2服务端时提供

2

statem

数字

标识邮件发送线程被启动的次数,初始值为0

3

namecp

字符串:随机8字符.exe

可移动介质感染时复制MyDoom的文件名

4

usw

字符串

代理使用的用户名,初始值为:kgbee

5

pafw

字符串

代理使用的密码,初始值为:kcnfj

6

usbactiv

数字

感染可移动介质标识,初始值为0(不感染可移动介质)

7

timeout

数字

C2命令等待时间

5.1     释放文件

MyDoom蠕虫运行后释放3个核心文件:母体程序smnss.exe、母体启动程序ctfmen.exe以及初始化程序shervans.dll,释放的文件功能说明,如下表所示:

表 5‑2 MyDoom释放的文件功能说明

文件名称

文件所在路径

功能说明

smnss.exe(病毒母体)

C:\Windows\system32\

传播钓鱼邮件、通过可移动介质传播、连接C2 服务端

ctfmen.exe

C:\Windows\system32\

启动病毒母体(自启动项)、若母体不存在则调用shervans.dll

shervans.dll

C:\Windows\system32\

初始化环境、守护母体进程、设置自启动、监听3159端口

5.2     复制自身

MyDoom在复制自身时,会调用特定函数来修改文件的区段名,将前三个区段名替换为随机生成的8个字母,以确保每次复制都会产生不同哈希值的文件。通过这种方式,增加了文件的唯一性和随机性。

图 5‑1 修改区段名

5.3     持久化

MyDoom在加载shervans.dll后将ctfmen.exe程序添加至注册表启动项,实现smnss.exe(病毒母体)持久化:

图 5‑2 创建自启动项

5.4     设置监听端口

MyDoom在加载shervans.dll后设置监听3159端口:

图 5‑3 设置监听端口

5.5     传播钓鱼邮件

5.5.1          获取邮箱地址

MyDoom获取邮箱地址方式有两种:

(1)获取用户主机Outlook通讯录中的邮箱地址,并释放MyDoom压缩后的文件zipfi.dll与zipfiaq.dll:

图 5‑4 获取Outlook通讯录中邮箱地址

(2)遍历用户主机中后缀名为“html”、“htm”、“txt”、“xml”、“doc”、“pl”、“php”、“tbb”的文件,从中提取出邮箱地址,如下图所示:

图 5‑5 用户主机文件中邮箱地址

5.5.2          发送钓鱼邮件

不断扫描本地文件和Outlook通讯录,提取其中的邮箱地址,使用SMTP协议发送随机生成的钓鱼邮件。

图 5‑6 发送钓鱼邮件

5.6     通过可移动介质传播

MyDoom释放satornas.dll以备在可移动介质传播时复制为autorun.inf,结合释放出的病毒母体达到传播的目的。

图 5‑7 autorun.inf中内容

通过C2指令可以开启和关闭可移动介质感染。

图 5‑8 通过C2指令开启和关闭可移动介质感染

5.7     命令与控制

使用DGA获取域名,该变种相比于之前变种增加了三次校验,以保证连接攻击者C2服务端,校验成功后连接C2服务端等待接收远控指令。

图 5‑9 DGA实现

图 5‑10 三次校验

通过校验后进行主机信息的上传:

图 5‑11 上传主机信息

远控的功能包括DDoS攻击、下发恶意文件和可移动介质传播等,如下表所示:

表 5‑3命令控制功能

指令

功能

http

HTTP泛洪攻击

spamon

初始化发送邮件次数

down_file

下载文件到C:\Windows\system32\donzx.dll

pusk

下载文件并运行文件

restart

重新运行

timeout

设置命令执行间隔

socksa

设置注册表中的用户名、密码

flash_on

开启可移动介质感染

flash_off

关闭可移动介质感染

icmp

ICMP泛洪攻击

黑客&网络安全如何学习

今天只要你给我的文章点赞,我私藏的网安学习资料一样免费共享给你们,来看看有哪些东西。

 1.学习路线图 

 攻击和防守要学的东西也不少,具体要学的东西我都写在了上面的路线图,如果你能学完它们,你去就业和接私活完全没有问题。

2.视频教程

网上虽然也有很多的学习资源,但基本上都残缺不全的,这是我自己录的网安视频教程,上面路线图的每一个知识点,我都有配套的视频讲解。

内容涵盖了网络安全法学习、网络安全运营等保测评、渗透测试基础、漏洞详解、计算机基础知识等,都是网络安全入门必知必会的学习内容。

 

 (都打包成一块的了,不能一一展开,总共300多集)

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

3.技术文档和电子书

技术文档也是我自己整理的,包括我参加大型网安行动、CTF和挖SRC漏洞的经验和技术要点,电子书也有200多本,由于内容的敏感性,我就不一一展示了。 

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

4.工具包、面试题和源码

“工欲善其事必先利其器”我为大家总结出了最受欢迎的几十款款黑客工具。涉及范围主要集中在 信息收集、Android黑客工具、自动化工具、网络钓鱼等,感兴趣的同学不容错过。 

 还有我视频里讲的案例源码和对应的工具包,需要的话也可以拿走。

因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取

 最后就是我这几年整理的网安方面的面试题,如果你是要找网安方面的工作,它们绝对能帮你大忙。

这些题目都是大家在面试深信服、奇安信、腾讯或者其它大厂面试时经常遇到的,如果大家有好的题目或者好的见解欢迎分享。

参考解析:深信服官网、奇安信官网、Freebuf、csdn等

内容特点:条理清晰,含图像化表示更加易懂。

内容概要:包括 内网、操作系统、协议、渗透测试、安服、漏洞、注入、XSS、CSRF、SSRF、文件上传、文件下载、文件包含、XXE、逻辑漏洞、工具、SQLmap、NMAP、BP、MSF…

 因篇幅有限,仅展示部分资料,需要保存下方图片,微信扫码即可前往获取 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1831455.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

语音质量评价方法之MOS

引言 在语音增强、语音合成、语音转换、声音转换、语音克隆、语音修复等等领域,常常要对输出的语音进行评价。对语音的质量评价一般关注两个方面,即主观评价和客观评价。主观评价就是人凭借听觉感受对语音进行打分,客观评价比较广泛&#xf…

吉林省教育学院学报杂志社吉林省教育学院学报编辑部2024年第5期目录

“研培一体”理论与实践 教师培训管理共同体的职能定位与价值追求 张岩; 1-3 数字化转型背景下教师培训工作的发展路径 李春光; 4-6 挖掘数智潜能,推进教师培训融合创新 鲍赫; 7-9《吉林省教育学院学报》投稿:cn7kantougao163.com 精准培…

网络安全等级保护制度详解,一文掌握核心要点!

一、等级保护制度发展情况 等级保护制度的法律依据 《计算机信息系统安全保护条例》(1994年General Office of the State Council第147号令) 公安部主管全国计算机信息系统安全保护工作。 计算机信息系统实行安全等级保护,安全等级的划分…

夏季河湖防溺水新举措:EasyCVR+AI视频智能监控系统保障水域安全

近日一则新闻引起大众关注,有网友发布视频称,假期在逛西湖时,发现水面上“平躺”漂浮着一名游客在等待救援。在事发3分钟内,沿湖救生员成功将落水游客救到了岸边。 随着夏季的到来,雨水增多,各危险水域水位…

ensp模拟器USG6000V1配置DCHP功能

接着上一篇配置,继续本篇的内容。开启DHCP功能非常简单,只需几个命令即可。实验拓扑图也非常简单,如下: 开启防火墙DHCP功能: [USG6000V1]dhcp enable 选择DHCP接口并设置接口IP地址,这里给g1/0/0配置2网…

Chromium 开发指南2024 Mac篇-编译前的准备工作(一)

1.引言 Chromium 是一款开源的网页浏览器项目,作为 Google Chrome 浏览器的基础,其卓越的性能和广泛的应用使其成为众多开发者研究和学习的对象。对于希望深入了解浏览器内核,或是计划在 Chromium 基础上开发自定义浏览器的开发者来说&#…

【leetcode刷题】面试经典150题 88.合并两个有序数组

leetcode刷题 面试经典150 88. 合并两个有序数组 难度:简单 文章目录 一、题目内容二、自己实现代码2.1 实现思路2.2 实现代码2.3 结果分析 三、 官方解法3.1 直接合并后排序3.1.1 算法实现3.1.2 代码实现3.1.3 代码分析 3.2 双指针3.2.1 算法实现3.2.2 代码实现3.2…

Android ViewModel实现和原理

ViewModel实现和原理 前言1. 使用1.1 gradle准备1.2 模拟场景1.3. LiveData和ViewModel1.4 更新数据 2. 原理与源码解读2.1 添加观察者2.2 setValue2.3 post 参考资料 前言 ViewModel的主要基于观察者的设计模式,他主要分为两个部分: 提供者Provider&a…

Codesys 获取系统年、月、日、时、分、秒、星期几 +解决时区问题+ ST语言编程实现代码

一、 效果如图所示 二、功能说明 发现获取的时间比北京时间多一个时区(8个小时),解决时区问题获取时间后,单独把年月日时分秒提取出来,单独保存在变量中获取星期几,保存在变量中 三、Codesys用ST语言实现…

【MySQL统计函数count详解】

MySQL统计函数count详解 1. count()概述2. count(1)和count(*)和count(列名)的区别3. count(*)的实现方式 1. count()概述 count() 是一个聚合函数,返回指定匹配条件的行数。开发中常用来统计表中数据,全部数据,不为null数据,或…

【C++】模板初级

【C】模板初级 泛型编程函数模板函数模板的概念函数模板格式函数模板的原理函数模板的实例化模板参数的匹配原则 类模板类模板格式类模板的实例化 泛型编程 当我们之前了解过函数重载后可以知道,一个程序可以出现同名函数,但参数类型不同。 //整型 voi…

如何获得一个Oracle 23ai数据库(vagrant box)

准确的说,是Oracle 23ai Free Developer版,因为企业版目前只在云上(OCI和Azure)和ECC上提供。 前面我博客介绍了3种方法: Virtual ApplianceRPM安装Docker 今天介绍最近新出的一种方法,也是我最为推荐的…

如何使用任意浏览器远程访问本地搭建的Jellyfin影音平台

文章目录 前言1. Jellyfin服务网站搭建1.1 Jellyfin下载和安装1.2 Jellyfin网页测试 2.本地网页发布2.1 cpolar的安装和注册2.2 Cpolar云端设置2.3 Cpolar本地设置 3.公网访问测试4. 结语 前言 本文主要分享如何使用Windows电脑本地部署Jellyfin影音服务并结合cpolar内网穿透工…

Linux---系统的初步学习【项目一:Linux操作系统的安装与配置】

项目一 Linux操作系统的安装与配置 1.1 项目知识准备 1.1.1 操作系统是什么? ​ 操作系统(Operating System,OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理硬件、决定程序运行的优先次序、管理文件系统等…

遗传算法浅理解

1. 什么是遗传算法? ​ 遗传算法,又称为 Genetic algorithm(GA)Genetic algorithm(GA)。其主要思想就是模拟生物的遗传与变异。它的用途非常广泛,可以用于加速某些求最大或者最小值的算法(换句话说就是加速算法收敛,最…

月球全月地质图和4.5亿像素月面标注地图

嫦娥六号都在月球挖到土特产了,那你知道月球到底长什么样子吗? 现在我们就为你分享一下月球的全月地质图,以及4.5亿像素月面带标注的地图,你可以在文末查看该数据的领取方法。 月球全月地质图 对于月球的探索,美国和…

如何高效使用大型语言模型 LLMs 初学者版本 简单易上手

第一条也是最重要的一条规则是 永远不要要求LLM提供你无法自己验证的信息, 或让它完成你无法验证其正确性的任务。 唯一例外的情况是那些无关紧要的任务, 例如,让大型语言模型提供公寓装修灵感之类的是可以的 。 首先请看两个范例 不佳示范&#xff1a…

SAP 采购订单 价格 条件权限控制 授权账户

采购订单 价格 条件权限控制 授权账户 1、事务代码 me21/22/23/N 2、权限对像如下几个 M_BEST_BSA/EKG/EKO/WRK ACTVT 09 SELECT DISTINCT a.* FROM ( SELECT DISTINCT agr_users.uname FROM agr_1251INNER JOIN agr_users ON agr_1251.agr_name agr_users.agr_name AND…

智能制造uwb高精度定位系统模块,飞睿智能3厘米定位测距芯片,无人机高速传输

在科技日新月异的今天,定位技术已经渗透到我们生活的方方面面。从手机导航到自动驾驶,再到无人机定位,都离不开精准的定位系统。然而,随着应用场景的不断拓展,传统的定位技术如GPS、WiFi定位等,因其定位精度…

WPF 深入理解一、基础知识介绍

基础知识 本系列文章是对个人 B站 up 微软系列技术教程 记录 视频地址 https://www.bilibili.com/video/BV1HC4y1b76v/?spm_id_from333.999.0.0&vd_source0748f94a553c71a2b0125078697617e3 winform 与 wpf 异同 1.winform 项目结构 编辑主要是在 Form1.cs(页面)&#…