一款VMP内存DUMP及IAT修复工具

前言

加壳是恶意软件常用的技巧之一,随着黑客组织技术的不断成熟,越来越多的恶意软件家族都开始使用更高级的加壳方式,以逃避各种安全软件的检测,还有些恶意软件在代码中会使用各种多态变形、加密混淆、反调试、反反分析等技巧,来阻止安全分析人员对样本进行逆向分析,一般安全分析人员拿到这种类型的样本之后,都需要对样本进行脱壳去混淆处理,找到恶意软件的核心代码才能进行下一步详细的逆向分析,以便弄清恶意软件的攻击行为意图,以及给客户提供后续的安全解决方案,例如:是什么类型和家族的恶意软件?具体有哪些恶意行为?背后的黑客组织都在做什么?为什么安全软件没有即时检测出来?使用了什么免杀绕过技巧?最后如何清除该恶意软件?等等,这些都是需要对恶意软件进行详细的逆向分析才能解答,而且逆向分析恶意软件是必须要做的,深入研究之后,你会发现其实计算机病毒跟生物病毒其实是非常相似的,正如生物病毒一样,如果不去深入的研究逆向分析病毒样本,怎么知道这款病毒对人体有哪些伤害,开发出对应的治疗药物或者免疫疫苗。

恶意软件使用的常用的加壳软件类型,一般分为三种:压缩壳、加密壳、虚拟壳,针对这几种类型的壳,常用的加壳软件,如下:

压缩壳:ASPack、UPX、PeCompact、NsPack、FSG......

加密壳:EXECryptor、ACProtect、ASProtect、Armadillo、SE......

虚拟壳:VMProtect、Themida......

除了使用这些加壳工具对恶意软件进行加壳处理之外,为了防止安全软件厂商对这些常见的壳工具进行特征提取和自动化脱壳,一些黑客组织开发的恶意软件还会使用自定义的混淆、加密、多态等技术来逃避检测,其实不管遇到什么类型的壳,不管是已知的加壳工具,还是黑客组织自定义的,使用什么混淆加密技术,最终目的都是为了逃避安全软件的检测,增大安全分析人员的分析成本,这是一种对抗升级的过程,随着黑客组织攻击技术的不断提升,未来肯定会有更多使用更高端混淆加密技术的恶意软件家族出现,技术成熟的黑客组织不仅仅使用一些现有的成熟的加壳工具,还会选使用自研究的加壳技术,黑客在不断的进步,安全研究人员也需要不断的学习进步,才能应对未来的挑战。

工具

Night Sky勒索病毒加密后的文件后缀名nightsky,如下所示:

生成的勒索提示信息文件为NightSkyReadMe.hta,内容如下所示:

同时提供了与勒索病毒黑客组织联系方式,以及受害者企业数据暗网网站信息,如下所示:

Night Sky勒索病毒采用VMP加壳处理,如下所示:

一般脱壳的步骤:

1.寻找OEP

2.内存DUMP

3.修复IAT...

这里我直接给大家介绍一款VMP内存DUMP+IAT修复工具VMPDump,代码地址:https://github.com/0xnobody/vmpdump,运行该工具对Night Sky勒索病毒进行内存DUMP+IAT修复,如下所示:

DUMP+IAT修复Night Sky勒索病毒之后,就可以对该勒索病毒进行静态分析,如下所示:

该工具自动修复了DUMP后的文件IAT符号表,并保存到了一个新的Section区段里面,如下所示:

可以对比一下修复IAT之前与修复IAT之后的代码,如下所示:

这款工具是开源的 ,有兴趣的可以去阅读源代码,其实脱壳的方法和技巧有很多,我们要明白一点,脱壳并不是我们的目的,我们的目的是为了深入地分析和研究恶意软件,搞清楚恶意软件都做了什么?通过恶意软件去深入地理解背后的黑客组织最新的一些攻击活动,获取有价值的威胁情报,如何去检测、防御,提供相应的解决方案。

脱壳是一种分析方法或手段,通过上面的这款工具,我们就可以静态分析里面的核心代码,如果不脱壳,静态分析这些加壳混淆的样本会比较困难,在静态分析的过程中遇到问题,还可以动态进行跟踪调试,逆向分析就是静态与动态相结合的方式,分析的方法和技巧也是多种多样,并没有什么固定的招式,正所谓:无招胜有招,不管用什么招式,我们的目标就是为了通过恶意软件搞清楚背后的黑客组织的攻击目的是什么。

针对这些使用常见工具加壳的恶意软件,其实还是有很多办法处理的,因为研究的人也多,所以各种公开的方法、技巧、工具也有很多,如果是遇到一些黑客组织自己编写的加壳封装工具加的壳或者使用他们自研的一些多态混淆加密加壳技术,这类的恶意样本分析起来,反而会花费更多的时间和精力,不过不管使用什么方法进行混淆加壳处理,也都只是增大了安全分析人员的分析成本,并不能完全阻止安全分析人员对样本进行逆向分析,因为逆向分析的方法和技巧太多了,攻与防一直在持续对抗。

笔者之前的文章中提到的一样,恶意样本的逆向分析本身是一项非常复杂的工作,包含的内容太多了,需要学习的东西也很多,而且需要不断的学习,不断的分析和研究各种最新的样本,因为黑客组织也在不断的更新和改进自己的攻击样本和攻击手段,几年前谁也没想到勒索病毒会成为全球网络安全的最大安全威胁之一,几年前也没有挖矿病毒这种恶意软件,随着时代的发展,可能未来这种以破坏计算机系统的恶意软件会成为一种网络攻击的高级武器隐藏在系统当中,假如有一天发生网络安全战,黑客组织通过启动这些恶意软件对系统进行破坏,会直接影响到国家的各种基础设施。

通过深入的分析研究恶意软件,我们可以发现黑客组织在开发这些恶意软件的时候不仅仅会使用多种混淆、加壳、加密等方法来隐藏自己,还包含各种攻击手法、漏洞利用技巧、各种平台语言特征、文件格式等,需要安全分析人员去学习和理解各种知识,有时候捕获到一些高端黑客组织的攻击样本,可能需要花费安全分析人员几周的时间,甚至更长的时间,有些还需要多个经验丰富的安全分析专家进行协作分析,不过这样的高端样本其实也很难捕获,通过恶意软件进行攻击已经成为了全球各大黑客组织主要的收入来源以及网络攻击武器之一。

总结

安全行业经历了这几十年的发展,黑客攻击千变万化,但核心的东西一直没有变化,安全永远是人与人的对抗,有加壳,就有脱壳,有攻,就有防、矛与盾会一直存在,技术本身就是把双刃剑,安全就是一个不断对抗升级的过程,不管使用什么安全防护技术,黑客总是会想方设法的突破防御,达到攻击目标的目的,同样黑客不断使用什么攻击技术,安全人员也总能想出各种各样的办法去解决这些安全问题,这永远是一个持续对抗的过程,黑客组织在不断提升自己的安全能力,身为安全研究人员,更不能停止前进的步伐,不然拿什么跟那些拥有十几年安全技术研究经验,而且还在不断发展壮大的黑客组织较量?

打铁还需自身硬!安全研究人员需要自己不断努力学习,提升自己的安全能力,才能应对未来的各种安全挑战,加油,一起为祖国的网络安全事业奉献自己的一份微薄之力。

最近国际形势严峻,网络安全战一触即发,基于各种基础设施的保护,使得安全会变的越来越重要,对专业安全人才的需求也会越来越多,做安全,不忘初心,与时俱进,方得始终!

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3.0(五):Vue-Router 4.x详解

Vue-Router详解 vue-router教程 认识前端路由 路由实际上是网络工程中的一个术语 在架构一个网络的时候,常用到两个很重要的设备—路由器和交换机路由器实际上就是分配ip地址,并且维护着ip地址与电脑mac地址的映射关系通过映射关系,路由器…

Window环境下使用go编译grpc最新教程

网上的grpc教程都或多或少有些老或者有些问题,导致最后执行生成文件时会报很多错。这里给出个人实践出可执行的编译命令与碰到的报错与解决方法。(ps:本文代码按照煎鱼的教程编写:4.2 gRPC Client and Server - 跟煎鱼学 Go (gitbook.io)&…

【MySQL】_JDBC编程

目录 1. JDBC原理 2. 导入JDBC驱动包 3. 编写JDBC代码实现Insert 3.1 创建并初始化一个数据源 3.2 和数据库服务器建立连接 3.3 构造SQL语句 3.4 执行SQL语句 3.5 释放必要的资源 4. JDBC代码的优化 4.1 从控制台输入 4.2 避免SQL注入的SQL语句 5. 编写JDBC代码实现…

《Git 简易速速上手小册》第2章:理解版本控制(2024 最新版)

文章目录 2.1 本地仓库与版本历史2.1.1 基础知识讲解2.1.2 重点案例:回滚错误提交2.1.3 拓展案例 1:利用 git bisect 查找引入 bug 的提交2.1.4 拓展案例 2:合并提交历史 2.2 远程仓库的使用2.2.1 基础知识讲解2.2.2 重点案例:在 …

midnightsun-2018-flitbip:任意地址写

题目下载 启动脚本 启动脚本如下,没开启任何保护 #!/bin/bash qemu-system-x86_64 \-m 128M \-kernel ./bzImage \-initrd ./initrd \-nographic \-monitor /dev/null \-append "nokaslr root/dev/ram rw consolettyS0 oopspanic paneic1 quiet" 2>…

预测模型:MATLAB线性回归

1. 线性回归模型的基本原理 线性回归是统计学中用来预测连续变量之间关系的一种方法。它假设变量之间存在线性关系,可以通过一个或多个自变量(预测变量)来预测因变量(响应变量)的值。基本的线性回归模型可以表示为&…

备战蓝桥杯---动态规划(基础2)

本专题主要是介绍几个比较经典的题目: 假设我们令f[i]为前i个的最长不下降子序列,我们会发现难以转移方程很难写(因为我们不知道最后一个数)。 于是,我们令f[i]为以i结尾的最长不下降子序列,这样子我们就可…

香港倾斜模型3DTiles数据漫游

谷歌地球全香港地区倾斜摄影数据,通过工具转换成3DTiles格式,将这份数据完美加载到三维数字地球Cesium上进行完美呈现,打造香港地区三维倾斜数据覆盖,完美呈现香港城市壮美以及维多利亚港繁荣景象。再由12.5米高分辨率地形数据&am…

SpringCloud-Ribbon:负载均衡(基于客户端)

6. Ribbon:负载均衡(基于客户端) 6.1 负载均衡以及Ribbon Ribbon是什么? Spring Cloud Ribbon 是基于Netflix Ribbon 实现的一套客户端负载均衡的工具。简单的说,Ribbon 是 Netflix 发布的开源项目,主要功能是提供客户端的软件负…

【Java EE】----SpringBoot的日志文件

1.SpringBoot使用日志 先得到日志对象通过日志对象提供的方法进行打印 2.打印日志的信息 3.日志级别 作用: 可以筛选出重要的信息不同环境实现不同日志级别的需求 ⽇志的级别分为:(1-6级别从低到高) trace:微量&#…

SCI 1区论文:Segment anything in medical images(MedSAM)[文献阅读]

基本信息 标题:Segment anything in medical images中文标题:分割一切医学图像发表年份: 2024年1月期刊/会议: Nature Communications分区: SCI 1区IF:16.6作者: Jun Ma; Bo Wang(一作;通讯)单位:加拿大多…

排序算法---插入排序

原创不易,转载请注明出处。欢迎点赞收藏~ 插入排序是一种简单直观的排序算法,它的基本思想是将待排序的元素分为已排序和未排序两部分,每次从未排序部分中选择一个元素插入到已排序部分的合适位置,直到所有元素都插入到已排序部分…

微软技术专家带你学 AI|Azure OpenAI 服务

点击蓝字 关注我们 编辑:Alan Wang 排版:Rani Sun 微软技术专家带你学 AI 新的一年,为帮助开发者们在 Azure 上掌握人工智能,我们特别带来「微软技术专家带你学 AI」系列,通过4期的课程,带大家从机器学习的…

ES高可用架构涉及常用功能整理

ES高可用架构涉及常用功能整理 1. es的高可用系统架构和相关组件2. es的核心参数2.1 常规配置2.2 特殊优化配置2.2.1 数据分片按ip打散2.2.2 数据分片机架感知2.2.3 强制要求数据分片机架感知2.2.4 写入线程池优化2.2.5 分片balance优化2.2.6 限流控制器优化 3. es常用命令3.1 …

在屏蔽任何FRP环境下从零开始搭建安全的FRP内网穿透服务

背景 本人目前在境外某大学读博,校园网屏蔽了所有内网穿透的工具的数据包和IP访问,为了实现在家也能远程访问服务器,就不得不先开个学校VPN,再登陆。我们实验室还需要访问另一个大学的服务器,每次我都要去找另一个大学…

海外云手机——平台引流的重要媒介

随着互联网的飞速发展,跨境电商、短视频引流以及游戏行业等领域正经历着迅猛的更新换代。在这个信息爆炸的时代,流量成为至关重要的资源,而其中引流环节更是关乎业务成功的关键。海外云手机崭露头角,成为这一传播过程中的重要媒介…

消息中间件:Puslar、Kafka、RabbigMQ、ActiveMQ

消息队列 消息队列:它主要用来暂存生产者生产的消息,供后续其他消费者来消费。 它的功能主要有两个: 暂存(存储)队列(有序:先进先出 从目前互联网应用中使用消息队列的场景来看,…

【龙年大礼】| 2023中国开源年度报告!

【中国开源年度报告】由开源社从 2015 年发起,是国内首个结合多个开源社区、高校、媒体、风投、企业与个人,以纯志愿、非营利的理念和开源社区协作的模式,携手共创完成的开源研究报告。后来由于一些因素暂停,在 2018 年重启了这个…

Qt PCL学习(二):点云读取与保存

注意事项 版本一览:Qt 5.15.2 PCL 1.12.1 VTK 9.1.0前置内容:Qt PCL学习(一):环境搭建 0. 效果演示 1. pcl_open_save.pro QT core guigreaterThan(QT_MAJOR_VERSION, 4): QT widgets// 添加下行代码&#…

[word] word2019段落中创建纵横混排的方法图解教程 #知识分享#其他#职场发展

word2019段落中创建纵横混排的方法图解教程 有时候在word文档中需要让文字纵横混排,word2019正好为我们带来了纵横混排的功能了,今天我们就来给大家介绍一下word2019段落中创建纵横混排的方法。 步骤1:打开Word文档,选中需要纵向…