如何在VT上进行文件搜索

本文介绍VirusTotalIntelligence平台的高级搜索功能,包括如何通过hash、反病毒引擎检测、文件属性等进行精确搜索,以及如何使用Python脚本批量下载文件,适用于恶意软件分析、误报识别及安全研究。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Typora值得拥有啊,excel中写好的数据,复制粘贴到Typora中直接就是表格了,用Markdown语法打表格要人命,还好,Typora拯救了我

如何在VT上进行文件搜索

VirusTotal Intelligence 允许用户通过VT的数据库去搜索,以便鉴定匹配到某个规则的文件(反病毒引擎检测、元数据、提交文件名、文件格式结构属性、文件大小等)。可以说VirusTotal Intelligence是恶意软件界的“Google”。
为了方便使用,我们将搜索查询和修饰符分成了下面的类别,你可以在同一个查询中以任意数量组合他们,此外,你也可以使用AND,OR and NOT操作符去组合你的搜索。

通过hash检索文件

通过一个给定的md5,sha1 或 sha256搜索文件只需要将hash写入search box的主搜索框。举例,搜索文件,其md5为:12602de6659a356141e744bf569e7e56
如果你有一列hash(eg,从其他应用导出的),hash(md5,sha1 或 sha256)的类型与它们是否混合无关,你想要在同一时间搜索所有的hash,你应该在search box中选择Search for hashes,把hash粘贴到框中,点击搜索按钮即可。

根据反病毒引擎检测鉴别文件

search box允许用户指定全部或部分恶意软件家族名( Backdoor.Win32.PcClient!IK , Sality , Mydoom.R)或其他可以在反病毒引擎报告找到的文本。然而,这种类型的搜索将会查看文件所有的索引字段,不仅仅是关注反病毒引擎的检测结果。为了只聚焦反病毒引擎的检测结果(无论是哪个特性引擎产生的输出),你应该使用engines字首。举例:engines:"Trojan.Isbar"或engines:“zbot”。

搜索修饰符

下表详述了所有可以的搜索修饰符列表以及其可以作用的文件类型。详见。请注意,下面所有的修饰符都可以结合在一起使用,还可以和上面提到的搜索模式连接在一起使用。

修饰符范围描述
size:任何文件类型根据文件大小过滤文件。
type:任何文件类型根据文件类型过滤文件
fs:任何文件类型根据文件第一次提交到VT的时间过滤文件
ls:任何文件类型根据文件最后一次提交到VT的时间过滤文件
la:任何文件类型根据文件最后一次被VT分析的时间过滤文件
positives: p:任何文件类型根据被反病毒引擎检测出来的数量过滤文件
children_positives: cp:任何文件类型根据样本子文件被反病毒引擎检测出来的数量过滤文件
name:任何文件类型根据样本被提交到VT是的文件名过滤文件
tag:任何文件类型根据指定的标签过滤文件。Spam-email(一个附件或是垃圾邮件中的下载链接),signed(有签名的)
submissions: s:任何文件类型根据文件被提交到VT的次数过滤文件
sources:任何文件类型根据样本不同提交源的数量来过滤文件
submitter:任何文件类型根据第一次提交人的地区过滤文件。Submitter:CN
itw:任何文件类型返回从规定URL(包含提供的文本)下载的所有文件
metadata:任何文件类型根据元数据属性过滤文件
androguard:Android文件: APKs, ODEX, DEX, AXML.返回其Androguard输出包含提供的文字的所有Android文件。
lang:可执行文件(PE)和文档(DOC、DOCX、PPT、ODT等)对于PE文件而言,返回的文件至少包含指定文件的一种,对于文档文件,返回的文件必须匹配到提供的所有语言。
signature:PE ,Mach-O根据sigcheck字段过滤文件
pets:PE根据编译时间戳过滤PE文件
subspan:PE根据第一次提交时间和时间戳之间的不同过滤文件,单位是秒,eg:subspan:100-
segment:Mach-Os返回有指定名称段的exe文件
section:PE,ELFs,Mach-Os返回有指定名称或指定md5的节区。
imports:PE,ELFs,Mach-Os,IPAs,JARs,Java bytecode返回导入指定名称库的exe文件
exports:PE,ELFs,Java bytecode返回导出指定名称函数的exe文件
resource:PE返回具有至少一个与给定sha256,文件类型或资源类型匹配的资源的可移植可执行文件。
behaviour: behavior:PE,Android APKs返回所有动态行为包含所提供的行为的PE或Android APKs
snort:PCAPs返回Snort IDS生成给定警报或分类字符串的所有数据包捕获文件。
suricata:PCAPs返回suricata IDS生成给定警报或分类字符串的所有数据包捕获文件。
traffic:PCAPs在URLs的子集中搜索,包括主机名,IP。Eg:traffic:“google.com
similar-to:PE,PDFs,office文档,SWFs,RTFs返回结构上跟提供的文件相似的文件。Eg: similar-to:19b86fe81df05de2b4207e8eb0c3aa40.
ssdeep:任何文件类型返回所有与提供ssdeep哈希的文件类似的文件。
imphash:PE返回导入表hash跟指定导入表hash一致的PE文件,可以用来定义相同家族的文件。

文件相似性搜索

利用修饰符来进行文件相似性搜索

文件批量下载

VirusTotal Intelligence的web借口允许用户下载查询结果的前25,50或100的文件包。如果你希望下载其他数量的文件(包括超过100),你应该使用VirusTotal Intelligence 下载器。
VirusTotal Intelligence下载器是一个python脚本,使用VirusTotal Intelligence的编程接口下载查询结果top-n的文件到磁盘上。你可以下载VirusTotal Intelligence downloader
不要把个人下载器分享给第三方,这个下载器包含你自己的API key。每一个 VirusTotal Intelligence用户应该通过自己的账户下载自己的下载器。
下载器使用方法如下。(安装python2.7)

user@machine:~/$ python vt_intelligence_downloader.py -h
Usage: vt_intelligence_downloader.py [options] 

Allows you to download the top-n files returned by a givenVirusTotal
Intelligence search. Example:
python vt_intelligence_downloader.py -n 10 type:"peexe" positives:5+

Options:
  -h, --help            show this help message and exit
  -n NUMFILES, --numfiles=NUMFILES
                        number of files to download

如果你想要下载匹配到type:"peexe"的前500个文件,举例如下。
python vt_intelligence_downloader.py -n 500 'type:"peexe"'
同样的,如果你有一个包含200个hash的文件,你想要查询和下载这些hash对应的文件,只需要发出以下命令。
python vt_intelligence_downloader.py -n 200 /path/to/my_file_with_hashes.txt
hash可以是md5、sha1、sha256,可以把他们混合在一起,脚本改怎么解析。

搜索操作符(Search opeartors)

之前提到的所有搜索模式和搜索修饰符都可以通过搜索操作符连接到一起。查询语言支持某些布尔操作符(把查询的各个部分集合起来)。支持的布尔操作符有AND,OR和NOT

默认情况下,当您创建同时匹配多个字段的查询时,每个值都是用AND组合起来的。要使整个查询匹配,所有指定的值必须都匹配上。

AND操作符
搜索拥有XREF表且无效的PDF文件有两种操作。首先忽略使用布尔操作符,因为搜索修饰符默认是通过AND连接的。
type:pdf tag:invalid-xref
另一种操作是采用AND操作符
type:pdf AND tag:invalid-xref
OR操作符
我们可能有兴趣检索所有DLL或可执行文件,OR运算符可以帮助我们完成这项任务:
type:pedll OR type:peexe
NOT操作符
使用NOT来找到所有至少被一个反病毒引擎认为其家族名是“zbot”以及没有corrupt标签的。(corrupt:格式错误,不能在真实系统中执行)。
engines:zbot NOT tag:corrupt
用于分组的括号
使用括号可以创建更多复杂的查询。扩展之前的查询语句鉴定其他的银行恶意软件变种。
(engines:zbot OR engines:sinowal) NOT (tag:corrupt)

使用示例

本节详细介绍了用户过去要求的一些常见搜索,它们仅用作说明前几节中提供的所有信息如何粘合在一起的示例。
研究恶意pdf文件
一些学者曾经使用VT研究恶意pdf以及开发新的检测方法。研究为Static Detection of Malicious JavaScript-Bearing PDF Documents
为了尝试从VT上提取一些基于恶意pdf的研究,出现在我们思绪中的第一个想法就是做一些简单的事情。

type:pdf positives:5+

但这不是你唯一可以做的事情。pdf漏洞利用通常拥有一个无效的XREF表,因此,也可以写如下语句。

type:pdf tag:invalid-xref

其他标签也可以组合起来检索多水分的PDF,例如,让我们获取所有包含JavScript并包含自动操作的PDF(可能是为了启动以前的JavaScript)

type:pdf tag:autoaction tag:js-embedded

关于漏洞利用有一个指定的标签。

type:pdf tag:exploit

检索漏洞利用样本
上一个研究案例的最后一个例子以最简单的搜索漏洞形式结束。
tag:exploit
更有趣的是,您可以搜索标记有特定公共漏洞和暴露(CVE)标识符的示例
tag:cve-2012-0158

识别潜在的误报
误报是"错误"的另一种说法。应用于反病毒程序领域,当反病毒程序错误地把一个白文件标记成为恶意文件就是误报。误报似乎没有什么危害,但令人讨厌。
VT可用于识别潜在的误报。很多时候反病毒引擎检测出来的个数较少的有签名的PE文件可能是误报(不总是这样)。检测Symantec的误报。
tag:signed positives:3- symantec:infected
这些文件我们要检测两次去确定他们的确是恶意的。
只有Symantec检测出来的文件也可能是潜在的误报(虽然不总是这样)
positives:1 symantec:infected
我们当然也希望查看国家软件参考图书馆或在线知名软件集合中的所有文件。
(tag:nsrl OR tag:software-collection) AND symantec:infected AND positives:10-
文件唯一源的数量也可以很好地指示给定文件是否无害.通常,极其普遍的文件本质上是良性的。
sources:2000+ symantec:infected

基于数据挖掘的音乐推荐系统设计与实现 需要一个代码说明,不需要论文 采用python语言,django框架,mysql数据库开发 编程环境:pycharm,mysql8.0 系统分为前台+后台模式开发 网站前台: 用户注册, 登录 搜索音乐,音乐欣赏(可以在线进行播放) 用户登陆时选择相关感兴趣的音乐风格 音乐收藏 音乐推荐算法:(重点) 本课题需要大量用户行为(如播放记录、收藏列表)、音乐特征(如音频特征、歌曲元数据)等数据 (1)根据用户之间相似性或关联性,给一个用户推荐与其相似或有关联的其他用户所感兴趣的音乐; (2)根据音乐之间的相似性或关联性,给一个用户推荐与其感兴趣的音乐相似或有关联的其他音乐。 基于用户的推荐和基于物品的推荐 其中基于用户的推荐是基于用户的相似度找出相似相似用户,然后向目标用户推荐其相似用户喜欢的东西(和你类似的人也喜欢**东西); 而基于物品的推荐是基于物品的相似度找出相似的物品做推荐(喜欢该音乐的人还喜欢了**音乐); 管理员 管理员信息管理 注册用户管理,审核 音乐爬虫(爬虫方式爬取网站音乐数据) 音乐信息管理(上传歌曲MP3,以便前台播放) 音乐收藏管理 用户 用户资料修改 我的音乐收藏 完整前后端源码,部署后可正常运行! 环境说明 开发语言:python后端 python版本:3.7 数据库:mysql 5.7+ 数据库工具:Navicat11+ 开发软件:pycharm
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值