某释放驱动的样本分析及手杀报告

此为样本文件下载链接:http://download.csdn.net/detail/cs08211317dn/3982364,压缩包解压缩密码为:virus。

今天花了1个多小时分析了一款名为123.exe的病毒,觉得挺有意思的,于是顺手写个手杀报告,以备以后查看。

1.病毒行为:

(1)利用注册表项 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Image File Execution Options劫持多个软件,在powertool中看到的劫持情况如下图:






(2)释放一个名字随机的驱动:C:\WINDOWS\system32\ 77037933.sys。此驱动释放文件系统dispatch钩子,以隐藏自身和另外一个病毒文件

C:\WINDOWS\system32\appmgmts.dll。驱动钩子如下图:


(3)删除了以下两个注册表项:

HKEY_LOCAL_MACHINESYSTEM\ControlSet001\Control\SafeBoot\Minimal\{4D36E967-E325-11CE-BFC1-08002BE10318}

HKEY_LOCAL_MACHINE SYSTEM\ControlSet001\Control\SafeBoot\Network\{4D36E967-E325-11CE-BFC1-08002BE10318}

使得用户无法进入安全模式。

2.手杀步骤:

(1)仅仅摘除钩子是不够的,因为驱动会回写钩子。所以用powertool卸载掉挂钩的驱动:C:\WINDOWS\system32\ 77037933.sys。随着驱动被卸载,钩子也就不复存在了。

(2)此时在资源管理器中能够看到C:\WINDOWS\system32\ 77037933.sys和C:\WINDOWS\system32\appmgmts.dll。sys文件能够顺利删除。但是在删除appmgmts.dll系统弹出以下错误框:


无法删除的原因很有可能是还有进程在调用此文件。在xuetr中查找进程模块,发现pid为1128的进程svchost.exe在调用appmgmts.dll,截图如下:


于是先结束掉svchost.exe进程,再删除appmgmts.dll成功。注意,要尽快删掉appmgmts.dll,否则此文件又会重新释放一个驱动文件,来替换刚才我们删除的驱动文件的功能。这样前面做的步骤就都白费了。

(3)修复镜像劫持:删除 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Image File Execution Options这个注册表项。

(4)修复安全模式:添加注册表项:

HKEY_LOCAL_MACHINESYSTEM\ControlSet001\Control\SafeBoot\Minimal\{4D36E967-E325-11CE-BFC1-08002BE10318}

HKEY_LOCAL_MACHINE SYSTEM\ControlSet001\Control\SafeBoot\Network\{4D36E967-E325-11CE-BFC1-08002BE10318}


(5)到此为止,手杀完毕。提醒一点。不能删除appmgmts.dll时,用一些软件是可以删除的,但是不完全。比如我用一款叫“顽固木马克星”的杀毒软件扫描到此文件并删除,删除确实是删除了,但是pid为1128的进程svchost.exe会再生成此文件,以下是我用processmonitor监测到的回写行为:


所以,要写完全删除appmgmts.dl文件,必须先结束pid为1128的进程svchost.exe的进程。否则svchost.exe会生成appmgmts.dl,而appmgmts.dl会再释放一个驱动。这样就相当于又回到了手杀的最初。



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

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

相关文章

CentOS 7.2 安装zabbix 3.4

一、zabbix版本选择及部署环境说明 1、zabbix版本选择 zabbix官网地址:www.zabbix.com zabbix每半年发布一个长期支持版,目前长期支持版有2.0、3.0等,所以选择zabbix版本建议选择长期支持版,除非有特殊需求。 2、部署环境环境说明…

吴恩达机器学习笔记(二) —— Logistic回归

主要内容: 一.回归与分类 二.Logistic模型即sigmoid function 三.decision boundary 决策边界 四.cost function 代价函数 五.梯度下降 六.自带求解函数 七.多分类问题 一.回归与分类 回归:用于预测,输出值是连续型的。例如根据房子的大小预测…

弹出选择文件夹的对话框 BROWSEINFO 的用法【MFC】

以下是在vs2008中编译通过的代码,代码注释详细。要实现的功能是点击“浏览”按钮,即弹出选择文件夹的对话框。并将选择的文件夹或文件路径显示在MessageBox中。 void CMFC_TrojanKillerDlg::OnBnClickedButton1() {// TODO: 在此添加控件通知处理程序代码…

regini.exe使用方法

创建一个名称test 类型reg_dword 数据1 如果是只有那会默认以类型reg_sz创建 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\ys test reg_dword 1 2。注册表键数值 [更改的权限] 例如: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run…

计算机寄存器及标志位详解

以下是计算机内部寄存器阵列图: 以下FR控制标志位及其含义: 1. CF 进位标识位 进行加减运算时, 如果最高二进制位产生进位或错位, CF则为1, 否则为0. 程序设计中, 常用条件转移指令JC, JNC指令据此标志位实现转移 2. PF 奇偶标志位 操作结果…

NOIP 2010 引水入城

P1514 引水入城 题目描述 在一个遥远的国度,一侧是风景秀美的湖泊,另一侧则是漫无边际的沙漠。该国的行政区划十分特殊,刚好构成一个 NN 行 \times MM 列的矩形,如上图所示,其中每个格子都代表一座城市,每座…

前段mui框架初识

由于需要了解了一下mui框架,感觉没有想象的那么好 mui引入过后就要生成他自己的滚动条 而且 不能获取页面的高度 非屏幕的高度 mui上拉加载是会有卡顿现象的 , 这段代码执行完之后会有比较严重的手机段拖动卡顿现象 解决办法 给他设置滚动系数&#…

关于(int argc char **argv)

演示使用opencv显示一幅图片&#xff1a; #include <iostream> #include <core/core.hpp> #include <highgui/highgui.hpp> using namespace std; using namespace cv; void main(int argc,char **argv) {Mat imageimread(argv[1]);imshow("Lena",…

Pytorch中的Batch Normalization操作

之前一直和小伙伴探讨batch normalization层的实现机理&#xff0c;作用在这里不谈&#xff0c;知乎上有一篇paper在讲这个&#xff0c;链接 这里只探究其具体运算过程&#xff0c;我们假设在网络中间经过某些卷积操作之后的输出的feature map的尺寸为4322 4为batch的大小&…

regsvr32.exe

regsvr32.exe用于注册Windows操作系统的动态链接库和ActiveX控件。 regsvr32.exe 文件建议修改权限&#xff0c;删除所有的用户只保存Administrators 和SYSTEM为所有权限 regsvr32.exe是32位系统下使用的DLL注册和反注册工具&#xff0c;使用它必须通过命令行的方式使用&#x…

一个注册为输入法的木马分析

我已把此木马样本传到以下链接&#xff1a;http://download.csdn.net/detail/cs08211317dn/4096819 一&#xff0e;大致描述&#xff1a; 1. 样本名称&#xff1a;z.exe 2. 家族名&#xff1a; PWS:Win32/Zuten.gen!D(MIcrosoft) 3. MD5&#xff1a;E298C3…

使用fiddler的过滤条件

使用fiddler抓包的时候经常一下子显示很多的记录&#xff0c;看的眼花缭乱&#xff0c;需要这时候需要使用过滤条件来帮助你&#xff0c;一般常用的有三种过滤条件&#xff1a; 1.域名过滤&#xff0c;只显示特定域名的记录&#xff1a; *.baidu.com表示所有的百度二级域名会话…

IceSword偏门功能介绍

&#xff08;1&#xff09;进程窗口中单击右键&#xff0c;选择“内存读写”&#xff0c;弹出如下对话框&#xff1a; 输入起始地址和长度就可以读写内存&#xff0c;以及对这段内存进行反汇编。 &#xff08;2&#xff09;用IceSword的监视进线程创建和监视进程终止功能&…

【Apache】Apache ab压力测试工具Window下载和用法详解

ab是apache自带的网站压力测试工具。 使用起来非常的简单和方便。 不仅仅是可以apache服务器进行网站访问压力测试&#xff0c;还可以对其他类型的服务器进行压力测试。 比如nginx,tomcat&#xff0c;IIS等 首先当然是下载安装了。 在这里只讲window下在下载安装 官方下载地址&…

中华黑豹增强版木马分析

样本网址&#xff1a;http://download.csdn.net/detail/cs08211317dn/4144024 一&#xff0e; 大致描述&#xff1a; 1. 样本名称&#xff1a;中华黑豹增强版.exe 2. 家族名&#xff1a; TrojanDownloader:VBS/Lnkget.D(Microsoft) 3. MD5&#xff…

epoll源码分析

epoll源码分析 最近在使用libev过程中遇到一个场景&#xff1a;一个fd从一个ev_loop迁移到另一个ev_loop&#xff0c;会出现这个fd同时存在两个epoll的瞬间。不禁要问了&#xff0c;一个fd同时被两个epoll监视的行为是怎样的&#xff0c;epoll嵌套使用是怎样实现的&#xff1f;…

用windows api 计算文件的md5值

我自己封装了一个函数GetMd5(LPCWSTR FileDirectory)。其中调用了windows api&#xff1a;CryptAcquireContext&#xff0c;CryptCreateHash,CryptHashData等。要计算不同文件的md5值&#xff0c;只需在调用此函数时传入不同文件的全路径即可&#xff0c;不需要额外的dll。示例…

用EnumProcesses()枚举进程

参照msdn的例子&#xff0c;用EnumProcesses&#xff08;&#xff09;枚举进程并输入进程名和句柄。以下代码在vs2008中测试通过&#xff1a; #include "stdafx.h" #include <windows.h> #include "psapi.h" #pragma comment (lib, "psapi.…

利用Tomcat运行一个JSP页面 详细步骤

1.启动Tomcat: 在Tomcat安装目录下的bin文件夹中&#xff0c;运行startup.bat批处理文件。截图如下&#xff1a; 此时会自动弹出窗口&#xff1a; 不要关闭这个窗口。 2.测试Tomcat是否启动成功。 打开浏览器&#xff0c;在地址栏中输入http://localhost:8080&#xff08;Tom…

JSP的三个编译指令-page,include详解

JSP的编译指令是通知JSP引擎的消息。 常见的编译指令有三个&#xff1a; page&#xff1a;该指令是针对当前页面的指令。 include&#xff1a;用于指定如何包含另一个页面。 tablib&#xff1a;用于定义和访问自定义标签。 编译指令格式如下&#xff1a; <% 编译指令…