• Word/Excel文档伪装病毒-kspoold.exe分析


    一、 病毒样本基本信息


    样本名称:kspoold.exe

    样本大小: 285184 字节

    样本MD5:CF36D2C3023138FE694FFE4666B4B1B2

    病毒名称:Win32/Trojan.Spy.a5e

    计算机系统中了该病毒一个比较明显的特征就是U盘里的.doc、.xls文件会被病毒隐藏起来,变成kspoold.exe病毒的载体文件,误导用户以为是原来的.doc、.xls文件达到传播病毒的目的,用户运行该kspoold.exe的载体病毒以后,病毒母体kspoold.exe就会驻留到用户的电脑里。




    二、 隐藏了.doc、.xls文档的衍生病毒的具体行为


    1.从该样本文件的资源中获取名称为"UKURAN_EKSTRAKTO"的资源数据,然后解密该数据。


    2.创建文件C:WINDOWSsystem32kspoold.exe释放到系统目录C:WINDOWSsystem32下,并运行病毒母体文件kspoold.exe。




    3.在该病毒样本的目录下,释放出原来正常的.doc、.xls文件






    4.调用函数ShellExecuteA打开原来被隐藏的.doc、.xls文件,给用户造成假象。


    5.通过字符串"COMSPEC"在系统的环境变量中查找到系统cmd.exe程序的路径"C:\WINDOWS\system32\cmd.exe"


    6.调用函数ShellExecuteA在"C:\WINDOWS\system32\cmd.exe"中,执行命令"/c del 新建Microsoft Word 文档.exe"删除 kspoold.exe的载体病毒例如”新建 Microsoft Word 文档.exe “文件自身。




    三、 病毒母体kspoold.exe的具体行为


    1.   创建可执行文件C:WINDOWSsystem32avmeter32.dll和C:DOCUME~1ADMINI~1LOCALS~1TempUninstallLog.dat。


    2.   创建下面几个关键的注册表:

    "HKEY_LOCAL_MACHINESYSTEMControlSet001ServiceskspooldaemonEnum"

    "HKEY_LOCAL_MACHINESYSTEMControlSet001ServiceskspooldaemonSecurity

    "HKEY_LOCAL_MACHINESYSTEMControlSet001Serviceskspooldaemon"

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceskspooldaemonEnum"

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceskspooldaemonSecurity

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceskspooldaemon"

    "HKEY_LOCAL_MACHINESYSTEMControlSet001EnumRootLEGACY_KSPOOLDAEMON000Control"

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetEnumRootLEGACY_KSPOOLDAEMON000Control"

    3.   创建系统服务kspooldaemon, C:WINDOWSsystem32kspoold.exe然后启动该系统服务kspooldaemon,系统服务kspooldaemon的作用是守护病毒母体进程kspoold.exe,它会实时的查询病毒母体进程kspoold.exe是否存在,一旦病毒母体进程kspoold.exe不存在,它就会马上创建病毒母体进程kspoold.exe。

    4.   遍历系统所有程序的进程,找到资源管理器进程explore.exe,然后创建远程线程注入释放的C:WINDOWSsystem32avmeter32.dll文件到资源管理器进程explore.exe中。

    5.   获取用户操作系统的磁盘类型,针对用户的U盘里的.doc文件和.xls文件进行病毒感染处理,具体的感染处理是获取.doc文件和.xls的文件的图标,然后再重新构造一个和原来的.doc文件或者.xls文件同名并且图标是一样的载有病毒母体kspoold.exe的.EXE文件。

    6.   获取用户操作系统的键盘布局信息以及设置键盘的消息钩子,对用户的键盘消息进行监听,记录用户的键盘按键的输入信息。




    四、 kspoold.exe病毒专杀的编写思路


    1.   关闭并删除 kspooldaemon系统服务以及删除C:WINDOWSsystem32kspoold.exe文件。


    2.   遍历系统里的所有程序的进程,查找到kspoold.exe进程然后结束它。


    3.   删除下面几个注册表:

    "HKEY_LOCAL_MACHINESYSTEMControlSet001ServiceskspooldaemonEnum"

    "HKEY_LOCAL_MACHINESYSTEMControlSet001ServiceskspooldaemonSecurity

    "HKEY_LOCAL_MACHINESYSTEMControlSet001Serviceskspooldaemon"

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceskspooldaemonEnum"

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceskspooldaemonSecurity

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServiceskspooldaemon"

    "HKEY_LOCAL_MACHINESYSTEMControlSet001EnumRootLEGACY_KSPOOLDAEMON000Control"

    "HKEY_LOCAL_MACHINESYSTEMCurrentControlSetEnumRootLEGACY_KSPOOLDAEMON000Control"


    4.   删除C:WINDOWSsystem32avmeter32.dll文件。


    5.   遍历进程explorer.exe的进程模块,卸载掉avmeter32.dll模块或者直接结束掉explorer.exe进程然后重新创建explorer.exe进程。


    6.   对kspoold.exe衍生病毒的处理,先通过下面的方法提取隐藏的.doc、.xls文件,然后再删除该kspoold.exe衍生病毒文件。

    五、 隐藏的.doc、.xls文档的恢复方法


    1.  被kspoold.exe衍生病毒隐藏的.doc、.xls文件的文件格式保存在该病毒文件的文件偏移Offset=0x50C14的位置的4个字节。


    2.  获取kspoold.exe衍生病毒文件的文件偏移Offset=0x50E23至该病毒文件末尾的所有数据即可提取到被该病毒隐藏的.doc、.xls文件。


    3.  对于被kspoold.exe衍生病毒隐藏的.doc、.xls文件即可以手动通过WinHex.exe工具提取到也可以自己写个程序来实现.doc、.xls文件的提取。






    4.  隐藏.doc、.xls文件的kspoold.exe衍生病毒里有两个PE文件。




    在隐藏.doc、.xls文件的kspoold.exe衍生病毒文件的文件偏移Offset=0xB214位置是第2个PE文件的起始位置,其实该PE文件就是病毒母体文件kspoold.exe,只是病毒母体文件kspoold.exe的最后4个字节被用来保存被隐藏的.doc、.xls文件的文件格式,如.doc、.xls即该PE文件的结束位置是文件偏移Offset=0x50C17位置。








    5.  kspoold.exe衍生病毒文件的数据组成示意图,从上到下即对应从文件头到文件尾。


    六、 kspoold.exe病毒手动查杀方案


    1.打开火眼XueTr工具,切换到火眼工具的服务选项,查看服务列表中有没有一个名称为kspooldaemon的服务。




    如果有,右键选择该服务启动项,先选择“停止”停止该服务,然后选择“删除服务”删除该服务。


     


    2.切换到进程选项,查看用户的进程列表,看进程列表里有没有名称为kspoold.exe的伪打印驱动进程;如果有,右键选中该进程,选择“强制结束进程并删除文件”项,结束进程。


     


    3.在用户的进程列表中找到资源管理器进程explore.exe结束掉该进程。





    4.如果U盘已经被感染,不要将U盘从电脑上拔下,保持U盘的原来状态;经过上面3步操作以后,对U盘进行格式化处理就可以了,文件自然丢失。

    注意:在进行该病毒手动清除的时候,要记得使用火眼工具查看进程和服务列表,并且一定要先停止kspooldaemon服务,然后再结束病毒进程kspoold.exe,顺序不能反过来,否则kspoold.exe病毒进程是结束不掉的。

    七、 kspoold.exe病毒的总结


    kspoold.exe病毒并不是比较新的病毒,早在2012年的时候,就有病毒安全公司收集到该样本,至于是哪个安全公司就不提了,自行百度,并且该安全公司将该病毒划归为木马病毒的范畴。经过对该病毒的分析发现,虽然该病毒有获取系统键盘布局以及为键盘消息设置钩子等行为,将该病毒归为木马病毒还是有点不准确,但是还是遵循病毒安全公司的病毒命名方式,姑且将该病毒归为木马病毒。

     转载请保留本文链接地址:http://blog.csdn.net/qq1084283172/article/details/45913511


  • 相关阅读:
    C++ 类 构造函数 constructor
    数据库——关系代数
    海明码
    C++ this指针
    C++ 类的定义与实现
    C++ 函数 内联函数
    C++ 函数 函数的重载 有默认参数的函数
    2017年第八届蓝桥杯【C++省赛B组】
    2018年第九届蓝桥杯【C++省赛B组】
    C++ 函数 参数传递方式
  • 原文地址:https://www.cnblogs.com/csnd/p/11800727.html
Copyright © 2020-2023  润新知