恶意软件分析
文章平均质量分 88
G4rb3n
https://github.com/G4rb3n
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
地下交易市场分析
概述参考自:https://www2.deloitte.com/content/dam/Deloitte/us/Documents/risk/us-risk-black-market-ecosystem.pdf地下黑客交易市场是一个不断演变的生态系统,反映了当前黑客攻击的趋势。从这里我们可以挖掘出一些关键的信息,比如:在真实的黑客攻击事件中,黑客要用到哪些工具?以及不同的攻击事件,黑客需要多少的攻击成本?几乎每一个黑客攻击事件都涉及到攻击工具和攻击服务,即使是最基本的攻击事件,也需要几种不同的攻击工具翻译 2021-01-25 14:38:31 · 2213 阅读 · 1 评论 -
Docker化自动模拟恶意软件环境
概述一个真实的Linux恶意软件入侵环境,往往包含有病毒文件、病毒进程、恶意启动项、网络通信流量等病毒项,若我们只获得单一的病毒文件,很难还原出恶意软件的整个攻击环境,从而不便于对攻击链进行全面的研究分析,以及产品安全能力测试。下面,介绍一种基于Docker的方法,可以自动化模拟主机中毒的环境,一键搭建恶意软件靶机环境,方便后续对恶意软件进行研究与分析。项目地址:https://github.com/G4rb3n/Malbox使用方法使用命令docker-compose up -d即可一键部署容器原创 2020-12-15 21:10:17 · 820 阅读 · 0 评论 -
使用VSCode远程调试恶意Powershell脚本
概述在野的Powershell恶意脚本总是经过多重混淆、加密,直接静态分析难以得知脚本具体有什么恶意行为,所以需要对其进行动态调试。目前最常用的Powershell调试器是ISE,但ISE没有较友好的调试窗口,使得调试脚本时效率低下,下面,将介绍使用VSCode实现远程调试Powershell脚本,帮助你提升解密分析Powershell恶意脚本的效率。样本获取本次演示所使用的样本为一个Powershell后门,其特点是有多层恶意代码,会从C&C服务器多次加载不同payload,样本地址为:ht原创 2020-10-09 15:16:14 · 1009 阅读 · 3 评论 -
手工搭建简易的Linux恶意脚本分析系统
概述Linux环境下的恶意软件大部分以shell脚本作为母体文件进行传播,而且,同一个病毒家族所使用的的恶意脚本往往具有极高相似性,新变种的脚本大部分是在旧变种脚本的基础上进行修改,新增或替换部分关键恶意代码,同时,不同家族之间的恶意脚本也可能出现代码互相借鉴,部分重合的情况。该如何揭示病毒家族中恶意脚本之间的关系呢?接下来,我们就通过手工搭建一个简易的恶意脚本分析系统,来实现对恶意脚本之间关系的研究。系统的功能如下,主要为3个:[1] 使用yara检测脚本对应的病毒家族。[2] 计算脚本与样本库原创 2020-08-21 17:42:44 · 898 阅读 · 0 评论 -
病毒分析教程第十二话--使用fakenet-ng模拟C&C连接
样本MD5:E8F57996607F41B951F201F2CAFAE15D,下载地址:https://app.any.run/tasks/add02a26-c07f-49cd-8d7d-a1791369c862。这是一个木马,但由于C&C服务器不存活了,所以ANYRUN无法检测出其是否恶意,今天,我们就来通过FakeNet-NG神器,来模拟C&C服务器,以揭露出样本的完整恶意行为...原创 2020-03-06 12:51:38 · 2709 阅读 · 6 评论 -
自动化规则提取工具--yargen原理分析
yara是用来检测恶意软件的利器,yara规则由特征字符串、特征字节码等元素组成,只要恶意软件包含这些特征元素,就说明该文件是恶意的。但一个一个文件提特征是很耗人力的,所以业界就慢慢出现了一些出色的yara自动化提取工具,yarGen便是其中效果比较好的一个,下面,我们就通过分析该工具的源码,来了解这类工具的原理。项目地址为:https://github.com/Neo23x0/yarGen...原创 2020-02-29 14:39:33 · 3132 阅读 · 0 评论 -
病毒分析教程第十一话 -- 使用IDA内存快照获取函数&变量
样本下载地址:https://www.hybrid-analysis.com/sample/31e8a11960d0492b64241354c567643f09f0e0278658d31e75d6f2362dbfae44/589f6600aac2ed382956ce75?lang=zh原创 2020-02-28 12:39:16 · 1536 阅读 · 0 评论 -
病毒分析教程第十话--动态解密payload
样本:61c19e7ce627da9b5004371f867a47d3,下载地址:https://app.any.run/tasks/e163502e-3334-46d9-aeb7-e5c925b64af7。bp VirtualProtectbp VirtualAlloc原创 2020-02-10 19:39:28 · 1915 阅读 · 0 评论 -
病毒分析教程第九话--使用IDA远程调试
恶意软件为了避免静态检测,通常会动态生成&调用敏感的字符串及系统API,这种情况就无法单纯使用IDA进行分析了,得进行调试动态地获得这些值。而IDA有个远程调试的功能,很实用,我们下面就来学习如何使用IDA进行远程调试。样本还是上一章的样本:F834F898969CD65DA702F4B4E3D83DD0我们首先运行下样本,发现该样本会创建一个新的进程并运行,这个应该是我们上一章提到的病...原创 2019-12-26 19:35:17 · 1223 阅读 · 0 评论 -
病毒分析教程第八话--idapython使用
idapython使用IDAPython是IDA的一款强大的插件,通过它可以对病毒代码做一些自动化的操作,常用于汇编码反混淆和解密。接下来我们尝试使用该工具来解密病毒代码。本次实验的样本为:F834F898969CD65DA702F4B4E3D83DD0,先使用IDA打开它,目光聚焦到上面的导航栏,有一大段绿色的数据,位于0x40C030,直觉告诉我,这是段加密后的可执行文件。在unk_4...原创 2019-12-25 17:18:20 · 727 阅读 · 0 评论 -
病毒分析教程第七话--进程注入分析(中)
进程注入分析(中)教程参考自《恶意代码分析实战》程序来自:http://www.nostarch.com/malware.htmLab 12-2 & Lab 12-3本节实验使用样本Lab12-02.exe。这个程序的目的是什么?从资源节加载恶意payload,然后注入到svchost.exe进程中运行。启动器恶意代码是如何隐藏执行的?使用PE注入的方式将恶意PE注入到...原创 2019-02-18 09:40:09 · 725 阅读 · 0 评论 -
物联网病毒原理-Mirai源码分析
1.概述Mirai病毒是物联网病毒的鼻祖,由于其具备了所有僵尸网络病毒的基本功能(爆破、C&C连接、DDoS攻击),后来的许多物联网病毒都是基于Mirai源码进行更改的。所以对研究Mirai的源码可以让我们对物联网病毒有个全面的了解。项目地址:https://github.com/jgamblin/Mirai-Source-Code2.攻击流程1.黑客在黑客服务器上运行load...原创 2019-01-09 11:29:49 · 13357 阅读 · 3 评论 -
病毒分析教程第七话--进程注入分析(上)
进程注入分析教程参考自《恶意代码分析实战》程序来自:http://www.nostarch.com/malware.htmLab 12-1本节实验使用样本Lab12-01.exe和Lab12-01.dll。在你运行恶意代码可执行文件时,会发生什么?Lab12-01.exe调用了CreateRemoteThread、WriteProcessMemory等函数,不难想象它进行了进程注入...原创 2019-02-14 15:36:19 · 1112 阅读 · 1 评论 -
py可执行文件反编译教程--exe转换py
python的便利性,使得如今许多软件开发者、黑客都开始使用python打包成exe的方式进行程序的发布,这类exe有个特点,就是可以使用反编译的方法得到程序的源码,是不是很神奇?我们接下来就开始学习如何反编译有python打包成的exe程序吧。PS:下面介绍的是使用比较广泛的pyinstaller的反编译方法。下面是一个由pyinstaller打包的勒索病毒,我们通过其图标,就可以知道它是py...原创 2019-03-06 14:44:28 · 21935 阅读 · 33 评论 -
病毒分析教程第七话--进程注入分析(下)
进程注入分析(中)教程参考自《恶意代码分析实战》程序来自:http://www.nostarch.com/malware.htmLab 12-4本节实验使用样本Lab12-04.exe。这个程序的目的是什么?从资源节加载恶意payload,然后注入到svchost.exe进程中运行。启动器恶意代码是如何隐藏执行的?使用PE注入的方式将恶意PE注入到svchost.exe中。...原创 2019-04-10 10:09:29 · 549 阅读 · 0 评论 -
DLL劫持原理&防御方法
1.原理介绍DLL劫持指的是,病毒通过一些手段来劫持或者替换正常的DLL,欺骗正常程序加载预先准备好的恶意DLL。如下图,LPK.dll是应用程序运行所需加载的DLL,该系统文件默认在C:\Windows\system32路径下,但由于windows优先搜索当前路径,所以当我们把恶意LPK.dll放在应用程序同一路径下,便会被程序成功加载,从而执行恶意操作。2.实例分析下面以APT32攻...原创 2019-05-18 14:35:01 · 24707 阅读 · 5 评论 -
PE节段MD5计算器
最近的驱动人生,由于采用了自增肥技术,导致每次生成的病毒文件,MD5不一样,导致杀软无法通过入库进行查杀,如下所示,这些文件都是驱动人生病毒变种,文件大小以及MD5都不相同。通过逆向分析,得知该病毒自增肥的原理是在最后一个节段加入垃圾数据,使得自身MD5不唯一,但是我们发现,这些变种文件的第一个节段.data段的MD5确几乎相同,那么我们就想到,可以通过节段MD5扫描的方式来查杀这些病毒文件。...原创 2019-05-23 21:11:59 · 575 阅读 · 0 评论 -
VMP2.0版本带壳调试教程
样本MD5:297DE74CB20A975EFAF20CD88FDDF270在逆向分析时遇到VMP壳总是令人头疼,因为要源文件完美地从VMP壳中脱出来非常的困难。相比于VMP完美脱壳,带壳调试要简单许多,而且已经能满足调试分析的需求了,VMP分1.0、2.0、3.0,2.0,现在市面上较多见的是2.0,调试方法也较简单,下面我们就来讲解下如何带壳调试VMP2.0。使用查壳工具可以得知样本加的是...原创 2019-06-29 10:16:00 · 7594 阅读 · 1 评论 -
鬼影病毒6.0分析
原理图文件名功能1001.exe主模块camhgzsswk.sys释放模块p2phook.sys释放模块的克隆p2pc.ini攻击模块配置文件safemon.dll注入攻击模块beep.sys持久化攻击模块主模块1001.exe[1]创建用户mima1,运行ipconfig进行掩饰。[2]释放病毒驱动sys文件。[3]将...原创 2019-06-29 12:13:37 · 3878 阅读 · 2 评论 -
静态扫描之ImpHash检测法
使用 Import Hashing 检测恶意软件翻译自:https://www.fireeye.com/blog/threat-research/2014/01/tracking-malware-import-hashing.html一种特殊的检测恶意软件的方法是检测其PE文件导入表(Imports),导入表就是一个包含所有调用函数(一般是调用自Windows系统各种DLL)的表。对于每个翻译 2018-01-10 13:55:14 · 2961 阅读 · 0 评论 -
病毒分析教程第六话--高级病毒分析(中)
高级病毒分析(中)教程参考自《恶意代码分析实战》程序来自:http://www.nostarch.com/malware.htmLab 11-2本节实验使用样本Lab11-02.dll和Lab11-02.ini。这个恶意DLL导出了什么?使用rundll32.exe安装这个恶意代码后,发生了什么?为了使这个恶意代码正确安装,Lab11-02.ini必须放置在何处?这个安装的恶意...原创 2018-12-10 19:37:26 · 937 阅读 · 0 评论 -
病毒分析教程第六话--高级病毒分析(下)
高级病毒分析(下)教程参考自《恶意代码分析实战》程序来自:http://www.nostarch.com/malware.htmLab 11-3本节实验使用样本Lab11-03.exe和Lab11-03.dll。使用基础的静态分析过程,你可以发现什么有趣的线索?在Lab11-03.exe包含跟“cisvc”相关的字符串,说明该程序应该会进行跟cisvc服务相关的操作,同时,该程序还...原创 2018-12-21 11:47:13 · 726 阅读 · 0 评论 -
病毒分析教程第三话--静态逆向分析(下)
PSLIST导出函数做了什么? 我们先在导出函数表双击PSLIST,即可查看PSLIST的函数结构,主要功能集中在三个红框中的call,sub_100036C3决定了第一个跳转,先来看看这个函数在做什么判断。 我们直接F5反汇编sub_100036C3,函数很短,就是做了一个判断,判断主机操作系统是否Win2000以上的,若不是,则退出函数(感觉这判断好无聊。。)。 OK,只要用户不...原创 2018-07-17 19:54:31 · 1242 阅读 · 0 评论 -
病毒分析教程第三话--静态逆向分析(上)
静态逆向分析教程参考自《恶意代码分析实战》 程序来自:http://www.nostarch.com/malware.htm静态特征分析可以说是分析一个病毒的前奏,属于比较简单的分析。分析环节包括:VT检测、编译时间、加壳信息、导入函数、可疑字符串,等等。Lab 1-1本节实验使用到两个样本Lab01-01.dll和Lab01-01.exe。 VT检测 L...原创 2018-07-16 19:48:26 · 1647 阅读 · 2 评论 -
病毒分析教程第一话--静态特征分析
Lab 1教程参考自《恶意代码分析实战》 程序来自:http://www.nostarch.com/malware.htmLab 1-1这个实验使用Lab01-01.exe和Lab01-01.dll文件,使用文章描述的工具和技术来获取关于这些文件的信息。问题1将文件上传至http://www.virustotal.com进行分析并查看报告。文件匹配到了已有的反病毒软件...原创 2018-06-21 14:54:16 · 4891 阅读 · 0 评论 -
初探进程注入
十种进程注入技术研究翻译自:https://www.endgame.com/blog/technical-blog/ten-process-injection-techniques-technical-survey-common-and-trending-process简介进程注入是一类各种恶意软件广泛使用的反检测技术,主要功能是在另一个进程的地址空间内运行自定义的代码。进...翻译 2018-02-11 10:09:17 · 2471 阅读 · 0 评论 -
静态扫描之Yara第四话--编写yara规则(3)
编写简单高效的yara规则(3)翻译自:https://www.bsk-consulting.de/2016/04/15/how-to-write-simple-but-sound-yara-rules-part-3/距离我写How to Write Simple but Sound Yara Rules – Part2 已经有一段时间了。从那之后,我改进了我的规则创建方法,新方法生成翻译 2018-01-09 14:52:37 · 1657 阅读 · 0 评论 -
静态扫描之Yara第三话--编写yara规则(2)
编写简单高效的yara规则(2)翻译自:https://www.bsk-consulting.de/2015/10/17/how-to-write-simple-but-sound-yara-rules-part-2/几个月前,我写了一篇”How to write simple but sound Yara rules“的博客。那篇博客所提到的技术和工具现在以及得到了改进,现在我就来详翻译 2018-01-08 12:40:32 · 1464 阅读 · 0 评论 -
静态扫描之Yara第二话--编写yara规则(1)
编写简单高效的yara规则(1)翻译自:https://www.bsk-consulting.de/2015/02/16/write-simple-sound-yara-rules/在过去的两年里,我根据IOC抓取到的样本,编写了约2000条Yara规则。 许多安全专家发现,Yara提供了一种简单有效的方法,可以根据样本中的字符串或字节序列编写自定义规则,这使得广大用户可以创建属于自己翻译 2018-01-05 23:44:53 · 3817 阅读 · 0 评论 -
静态扫描之Yara第一话--安装及使用Yara
Yara安装及使用 概述 Yara是一款用于识别恶意软件及对其行为进行分类的安全利器。Yara会根据我们自己编写的yara规则,来对可疑软件进行一个模式匹配,若可疑软件中的一些特征与我们的yara规则匹配上了,则可以初步认定可疑软件为恶意软件。 项目地址:https://github.com/VirusTotal/yara 下载及安装Linux: apt原创 2018-01-09 14:22:45 · 14635 阅读 · 4 评论 -
病毒分析教程第二话--动态行为分析
静态特征分析教程参考自《恶意代码分析实战》 程序来自:http://www.nostarch.com/malware.htm静态特征分析可以说是分析一个病毒的前奏,属于比较简单的分析。分析环节包括:VT检测、编译时间、加壳信息、导入函数、可疑字符串,等等。Lab 1-1本节实验使用到两个样本Lab01-01.dll和Lab01-01.exe。 VT检测 ...原创 2018-07-07 16:12:26 · 3981 阅读 · 0 评论 -
Windows Hook原理与实现
Windows Hook原理与实现教程参考自《逆向工程核心原理》1.概述Hook技术被广泛应用于安全的多个领域,比如杀毒软件的主动防御功能,涉及到对一些敏感API的监控,就需要对这些API进行Hook;窃取密码的木马病毒,为了接收键盘的输入,需要Hook键盘消息;甚至是Windows系统及一些应用程序,在打补丁时也需要用到Hook技术。接下来,我们就来学习Hook技术的原理...原创 2018-08-06 14:38:51 · 48063 阅读 · 4 评论 -
GhostPetya骷髅头病毒分析
这是主函数入口,看到如下红框,调用的函数的地址都是动态生成的,只能使用OD进行调试了。一路单步步过,没做什么操作,一开始我调试时老是跑飞,不知道病毒心代码的入口在哪,最后,才发现下图红框EnumWindowStationsW函数处是入口。EnumWindowStationsW的作用是为窗口注册触发一个回调函数,这里的回调函数是0x4364AC。...原创 2018-12-13 10:25:57 · 7277 阅读 · 2 评论 -
病毒分析教程第六话--高级病毒分析(上)
病毒分析教程第五话–动态调试分析(下)原创 2018-11-23 09:46:15 · 744 阅读 · 0 评论 -
病毒分析教程第五话--动态调试分析(下)
动态调试分析(下)教程参考自《恶意代码分析实战》程序来自:http://www.nostarch.com/malware.htmLab 9-3本节实验使用样本Lab09-03.exe、DLL1.dll、DLL2.dll、DLL3.dll。Lab09-03.exe导入了哪些DLL?我们用OD打开函数调用,发现Lab09-03.exe显性地导入了DLL1和DLL2、kernel32.d...原创 2018-09-20 09:18:58 · 672 阅读 · 0 评论 -
病毒分析教程第五话--动态调试分析(中)
动态调试分析(中)教程参考自《恶意代码分析实战》 程序来自:http://www.nostarch.com/malware.htm使用静态逆向分析技术只能分析大多数简单的恶意软件,若恶意软件经过加密或动态地加载调用函数,则无法对其进行分析,这时候就需要用到动态调试分析技术。PS:由于动态调试分析过程冗杂,所以本话使用问答的方式进行讲解。Lab 9-1本节实验使用样...原创 2018-09-18 11:01:22 · 582 阅读 · 2 评论 -
病毒分析教程第五话--动态调试分析(上)
s原创 2018-09-05 19:42:34 · 1431 阅读 · 0 评论 -
Windows服务原理&调试方法
s原创 2018-09-04 21:15:37 · 2903 阅读 · 2 评论 -
病毒分析教程第四话--高级静态逆向分析(下)
t原创 2018-08-15 17:21:51 · 1044 阅读 · 0 评论 -
病毒分析教程第四话--高级静态逆向分析(上)
静态逆向分析1(上)教程参考自《恶意代码分析实战》 程序来自:http://www.nostarch.com/malware.htmPS:由于静态逆向分析过程冗杂,所以本话使用问答的方式进行讲解。Lab 7-1本节实验使用样本Lab07-01.exe。 使用Exeinfo查壳,很幸运,没有加壳,是用VC6写的。 当计算机重启后,这个程序任何确保它继续运行(达到...原创 2018-08-07 11:23:09 · 1612 阅读 · 0 评论
分享