区段或附加数据的熵值高达 7.9,说明了里面有大量的随机数据。这些随机数据很可能是加密过的指令,在运行时才会被解开。
恶意软件分析——逆向工具介绍
病毒分析除了需要扎实的经验,对于工具的利用也要熟能生巧。以下是病毒分析中经常用到的有效手段:
一、环境配置。
虚拟机网络模式:仅主机模式。
管理员权限运行恶意软件样本。
虚拟机推荐:FLARE VM
是一款以Windows为基础的免费开源的虚拟机,专为逆向分析工程师、恶意软件分析研究员、事件响应人员、安全取证人员以及渗透测试者设计。
二、工具利用
使用ProcessHacker查看进程的权限。
使用ProcessExplorer查看进程的父进程。防止恶意软件切断进程溯源链躲避主动防御。
进程背景色为蓝色表示进程和ProcessExplorer运行在同一系统用户环境下。
进程背景色为紫色表示进程中代码可能被压缩或者加密。
使用everything可以清楚看到临近时间文件的修改与变动。防止恶意软件篡改系统文件,比如hosts文件。这种方法比ProcessMonitor更加清晰直观。
API monitor,最强大的API监控工具。对待rootkit有明显作用,通过筛选过滤规则可以清晰看到进程调用API过程。
一般过滤规则如下。通常都会在捕捉到的API中筛选定位到进程的主模块,不然会有大量系统模块的函数调用。
区段捕捉
区段或附加数据的熵值高达 7.9,说明了里面有大量的随机数据。这些随机数据很可能是加密过的指令,在运行时才会被解开。
一般程序区段入口点在rsrc资源段或者reloc重定向段,并且这两个区段具有可执行属性,那么程序很有可能被感染型病毒感染。
二、OD和IDA双向配合进行分析
run跟踪是记录程序运行过哪些指令的(这些指令可能很多,比如递归查看一个call运行的所有指令),想run跟踪的记录,要先打开run跟踪。
跟踪一个call运行了哪些代码,有递归所有call和只对一层call的方法,操作方式分别是CTRL+F11和CTRL+F12。
先在call下断点,再再call下面一行下断点,运行程序,让程序在call处断下来,点击CTRL+F11,等待一会儿,可能会有十几秒,程序会停在call下面一行下断点处,查看run trace窗口,记录了这个call运行的所有指令。
当然也可以在RUN跟踪的时候设置中断的条件。
指定某寄存器的值。
bp CreateFileA,[STRING[esp+4]]“c:\1212.txt”
指定API某一参数时断下。
如果是UNICODE,就[UNICODE[ESP+4]]“c:\1212.txt”
相关文章
- C#数据Encrypt加密Encrypt解密的算法使用--非对称算法RSACryptoServiceProvider
- 【导入导出】sqlldr 导入含有内嵌换行符的数据
- 数据加密三板斧
- 优志愿前端数据加密破解-python
- pandas 左右边界切割 用merge join和concat合并Pandas中的数据
- MessageDigest来实现数据加密
- 详解6大安全场景:移动app安全、防DDoS、防入侵、数据加密、业务反欺诈、内容安全
- 通过客户端加密保护数据
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇二:WinForm开发扇形图统计和Excel数据导出
- 在DataGridView控件中验证数据输入
- SAP OData V4 模型支持的一些数据绑定模式
- ML之回归预测之Lasso:利用Lasso算法对红酒品质wine数据集实现红酒口感评分预测(实数值评分预测)
- DL之LiR&DNN&CNN:利用LiR、DNN、CNN算法对MNIST手写数字图片(csv)识别数据集实现(10)分类预测
- 〖Python 数据库开发实战 - MySQL篇㊱〗- 综合案例 - 关于数据表 password 字段的数据加密
- 【大数据&AI人工智能】图灵:计算机器与智能 - 经典AI论文系列
- php接口数据加密、解密、验证签名代码实例
- PDO exec 执行时出错后如果修改数据会被还原?
- 主机安全——主机上的病毒检测、漏洞防护,权限管理。目标是保护主机的数据存储和计算安全
- 【AI with ML】第 9 章 :了解序列和时间序列数据
- 自动驾驶数据采集和分析平台--ADAS Logger