VirusTotal 今日正式推出 “VirusTotal 新增端点”(Virustotal’s New Endpoint)。该端点可接收代码查询请求,并向恶意软件分析师返回代码功能描述,是其 Code Insight 平台的一项强力新增功能。
此新增 API 端点旨在简化逆向工程流程,它会预先分析反汇编或反编译后的代码,并重点标注对恶意软件追踪人员最关键的行为特征。
早期使用者反馈称,该端点大幅缩短了人工分类筛查时间,使分析师得以将精力集中在复杂的调查环节,而非重复性的文档记录工作上。
核心要点
- “analyze-binary” 端点会返回由 AI 生成的代码片段摘要及详细功能描述。
- 该端点可从分析师认可的历史数据中学习,逐步优化分析结果。
- 集成 VT-IDA 插件后,可在 IDA Pro(一款专业逆向工程工具)中创建持久化的 CodeInsight 笔记本(CodeInsight Notebook)。
新增端点概述
这款新增端点的 API 地址为 “api/v3/codeinsights/analyse-binary”,可接收包含 Base64 编码代码块及上下文元数据的 JSON 格式请求体。请求体参数如下:
payload = {
"code": code_base64, // Base64编码的代码块
"code_type": "disassembled" | "decompiled", // 代码类型:反汇编代码或反编译代码
"history": [ // 历史分析记录(可选)
{
"request": code_base64, // 历史请求中的Base64编码代码
"response": {
"summary": text, // 历史响应中的代码摘要
"description": text // 历史响应中的代码详细描述
}
}
]
}
端点接收到请求后,会返回两个核心字段:
- 功能概述:简要说明代码功能,例如 “网络输入输出程序” 或 “反调试逻辑”;
- 详细解析:对代码的控制流、API 调用、字符串引用及潜在混淆技术进行全面拆解。
IDA Pro 操作界面(IDA View-A)
∷ 分组节点(Group nodes) 重命名(Rename N)
列出交叉引用(List cross references from…) 编辑函数(Edit function…)
文本视图(Text view) 邻近浏览器(Proximity browser) 隐藏(Hide)
打印寄存器值(Print register value) 添加断点(Add breakpoint) 取消定义(Undefine F2 U)
引用图表(Xrefs graph to…/ Xrefs graph from…)
Lumina VirusTotal Code Insight(Code insight)
字体设置(Font..) 搜索字节(Search for bytes)
搜索相似代码(Search for similar code) 精确搜索相似代码(Search for similar code (strict))
搜索相似函数(Search for similar functions)
列出交叉引用(List cross references from…) 编辑函数(Edit function…)
文本视图(Text view) 邻近浏览器(Proximity browser) 隐藏(Hide)
打印寄存器值(Print register value) 添加断点(Add breakpoint) 取消定义(Undefine F2 U)
引用图表(Xrefs graph to…/ Xrefs graph from…)
Lumina VirusTotal Code Insight(Code insight)
字体设置(Font..) 搜索字节(Search for bytes)
搜索相似代码(Search for similar code) 精确搜索相似代码(Search for similar code (strict))
搜索相似函数(Search for similar functions)
VirusTotal Code Insight 笔记本(Code Insight Notebook)
分析函数信息 | 详情 |
---|---|
函数地址 | 0x40b118 |
函数名称 | sub_408118(逆向工程中默认的函数命名,代表 “地址 0x408118 处的子函数”) |
代码类型 | 反汇编代码(disassembled) |
摘要(Summary)
函数 “sub_40B118” 是一个综合性的反分析程序。它会系统性地检测 [分析环境特征,原文此处省略具体检测项],此外还包含基于计时机制的反沙箱逻辑。若任何一项反分析检测结果为阳性(表明代码正运行于分析环境中),该函数会调用 “ExitProcess_0” 终止当前进程。这些检测操作的执行通常由全局配置标志控制。
描述(Description)
- 函数 “sub_40B118” 作为核心反分析程序,首先将寄存器 “ebx” 的值存入栈中,[原文此处省略初始化步骤描述],随后执行一系列检测操作,每项操作通常由一个全局标志控制。对于每项检测,函数会先将全局内存地址(如 “ds:off_40D1D4”“ds:off_40D1B0”)处的字节值与 1 进行比较。若该字节值为 [原文此处省略比较结果对应的逻辑,推测为 “1”],则执行对应检测;
- [原文此处省略步骤 2-5 的具体描述];
- 调用函数 “sub_4052C0”(地址:0x40b123)检测沙箱(Sandbox),若检测到沙箱,则终止进程(地址范围:0x40b128-0x40b12e);
- 调用函数 “sub_405168”(地址:0x40b1d)检测 Visual C++[调试环境,推测],若检测到,则 [执行终止逻辑,原文此处省略](地址范围:0x40b42-0x40b48);
- 调用函数 “sub_4051CC”(地址:0x40b171)检测 VirtualBox(虚拟机软件),若检测到,则终止进程(地址范围:0x40b176-0x40b17c);
- 调用函数 “sub_405310”(地址:0x40b18b)检测 “dbghelp.dll”(调试辅助动态链接库,常用于调试器),若检测到,则终止进程;
- 调用函数 “sub_4054A4”(地址:0x40b1a5)通过检查 “Productid”(产品标识)检测 Anubis Sandbox(一款沙箱分析工具),若检测到,则终止进程(地址范围:0x40b1aa-0x40b1b0);
- 调用函数 “sub_4053EC”(地址:0x40b1bf)通过检查 “Productid” 检测 CWSandbox(一款沙箱分析工具),若检测到,则终止进程;
- [原文此处省略步骤 9-10 的具体描述];
- 调用函数 “sub_405334”(地址:0x40b1d9)通过检查 “Productid” 检测 Joe Sandbox(一款沙箱分析工具),若检测到,则终止进程;
- 调用函数 “sub_40555C”(地址:0x40b1f3)通过检查用户名检测沙箱 / 虚拟机,若检测到,则终止进程。
分析操作选项
评估分析结果(Evaluate analysis):确认(Accept) 丢弃(Discard) 刷新(Refresh)
调用 Code Insight(Ask CI) 自动注释(Autocomment) 加载导出(Load Export)
调用 Code Insight(Ask CI) 自动注释(Autocomment) 加载导出(Load Export)
[此处显示代码地址及相关数据:35.96% (1800, 1642) (179, 162) 0000A5D9 0040B1D9: sub_40B118+C1]
插件新版本特性
通过在 “history” 数组中关联过往请求,该服务可构建上下文模型,并在分析师的反复使用中持续学习。
例如,VirusTotal 表示,若初始查询标记出某个自定义 XOR 加密程序,后续分析会整合这一知识,更精准地识别类似代码模式。
这种 “关联学习” 能力是 Code Insight 区别于独立静态分析工具的核心优势 —— 该端点能有效 “记忆” 用户反馈,并基于反馈优化分析结果。
与 IDA Pro 的集成
为验证实际应用价值,VirusTotal 对其 VT-IDA 插件进行了更新,使其可在 IDA Pro 界面内直接调用上述新增端点。
如今,恶意软件分析师可在反汇编或反编译视图中选中任意函数,调用该插件,无需离开逆向工程环境即可即时获取分析结果。核心集成特性包括:
- 分析师可认可或修改分析摘要与描述,并补充修正意见或额外上下文信息;
- 经认可的分析结果会存入笔记本,且该笔记本可跨会话持久化保存,确保机构知识得以留存;
- 每次调用插件时,都会向端点发送完整的笔记本历史记录,使端点能逐步生成更丰富、更精准的分析结果。
该端点标志着 “基于大语言模型(LLM)的人工智能” 与传统逆向工程工具的深度融合取得重大突破。
通过自动化代码块的初步审查,并从分析师反馈中迭代学习,Code Insight 减少了重复性工作,加速了威胁发现进程。
目前该端点虽处于试用阶段,但已收到安全社区的广泛积极反馈。
随着 VirusTotal 对这项服务的持续优化,分析师有望获得更广泛的格式支持、更高的分析准确性及更深层次的上下文感知能力 —— 所有这些改进,都旨在助力防御者应对不断演变的恶意软件威胁格局。
关键术语补充说明
- Endpoint(端点):此处指 API 端点,即应用程序编程接口(API)中用于接收特定请求并返回对应数据的具体地址,是不同系统间数据交互的 “接口”。
- Reverse Engineering(逆向工程):对已编译的软件或代码进行反汇编、反编译等操作,还原其逻辑结构与功能,常用于恶意软件分析或软件兼容性研究。
- Disassembled Code(反汇编代码):将机器语言(二进制代码)转换为汇编语言的代码形式,保留代码执行逻辑但可读性较低,是逆向工程的基础操作之一。
- Decompiled Code(反编译代码):将机器语言或汇编语言进一步转换为高级编程语言(如 C、Python)的代码形式,可读性更高,更易理解代码功能。
- Base64 Encoding(Base64 编码):一种将二进制数据转换为 ASCII 字符串的编码方式,常用于在文本格式(如 JSON)中传输二进制数据(如代码、文件)。
- IDA Pro:由 Hex-Rays 公司开发的专业逆向工程工具,广泛应用于恶意软件分析、漏洞研究等领域,支持多平台代码的反汇编与反编译。
红客联盟·免责声明
1. 本版块文章内容及资料部分来源于网络,不代表本站观点,不对其真实性负责,也不构成任何建议。
2. 部分内容由网友自主投稿、编辑整理上传,本站仅提供交流平台,不为该类内容的版权负责。
3. 本版块提供的信息仅作参考,不保证信息的准确性、有效性、及时性和完整性。
4. 若您发现本版块有侵犯您知识产权的内容,请及时与我们联系,我们会尽快修改或删除。
5. 使用者违规、不可抗力(如黑客攻击)或第三方擅自转载引发的争议,联盟不承担责任。
6. 联盟可修订本声明,官网发布即生效,继续使用视为接受新条款。
1. 本版块文章内容及资料部分来源于网络,不代表本站观点,不对其真实性负责,也不构成任何建议。
2. 部分内容由网友自主投稿、编辑整理上传,本站仅提供交流平台,不为该类内容的版权负责。
3. 本版块提供的信息仅作参考,不保证信息的准确性、有效性、及时性和完整性。
4. 若您发现本版块有侵犯您知识产权的内容,请及时与我们联系,我们会尽快修改或删除。
5. 使用者违规、不可抗力(如黑客攻击)或第三方擅自转载引发的争议,联盟不承担责任。
6. 联盟可修订本声明,官网发布即生效,继续使用视为接受新条款。
联系我们:admin@chnhonker.com