标题 简介 类型 公开时间
关联规则 关联知识 关联工具 关联文档 关联抓包
参考1(官网)
参考2
参考3
详情
[SAFE-ID: JIWO-2025-3525]   作者: ShYLie 发表于: [2025-03-28]

本文共 [1] 位读者顶过

前言概述

最近MCP服务技术非常火,很多行业都在使用MCP服务技术提升工作效率,MCP(Model Context Protocol,模型上下文协议),2024年11月底,由Anthropic推出的一种开放标准,旨在统一大型语言模型(LLM)与外部数据源和工具之间的通信协议,MCP服务技术的主要目的在于解决当前AI模型因数据孤岛限制而无法充分发挥潜力的难题,MCP使得AI应用能够安全地访问和操作本地及远程数据,为AI应用提供了连接万物的接口。

近日,OpenAI对Agent SDK进行了重大更新支持MCP服务,可以统一接口标准解锁无限工具,现在Agent可以快速集成网络搜索、专业分析、本地查询、网络追踪等各式各样的工具,这对于开发超复杂自动化智能体来说帮助巨大。

关于MCP的其他知识,有兴趣的可以去网上搜索,笔者就不介绍这个技术了,总之MCP 可以直接在AI与数据(包括本地数据和互联网数据)之间架起一座桥梁,通过MCP服务器和 MCP客户端,大家只要都遵循这套协议,就能实现“万物互联”,极大的提升效率。

逆向工程是一个复杂的过程,涉及到方方面面的知识点,但是我们同样可以使用MCP技术来提升我们的工作效率,今天笔者给大家分享一些逆向工具的MCP服务器插件,帮助大家提升一些工作效率。

工具分享

逆向工具MCP下载地址:

IDA MCP

https://github.com/MxIris-Reverse-Engineering/ida-mcp-server

https://github.com/taida957789/ida-mcp-server-plugin

https://github.com/fdrechsler/mcp-server-idapro

https://github.com/mrexodia/ida-pro-mcp

IDA MCP服务器提供的一系列工具,如下所示:

该服务器提供了一系列工具,允许AI助手执行以下操作:

  • 从特定地址获取字节数据
  • 获取反汇编代码
  • 获取反编译的伪代码
  • 查询函数名称
  • 获取段信息
  • 列出所有函数
  • 查找交叉引用
  • 获取导入/导出表
  • 获取入口点
  • 定义/取消定义函数
  • 获取各种数据类型(dword、word、byte、qword、float、double、string)
  • 获取二进制文件中的所有字符串[出自:jiwo.org]

可用的一些分析工具,如下所示:

可用的分析工具

IDA Pro MCP Server 提供以下工具:

  • get_bytes :获取指定地址的字节
  • get_disasm :获取指定地址的反汇编
  • get_decompiled func :获取包含指定地址的函数伪代码
  • get_function_name :获取指定地址的函数名
  • get_segments :获取所有段信息
  • get functions :获取二进制文件中的所有函数
  • get_xrefs_to :获取指定地址的所有交叉引用
  • get_imports :获取所有导入的函数
  • get_exports :获取所有导出的函数
  • get_entry_point :获取二进制文件的入口点
  • make_function :在指定地址创建函数
  • undefine_function:取消定义指定地址处的函数
  • get_dword_at :获取指定地址的dword
  • get_word_at :获取指定地址的单词
  • get_byte_at :获取指定地址处的字节
  • get_qword_at :获取指定地址的qword
  • get_float_at :获取指定地址的浮点数
  • get_double_at :获取指定地址的double
  • get_string_at:获取指定地址的字符串
  • get_string_list :获取二进制文件中的所有字符串
  • get_strings :获取二进制文件中的所有字符串(带地址)

可实践的一些功能,如下所示:

最佳实践

分析二进制文件时,建议遵循以下步骤:

  1. 检查入口点
  2. 分析导入表
  3. 审查字符串
  4. 跟踪关键 API调用
  5. 识别主要功能块
  6. 分析控制流
  7. 识别恶意行为
  8. 分析算法和加密例程
  9. 文档分析结果
  10. 使用先进的技术

看了介绍还是可以提升一些工作效率的,其他还有两个逆向工具的MCP

Radare MCP

https://github.com/radareorg/r2ai

Ghidra MCP

https://github.com/LaurieWired/GhidraMCP

国外安全研究人员利用Claude 3.7+IDA MCP对一个没有符号表的Windows驱动程序的CTF题进行自动化逆向工程,并重建对应的源代码,效果还可以。

逆向之前,如下所示:


自动化逆向之后,如下所示:


上面的符号表基本都自动还原了,同时还重构了相关的源代码,如下所示:


确实方便不少,不过这些都是基于CTF和CrackMe等样本,真实的恶意软件要比这些复杂的多,而且千变万化,使用不同的语言编写,使用不同的加密混淆方式,使用不同的攻击手法,还有各种各样不同的文件格式,各种系统底层原理与应用,安全对抗等,都需要不断地去学习进步,才能更好的实战。

相关工具的插件链接上面已经分享了,有兴趣的可以研究一下,利用MCP+Cluade提升逆向工程的效率,笔者没有去使用上面的这些工具,主要是笔者觉得这些工具和功能对我来说其实也没啥太大的用处,我自己都能很好的解决,更关键的原因,就是笔者没钱,贫穷限制了我,哈哈哈哈。

以前走行江湖的人都会有自己的武器,这些武器就像工具一样,就算是现好的工具,也需要你有足够的功力才能发挥出它的威力,哪怕AI是倚天剑和屠龙刀,也需要你有张无忌和谢逊的功力才行,如果你啥专业能力都没有,再厉害的工具,对你来说没啥用,当然最厉害的就是人剑(刀)合一了,做到手中无剑(刀),心中有剑(刀)。

MCP服务器技术未来会应用到各行各业,MCP大时代已经到来,但是就像笔者上面说过的,不管AI如何发展,如何厉害,最后还是一个工具,想要利用好这个工具,还得靠自身的专业能力,我们需要时刻关注最前沿的技术,明白这些最新的技术带来了哪些新的机遇与发展,如果能帮助我们的,去用就好了,能自动化的地方就自动化处理,能使用AI工具解决的问题,就用AI解决就行了,人只去做AI解决不了的问题就行了,专业的事交给专业的人办就行了。

AI的发展的终极目标并不是为了替代人,事实上AI也替代不了人,只是帮助人去更好的解决一些问题,让人能有更多的时间去学习和思考,这也是我常常说的,世界上最厉害的AI其实就是人,任何AI都无法替代人,人从出生、幼时、童年、青年、中年、老年的过程,这就是每个人的一生,在这一生当中,你可以去做任何你想做的事,会有无限可能,这不是任何AI可以替代的,AI技术现在发展真的越来越快了,我们要去学习如何使用它,让它为我们所有,帮助我们更好更快的解决问题,有好的工具为啥不用呢。

评论

暂无
发表评论
 返回顶部 
热度(1)
 关注微信