Backdoor.Zegost木马病毒分析(一)
http://blog.csdn.net/qq1084283172/article/details/50413426
一、样本信息
样本名称:rt55.exe
样本大小: 159288 字节
文件类型:EXE文件
病毒名称:Win32.Backdoor.Zegost
样本MD5:C176AF21AECB30C2DF3B8B8D8AA27510
样本SHA1:16E951925E9C92BC8EFDF21C2FBAF46B6FFD13BC
二、行为具体分析
1.获取当前运行模块的命令行参数,根据当前命令行参数是否包含字符串"NewUpdatExe"进行判断,决定下面提到的内存解密PE文件是调用导出函数NewUpdatExe还是导出函数xDllMain。
2.解密当前病毒进程内存地址为0x408070处,文件大小为0x17C00的被加密隐藏的PE文件。
3. 加载内存解密的PE格式的Dll文件,进行恶意病毒行为的操作;具体的加载过程后面会具体分析。
4.将解密内存PE文件的每个区节块的数据从文件映射到申请的内存空间中。
5. 对内存解密PE文件的重定位表Base RelocationTable进行重定位的修复。
具体的参考代码:http://blog.sina.com.cn/s/blog_6ac942220100l8c2.html
6. 获取解密内存PE文件的导入表中的INT表中的函数的调用地址填充IAT表。
7. 循环修改解密内存PE文件的各区节块数据段的内存数据属性。
8.运行的病毒进行将PE文件(dll文件)的加载已经基本完成了,因此这个被病毒进行内存加载的PE的动态库文件是有效可以执行的;因此以该内存PE动态库的OEP为函数指针执行恶意的代码。
9. 获取导出函数名称字符串"NewUpdatExe"或"xDllMain",用以获取解密内存PE文件的导出函数"NewUpdatExe"或"xDllMain"的调用地址。
遍历内存解密PE文件的导出表,获取需要的导出函数"NewUpdatExe"或"xDllMain"的调用地址。
10.根据步骤1中的传入的函数的名称"NewUpdatExe"或者"xDllMain",根据上面的步骤获取需要的导出函数"NewUpdatExe"或者"xDllMain"的地址,然后调用内存解密PE动态库文件的导出函数"NewUpdatExe"或者"xDllMain",执行恶意的代码;然后再次以内存解密PE文件的OEP为函数指针,执行内存PE文件的代码,执行恶意行为。
三、 病毒分析总结
总体来说,上面的详细的分析,基本可以使用一句话总结,那就是:宿主样本程序通过LoadPE的方式加载解密的PE动态库dll文件,然后有加载的PE动态库dll文件来执行具体恶意的病毒行为,从而达到逃过杀软的查杀的目的。关于Backdoor.Zegost木马病毒的具体行为也就是内存解密PE动态dll文件的恶意行为后面会详细的分析。
|
宿主样本程序加载PE动态库文件的步骤 |
|
|
1 |
在宿主程序内存中解密出加密的PE动态库dll文件 |
|
2 |
将内存解密的PE动态库dll文件的数据进行PE文件镜像的内存映射 |
|
3 |
对内存解密PE文件的重定位表Base RelocationTable进行重定位的修复 |
|
4 |
获取解密内存PE文件的导入表中的INT表中的函数的地址填充IAT表 |
|
5 |
修改解密内存PE文件的各个区节块数据段的内存数据属性 |
|
6 |
内存解密的PE动态库dll文件的加载完成,可以像正常dll一样执行自己的代码 |
注:真的好烦,笔记本屏幕显示发白导致截图不清晰;本来想好好的记录下这个有意思的木马病毒,但是由于截图的效果不好,心情顿时就不好了。
Backdoor.Zegost木马病毒分析(一)的更多相关文章
- 感染性的木马病毒分析之样本KWSUpreport.exe
一.病毒样本简述 初次拿到样本 KWSUpreport_感染.exe.v 文件,通过使用PE工具,并不能辨别出该样本是那种感染类型,使用了一个比较直接的方法,从网上查资料,获取到了该样本的正常EXE文 ...
- 一个简单的Android木马病毒的分析
一.样本信息 文件名称: 一个安卓病毒木马.apk 文件大小:242867 byte 文件类型:application/jar 病毒名称:Android.Trojan.SMSSend.KS 样本MD5 ...
- 病毒木马查杀实战第025篇:JS下载者脚本木马的分析与防御
前言 这次我与大家分享的是我所总结的关于JS下载者脚本木马的分析与防御技术.之所以要选择这样的一个题目,是因为在日常的病毒分析工作中,每天都会遇到这类病毒样本,少则几个,多则几十个(当然了,更多的样本 ...
- Android木马病毒com.schemedroid的分析报告
某安全公司移动病毒分析报告的面试题目,该病毒样本的代码量比较大,最大的分析障碍是该病毒样本的类名称和类方法名称以及类成员变量的名称被混淆为无法辨认的特殊字符,每个被分析的类中所有的字符串都被加密处理了 ...
- Atitit。木马病毒原理机密与概论以及防御
Atitit.木马病毒原理机密与概论以及防御 1. 定时截屏木马1 1.1. QQ聊天与微信聊天木马1 2. 文档木马1 3. 病毒木马的触发方式2 4. 远程木马2 5. 漏洞木马2 6. 病毒木马 ...
- [FreeBuff]Trojan.Miner.gbq挖矿病毒分析报告
Trojan.Miner.gbq挖矿病毒分析报告 https://www.freebuf.com/articles/network/196594.html 竟然还有端口转发... 这哥们.. 江民安全 ...
- HackingTeam重磅炸弹: 估值超1000万美金带有军火交易性质的木马病毒以及远控源代码泄露
[简单介绍] 经常使用网名: 猪头三 出生日期: 1981.XX.XX 个人站点: http://www.x86asm.com QQ交流: 643439947 编程生涯: 2001年~至今[共14年] ...
- 病毒分析(三)-利用Process Monitor对熊猫烧香病毒进行行为分析
前两次随笔我介绍了手动查杀病毒的步骤,然而仅通过手动查杀根本无法仔细了解病毒样本的行为,这次我们结合Process Monitor进行动态的行为分析. Process Monitor Process ...
- PE文件加节感染之Win32.Loader.bx.V病毒分析
一.病毒名称:Win32.Loader.bx.V 二.分析工具:IDA 5.5.OllyDebug.StudPE 三.PE文件加节感染病毒简介 PE病毒感染的方式比较多,也比较复杂也比较难分析,下面就 ...
随机推荐
- (三)MySQL锁机制 + 事务
转: (三)MySQL锁机制 + 事务 表锁(偏读) 偏向MyISAM存储引擎.开销小,加锁快,无死锁,锁定粒度大,发生锁冲突的概率最高,并发最低. 查看当前数据库中表的上锁情况,0表示未上锁. sh ...
- Java的特性和优势以及不同版本的分类,jdk,jre,jvm的联系与区别,javadoc的生成
Java 1.Java的特性和优势 Write Once,Run Anywhere 简单性 面向对象 可移植性 高性能 分布式 动态性 多线程 安全性 健壮性 2.Java的三大版本 JavaSE:标 ...
- Tomcat后台爆破指南
0x00 实验环境 攻击机:Win 10 0x01 爆破指南 针对某Tomcat默认管理页面: (1)这里主要是介绍一种比较好用的burp爆破方法: 点击Tomcat后台管理链接 Tomc ...
- C语言编程 菜鸟练习100题(21-30)
[练习21]计算自然数的和 0. 题目: 计算自然数的和 1. 分析: 练习使用 for 循环结构.for 循环允许一个执行指定次数的循环控制结构. 2. 程序: #include <stdio ...
- Hi3559AV100 NNIE开发(5)mobilefacenet.wk仿真成功量化及与CNN_convert_bin_and_print_featuremap.py输出中间层数据对比过程
前面随笔给出了NNIE开发的基本知识,下面几篇随笔将着重于Mobilefacenet NNIE开发,实现mobilefacenet.wk的chip版本,并在Hi3559AV100上实现mobilefa ...
- LeetCode 175. Combine Two Tables 【MySQL中连接查询on和where的区别】
一.题目 175. Combine Two Tables 二.分析 连接查询的时候要考虑where和on的区别 where : 查询时,连接的时候是必须严格满足条件的,满足了才会加入到临时表中. on ...
- 1.mysql读写
一.数据库读取(mysql) 参数 接受 作用 默认 sql or table_name string 读取的表名,或sql语句 无 con 数据库连接 数据库连接信息 无 index_col Int ...
- 2、MyBatis教程之第一个MyBatis程序
3.MyBatis第一个程序 1.搭建实验数据库 CREATE DATABASE `mybatis`; USE `mybatis`; DROP TABLE IF EXISTS `user`; CREA ...
- 【LiteOS】Liteos移植篇
目录 前言 链接 参考 笔录草稿 移植(2018) 移植获取 (Cortex-M 内核) 主要文件夹分析 移植过程 1. 拷贝文件 2. 创建工程分组 3. 添加头文件路径 4. 兼容 C99 模式 ...
- 热更新语言--lua学习笔记
一.lua安装和编程环境搭建 lua语言可以在官网:http://luadist.org/下载安装包安装,编程IDE之前学习使用的是SciTE(https://www.cnblogs.com/movi ...