病毒木马防御与分析

病毒包和工具包下载:Github

  • 一.前言
  • 二.建立对手动查杀病毒技术的正确认识
    • 1.病毒分析方法
    • 2.病毒查杀步骤
    • 3.必备知识

      * 1) 熟悉windows系统进程

      * 2) 熟悉常见端口与进程对应关系

      * 3) 熟悉windows自带系统服务

      * 4) 熟悉注册表启动项位置

  • 三.详解Windows随机启动项目——注册表
  • 四.详解Windows随机启动项目——系统服务
  • 五.手动查杀病毒实战——熊猫烧香病毒
    • 0. 病毒分析

      * 1).中毒症状

      * 2).病毒特征

      * 3).发作症状

    • 1. 查内存,排查可疑进程,将病毒从内存中干掉
    • 2. 查启动项,删除病毒启动项
    • 3. 通过启动项判断病毒所在位置,并从根本上删除病毒
    • 4. 修复系统

一.前言

《病毒木马防御与分析》系列以真实的病毒木马(或恶意程序)为研究对象,通过现有的技术手段对其分析,总结出它的恶意行为,进而制定出相应的应对方法,对其彻底查杀。当然,因为我个人水平的有限,查杀分析的病毒可能不是过于高端复杂,但对你认识病毒工作原理还是会很有帮助的,甚至最后你也可以利用c语言实现一个简单的病毒程序。

二.建立对手动查杀病毒技术的正确认识

1.病毒分析方法

一般来说,除非是感染型病毒,否则是不需要对病毒进行逆向分析的,只需要对病毒进行行为分析就可以编写专杀工具。而如果是感染型病毒,由于需要修复被病毒感染的文件,那么就不能仅仅简单地分析病毒的行为,而必须对病毒进行逆向分析,从而修复被病毒所感染的文件。因此,实际中的分析方法有以下两种:

  1. 行为分析。恶意程序为了达到目的,都有自己的一些特殊的行为,这些特殊的行为是正常的应用程序所没有的。比如把自己复制到系统目录下,或把自己添加进启动项,或把自己的某个DLL文件注入到其它进程中去。
  2. 逆向分析。当恶意程序感染了可执行文件之后,所感染的内容是无法通过行为监控工具发现的。而病毒对可执行文件的感染,有可能是通过PE文件结构中的节与节之间的缝隙来存放病毒代码,也可能是添加一个新节来存放病毒代码。无论是哪种方式,都需要通过逆向的手段进行分析。

2.病毒查杀步骤

  1. 查内存,排查可疑进程,将病毒从内存中干掉
  2. 查启动项,删除病毒启动项
  3. 通过启动项判断病毒所在位置,并从根本上删除病毒
  4. 修复系统

3.必备知识

1) 熟悉windows系统进程
2) 熟悉常见端口与进程对应关系
3) 熟悉windows自带系统服务
  • 系统随机启劢服务查看:msconfig/services.msc
  • SvcHost.exe宿主进程对应的多项服务
  • windows隐藏服务管理工具:SDCT
4) 熟悉注册表启动项位置

随机启动项目在注册表中的位置

  • HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options

三.详解Windows随机启动项目——注册表

注册表是Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。早在很多年前的Windows系统中注册表就已经出现。随后推出的Windows NT是第一个从系统级别广泛使用注册表的操作系统。但是,从Microsoft Windows 95操作系统开始,注册表才真正成为Windows用户经常接触的内容,并在其后的操作系统中继续沿用至今。

注册表是一个重要的数据库,里面存储的是本系统中的所有配置,如开机启动项,桌面背景,右键菜单,图标,系统更新,系统中一些按键的响应,甚至还有系统管理员的信息。所以修改注册表是一个病毒可以控制影响我们系统一个很直接的方式。比如在c语言中就提供了可以直接操作Windows注册表的接口函数。

// 打开注册表
LONG WINAPI RegCreateKey(
_In_ HKEY hKey,
_In_opt_ LPCTSTR lpSubKey,
_Out_ PHKEY phkResult
);
// 读写注册表
LONG RegSetValueEx(
    HKEY hKey,
    LPCTSTR lpValueName,
    DWORD Reserved,
    DWORD dwType,
    CONST BYTE *lpData,
    DWORD cbData
);

此处在病毒编程实战中再做详细阐述

开机自启动的实现方法就是通过注册表实现,在注册表中有固定的开机自启程序设置位置。

在命令提示符中输入regedit打开注册表看看能不能在下面五个开机自启项中找到你本机的开机自启软件吧!

一个软件出现在五个启动项一个中即可

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run;
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Runonce;
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run;
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce;
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx

四.详解Windows随机启动项目——系统服务

一个病毒往往会以系统服务的形式存在,也就是说他的图标不会出现在你的桌面任务栏,不会像在我们初学编程时程序运行时的一个小黑框展现给用户。

系统服务是指执行指定系统功能的程序、例程或进程,以便支持其他程序,尤其是底层程序。通过网络提供服务时,服务可以在Active Directory(活动目录)中发布,从而促进了以服务为中心的管理和使用。

运行中输入msconfig打开系统配置

在这里我们可以看到有服务启动启动中即是之前我们所说在注册表中的开机自启动项了,不过很多病毒都有在系统配置启动中隐藏自己的功能,所以我们还是要会在注册表中查找。

我们选择隐藏所以Microsoft服务便可看服务列表大量服务被隐藏,只剩下非Microsoft服务,在这些中就可以查找异常服务进行查杀了。

除了这种查看服务的方式,我们还有一种更加详细的方法,通过services.msc查看。

运行中输入services.msc打开服务。

在这里我们可以看到大量的系统服务,比如有WLAN服务(连不上WIFI可以考虑重新启动这个服务),Windows更新服务(可以考虑禁用)。通过查看描述,我们就可以发现一些异常的服务了,比如灰鸽子远控,在其服务描述中很明显的写出了是灰鸽子。

在Windows下病毒也可以对自身服务进行隐藏,这类病毒就需要一些第三方工具了,利用SDCT工具可以查看到本机所有服务的信息,包括隐藏与未隐藏,启动与未启动。

SDCT工具还有之后的工具都可以在我的Github仓库中找到

此外,病毒进程可能利用svcHost.exe宿主进程,此时在Windows任务管理器中病毒进程显示的就是svcHost.exe名称了,这种情况下我们需要利用一条命令来查看SvcHost.exe下有哪些进程。

命令: tasklist /svc

可以看到svchost.exe会存在多个进程,而每个进程下还有多个依赖于此进程的服务。

五.手动查杀病毒实战——熊猫烧香病毒

如果像自己实践记得在虚拟机下!
病毒包可以在Github仓库找到

0. 病毒分析

病毒名称: 武汉男生,又名熊猫烧香病毒。"Worm.WhBoy.h"

1).中毒症状
  • 拷贝自身到所有驱动器根目录,命名为Setup.exe,并生成一个autorun.inf使得用户打开该盘运行病毒,并将这两个文件属性设置为隐藏、只读、系统。
  • 无法手工修改“文件夹选项”将隐藏文件显示出来。
  • 在每个感染后的文件夹中可见Desktop_ini的隐藏文件,内容为感染日期 如:2007-4-1
  • 电脑上的所有脚本文件中加入一段代码:
<iframe src=xxx width=”0” height=”0”></iframe>
  • 中毒后的机器上常见的反病毒软件及防火墙无法正常开启及运行。
  • 不能正常使用任务管理器及注册表。
  • 无故的向外发包,连接局域网中其他机器。
  • 感染其他应用程序的.exe文件,并改变图标颜色,但不会感染微软操作系统自身的文件。
  • 删除GHOST文件(.gho后缀),网吧、学校和单位机房深受其害。
  • 禁用常见杀毒工具。
2).病毒特征
  • 关闭众多杀毒软件和安全工具。
  • 循环遍历磁盘目录,感染文件,对关键系统文件跳过。
  • 感染所有EXE、SCR、PIF、COM文件,并更改图标为烧香熊猫。
  • 感染所有.htm/.html/.asp/.php/.jsp/.aspx文件,添加木马恶意代码。
  • 自动删除*.gho文件。
3).发作症状
  1. 拷贝文件

病毒运行后,会把自己拷贝到C:\WINDOWS\System32\Drivers\spoclsv.exe

  1. 添加注册表自启动

病毒会添加自启动项HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\svcshare -> C:\WINDOWS\System32\Drivers\spoclsv.exe

  1. 病毒行为
  • 每隔1秒寻找桌面窗口,并关闭窗口标题中含有以下字符的程序

QQKav,QQAV,防火墙,进程,VirusScan,网镖,杀毒,毒霸,瑞星,江民,黄山IE,超级兔子,优化大师,木马克星,木马清道夫,QQ病毒,注册表编辑器,系统配置实用程序,卡巴斯基反病毒,Symantec AntiVirus,Duba,esteem proces,绿鹰PC,密码防盗,噬菌体,木马辅助查找器,System Safety Monitor,Wrapped gift Killer,Winsock Expert,游戏木马检测大师,msctls_statusbar32,pjf(ustc),IceSword
并使用的键盘映射的方法关闭安全软件IceSword

并中止系统中以下的进程:

Mcshield.exe VsTskMgr.exe naPrdMgr.exe UpdaterUI.exe TBMon.exe scan32.exe
Ravmond.exe CCenter.exe RavTask.exe Rav.exe Ravmon.exe RavmonD.exe
RavStub.exe KVXP.kxp kvMonXP.kxp KVCenter.kxp KVSrvXP.exe KRegEx.exe UIHost.exe TrojDie.kxp
FrogAgent.exe Logo1_.exe Logo_1.exe Rundl132.exe
  • 每隔18秒

点击病毒作者指定的网页,并用命令行检查系统中是否存在共享,存在的话就运行net share命令关闭admin$共享。

  • 每隔10秒

下载病毒作者指定的文件,并用命令行检查系统中是否存在共享共存在的话就运行net share命令关闭admin$共享。

  • 每隔6秒

删除安全软件在注册表中的键值。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
RavTask KvMonXP kav KAVPersonal50 McAfeeUpdaterUI Network Associates Error Reporting Service ShStartEXE YLive.exe yassistse

并修改以下值不显示隐藏文件

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL\CheckedValue

修改为 0x00

删除以下服务

navapsvc wscsvc KPfwSvc SNDSrvc
ccProxy ccEvtMgr ccSetMgr SPBBCSvc
Symantec Core LC NPFMntor MskService FireSvc
  • 感染文件

病毒会感染扩展名为exe,pif,com,src的文件,把自己附加到文件的头部并在扩展名为htm,html, asp,php,jsp,aspx的文件中添加一网址,用户一旦打开了该文件,IE就会不断的在后台点击写入的网址,达到增加点击量的目的,但病毒不会感染以下文件夹名中的文件,防止系统崩溃。

WINDOW
Winnt
System Volume Information
Recycled
Windows NT
WindowsUpdate
Windows Media Player
Outlook Express
Internet Explorer
NetMeeting
Common Files
ComPlus Applications
Messenger
InstallShield Installation Information
MSN
Microsoft Frontpage
Movie Maker
MSN Gamin Zone

1. 查内存,排查可疑进程,将病毒从内存中干掉

在虚拟机中运行熊猫烧香病毒,记得要在xp虚拟机啊,物理机现在Windows补丁已经免疫熊猫烧香了。

在虚拟机中我们打开任务管理器,发现刚一打开就会被关闭,这是熊猫烧香的特征之一。

右键一个分区,你会发现第一项不是打开,而是Auto,这是因为熊猫烧香病毒会在分区产生一个autorun.inf文件使得用户打开该盘运行病毒,autorun.inf文件是系统,隐藏文件。

甚至一些病毒会把Auto起名为打开,右键分区你会发现两个打卡选项。

我们第一步就要先关闭病毒进程,排查内存时我们需要使用tasklist命令查看可疑进程,spoclsv.exe就是熊猫烧香的进程名了(这个可能需要大量的积累,最好是对Windows系统进程有大量了解)。

找到后通过taskkill /f /im PID命令将其终止

有些病毒无论任务管理器还是taskkill命令都无法将其终止,这类病毒大多是有三个进程相互保护,有一个被终止后其他进程会立即再次启动这个进程。

2. 查启动项,删除病毒启动项

将病毒从内存中清除之后,接下来我们要删除其服务和启动项。

在禁用删除掉启动项之前,我们需要先记住这个病毒的路径,以便第三步去删除它的主体。

3. 通过启动项判断病毒所在位置,并从根本上删除病毒

下图就是熊猫烧香病毒本体的位置了,其实但看启动项中exe路径就能发现spoclsv服务的可疑了,它位于system32\drivers下,也不是一些常见的系统服务。

到这个路径下删除这个exe程序。

4. 修复系统

删除完exe之后我们重启系统,会发现现在系统中没有spoclsv.exe这个进程了。

这时病毒还有可能会复发,因为系统还未完成修复,之前说的分区双击默认选项可能会导致病毒程序再次运行。

我们需要将Auto选项删除,并且清理系统。

autorun.inf就是关联我们右键菜单的文件了。

我们通过attrib -s -h -a -r autorun.inf来分别将autorun.infsetup.exe隐藏属性删除并且删除这两个文件。

删除之后我们双击分区打开会发现无法生效。

注销系统后,右键菜单恢复。

原文地址:https://www.cnblogs.com/LexMoon/p/bdfx.html

时间: 2024-11-09 04:31:45

病毒木马防御与分析的相关文章

病毒木马查杀实战第026篇:“白加黑”恶意程序研究(上)

前言 众所周知,传统的恶意程序都是由单一文件构成的,从而实现某一种或者几种恶意功能.而这类的恶意程序为了避免被发现以及被查杀,往往会采用五花八门的自我隐藏技术以及免杀技术,病毒程序的作者很多时候也是脑洞大开,为了对抗杀软的查杀也是无所不用其极.我们每天所处理的恶意文件里面,反查杀手段运用得最好的就是脚本木马,关于这类程序,我在之前的<病毒木马查杀实战第025篇:JS下载者脚本木马的分析与防御>这篇博文中也做过简单的论述.可是,不论恶意程序如何进化,杀软厂商总有各种各样的方法来应对现有的以及未知

病毒木马查杀实战第018篇:病毒特征码查杀之基本原理

本系列教程版权归"i春秋"所有,转载请标明出处.        本文配套视频教程,请访问"i春秋"(www.ichunqiu.com). 前言 在本系列的导论中,我曾经在"病毒查杀方法"中简单讲解过特征码查杀这种方式.而我也在对于实际病毒的专杀工具编写中,使用过CRC32算法来对目标程序进行指纹匹配,从而进行病毒判定.一般来说,类似于MD5以及CRC32这样的算法,在病毒大规模爆发时是可以提高查杀效率的,但是传统的更为常用的方法是采用以静态分析文

病毒木马查杀第004篇:熊猫烧香之专杀工具的编写

一.前言 如果是非感染型的病毒,完成行为分析之后,就可以开始编写专杀工具了.当然对于我们这次研究的对象--"熊猫烧香"来说,其实通过之前的行为分析,我们并没有得出它的所有恶意行为,毕竟还没有对其进行逆向分析.所以这里仅针对我们上一篇文章所得出的结果,来进行专杀工具的编写.一般来说,专杀工具既可以用批处理实现,又可以用编程语言编写,但是现实中更多的还是用后者进行制作的,因为其更加严谨.灵活.因此我这里会使用C++来写一个简单的"熊猫烧香"专杀程序. 二.病毒行为回顾与

控制指令高达二十多种:远控木马Dendoroid.B分析报告( 转)

控制指令高达二十多种:远控木马Dendoroid.B分析报告 IT社区推荐资讯 - ITIndex.net Apr 24 近期,360团队截获了一款功能强大的专业间谍软件,它可以通过PC端远程控制中招用户的手机,控制指令高达二十多种,窃取用户手机通讯录,短信,照片及其它重要隐私数据.这个远控木马与去年知名的Android.Dendoroid木马家族手段非常相似,所以我们将其命名为 Android.Dendoroid.B. 一.木马Android受控端恶意行为分析 ‍‍ 1.释放文件,隐藏图标,启

病毒木马查杀第008篇:熊猫烧香之病毒查杀总结

一.前言 之前用了六篇文章的篇幅,分别从手动查杀.行为分析.专杀工具的编写以及逆向分析等方面,对"熊猫烧香"病毒的查杀方式做了讨论.相信大家已经从中获取了自己想要的知识,希望大家在阅读完这几篇文章后,能够有一种"病毒也不过如此"的感觉,更希望这些文章能够为有志于在未来参与到反病毒工作的朋友,打下坚实的理论基础.以下就是我在这几篇文章的分析中所总结出来的一些知识点,分为静态分析与动态分析两个方面进行讨论,并加入了一些延伸知识,为大家查漏补缺. 二.病毒的静态分析 静态

病毒木马查杀第013篇:一个基于.NET的“敲竹杠”病毒研究

一.前言 恶意程序发展至今,其功能已经从最初的单纯破坏,不断发展为隐私的窥探,信息的盗取,乃至如今非常流行的"敲竹杠"病毒,用于勒索.可见随着时代的发展,病毒的作者们往往也是想利用自己的技术来获取不义之财,变得越来越功利化了.而本系列文章也顺应了这个发展,从病毒讨论到木马,进而来到了"敲竹杠"病毒的讨论上来. 二.什么是"敲竹杠"病毒 其实"敲竹杠"病毒的行为很简单,它就是篡改我们的计算机的开机密码,然后病毒作者留下个人的联系

Atitit.病毒木马程序的感染&#160;传播扩散&#160;原理

Atitit.病毒木马程序的感染 传播扩散 原理 1. 从木马的发展史考虑,木马可以分为四代 1 2. 木马有两大类,远程控制  vs  自我复制传播1 3. 自我复制2 3.1. 需要知道当前cpu核心数量2 3.2. Cpu占用百分比2 3.3. Io占用百分比2 3.4. 内存占用百分率2 4. 通过email传播扩散3 5. 通过qq等sns im软件传播扩散3 6. Bbs 论坛网站传播扩散3 7. 捆绑下载软件扩散3 8. 局域网扩散感染3 9. 利用系统或软件漏洞: 3 10. 隐

病毒木马查杀实战第015篇:U盘病毒之脱壳研究

本系列教程版权归"i春秋"所有,转载请标明出处.        本文配套视频教程,请访问"i春秋"(www.ichunqiu.com). 前言 由于我们的最终目标是编写出针对于这次的U盘病毒的专杀工具,而通过上次的分析我们知道,病毒有可能在不同的计算机中会以不同的名称进行显示,如果真是如此,那么就有必要在此分析出病毒的命名规律等特征,然后再进行查杀. 对病毒样本进行脱壳 按照常规,首先是对病毒进行查壳的工作,这里我所使用的是"小生我怕怕"版的PE

病毒木马查杀第011篇:QQ盗号木马之专杀工具的编写

一.前言 由于我已经在<病毒木马查杀第004篇:熊猫烧香之专杀工具的编写>中编写了一个比较通用的专杀工具的框架,而这个框架对于本病毒来说,经过简单修改也是基本适用的,所以本文就不讨论那些重叠的知识,只针对这个病毒特有的方面来讨论专杀工具的编写,然后将其进行组合,就是完整的针对于本病毒的专杀工具了. 二.原理讨论 对于本病毒而言,其最大的特色就在于使用了进程守护技术.病毒运行后,同时有三个病毒进程存在,关闭其中的任何一个,由于还有两个病毒进程的存在,那么被关闭的又会被重新开启.要解决这个问题,不