首页 > 编程知识 正文

常用的病毒检测方法有哪些(植物病毒检测)

时间:2023-05-03 07:44:31 阅读:70498 作者:2705

所有可疑文件的分析都是在虚拟机上进行的,虚拟机包含用于病毒分析的各种工具和软件。 (有关各种工具的详细信息,请参阅上一篇博客。 )根据可疑文件分析的一般流程,分析文件,得出分析结论。

在上传漏洞平台检查并分析可疑文件时,第一步是上传到开源病毒检查平台进行检查。 病毒库包含大量已提交的病毒文件,上载可疑文件后,检测平台会计算文件的md5或hash值,并将其与库中的文件进行比较。 如果md5或散列值匹配,则表示该可疑文件的行为。 常用的病毒检测平台有微步在线、virustotal。

微步在线成立于2015年,是目前我国威胁信息的领军企业,也是专门从事威胁信息领域的专业公司。 微步在线恶意文件的检测结果如下。

VirusTotal具有一个名为VirusTotal Uploader的shell扩展,可以方便地上传文件。 使用VirusTotal,所有操作都在internet浏览器中进行,而无需安装其他软件。 因此,VirusTotal的缺点是只能扫描提交的文件,而不能完全检查计算机。 此外,该网站目前只支持一个文件容量小于或等于30MB的文件。 VirusTotal还每15分钟更新一次病毒数据库,并实时提供最新的防病毒引擎以检测大部分威胁。 VirusTotal的检测结果如下。

开源病毒平台可以检测恶意文件的部分信息,但由于机器识别的局限性,很多恶意行为无法识别,需要后续步骤的分析。

加壳/脱壳操作是上传病毒检测平台检测到的文件,下一步操作是判断该可疑文件是否加壳。 添加shell的文件不仅无法被杀毒软件识别,而且也无法通过静态动态分析手段进行分析,因此使用PEiD检查是否添加了可疑文件shell,如果识别为未添加,则继续向下分析,如果识别为shell,则退出工具

脱壳工具通常在命令行操作。 常用命令如下:

upx.exeo别名. exed当前名称. exe

-o :表示输出;

-o别名. exe :表示别名. exe作为脱壳后的输出;

-d当前名称. exe :表示将当前名称. exe作为脱壳前的输入。

静态分析静态分析是指在不运行可疑文件时使用各种静态分析工具分析文件。 静态分析工具包括PEview、从属观察器和谦虚的胡萝卜pro。

具体分析时,首先使用PEview查看可疑文件的文件结构、编码时间等相关信息:

四个最基本分段的基本含义如下:

. text:该段位程序的代码段分为代码段和可读执行;

. iddata、 rdata、 data段

可以从命名中看到,这三个段都是存储特殊数据的段,根据PE文件的格式来区分数据段中不同类型的数据;

.谦虚的胡萝卜ta段:这里集中了所有的外部函数地址,代码中首先跳转到该地址,然后执行。 PE文件加载器首先获取真函数地址以修改谦虚胡萝卜ta段的函数地址;

. rdata :资源数据段,程序使用的任何资源都在这里。 资源包括自己打包的和开发工具自动打包的;

. data段:该段存储程序的全局数据、全局常数等

继续分析时,使用Dependency Walker查看可疑文件的从属dll和dll相关函数

根据得到的函数名称,可以分析可疑文件中可能存在的恶意行为。 一般函数及其可能的恶意行为如下。

创建文件/写入文件/复制文件/删除目录:

写、复制、删除文件操作,可能存在修改、删除、复制系统关键信息的行为;

InternetOpen/InternetOpenUrl/InternetReadFile:打开并读取某个网页操作,可能存在打开一个网络里面的URL然后在读取一些东西下来本地行为;

GetCommandLine:获取一个输入参数,一般出现这个函数,该可疑文件很大程度上可能是一个后门程序;

GetCommandLineA/CreateMute/CreateThread:创建一个互斥量和线程,可能存在恶意程序相互捆绑的行为;

CreateService:创建一个服务,可能存在创建恶意服务的行为。

查看完基本静态信息之后,使用虚心的胡萝卜 pro来查看更多的汇编代码和字符串信息,例如下图:

从字符串中可以看出可疑文件连接网络地址的情况,创建某些文件的位置等情况;

另外使用虚心的胡萝卜可以查看该可疑文件详细的汇编代码,虚心的胡萝卜载入文件时一般定位在主函数的位置,之后可以根据虚心的胡萝卜自带的函数调用图(如下图,红色线代表不跳转,绿色代表跳转)和call指令来进行函数的分析。使用虚心的胡萝卜来进行分析时需要对汇编指令和c语言程序有一定的熟悉,例如某些固定的汇编的代码可能代表c语言的printf函数、赋值操作、函数返回地址等,另外还需熟知汇编语言中的各类跳转指令,在何种情况下进行跳转等。

动态分析

静态分析能得到的信息有限,静态分析结束之后要进行动态分析,所谓动态分析就是在运行可疑文件时查看存在的现象,注册列表值的变化、内存地址的变化等,动态分析工具有Process Monitor、Process explorer、Regshot、apateDNS、Wireshark、ollydbg.

首先在文件运行之前打开Process Monitor、Process explorer、apateDNS、Wireshark分别监测可疑文件运行时的进行和网络连接情况;之后打开Regshot做一次注册列表快照;然后运行可疑文件,观察、记录可疑文件运行时的现象,运行完之后再使用Regshot做一次注册列表快照。

使用Process Monitor、Process explorer可以清晰地了解可以文件运行时所做的操作,包括创建、修改文件,创建、删除、修改注册列表的值等;apateDNS、Wireshark可以记录可疑文件运行时的网络连接情况;而Regshot则详细记录下注册列表键、值的变化,为全面清除恶意文件提供依据。

Ollydbg一般是配合虚心的胡萝卜一起使用的,虚心的胡萝卜可以了解可疑文件的整体函数调用,而虚心的胡萝卜可以通过下断点、单步步入、单步步过等方式一步步动态观察可疑文件运行时内存地址的变化,也可以在遇到函数跳转时清楚地了解函数的跳转过程,使用ollydbg分析完之后可以大致反汇编出可疑文件的伪代码,文件行为也已经了解清楚。

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。