寻找二进制中的藏宝图 — Karta IDA插件

admin 2024年1月28日19:59:22评论15 views字数 996阅读3分19秒阅读模式

🗺️ 寻找二进制中的藏宝图 — Karta IDA插件 🌟

项目介绍

在猎奇的逆向工程世界里,我们经常需要面对一个巨大未知的二进制文件海洋。但是,有了“Karta”(俄语中的“地图”),一款IDA Python插件,我们就能够在这片海洋中找到开源代码的宝藏!这款神奇的插件可以识别并匹配给定二进制文件中的开源库,使用一种独特的技术,即使是超过200,000个函数的巨型二进制文件,它也几乎不会影响到整体性能。

特点和优势

  • 性能超群:Karta的匹配算法是基于位置的,侧重于定位不同编译文件,并根据文件内原始顺序匹配各个函数。这样,匹配依赖于K(开源中的函数数)而不是N(二进制大小),通常N远大于K,因此获得显著的性能提升。
  • 适用广泛:Karta目前支持超过10个开源库,包括OpenSSL、Libpng、Libjpeg、NetSNMP、zlib等等。
  • 易用性:提供预制的*.JSON配置文件,并且有详细的文档和安装说明。

应用场景

Karta适用于以下三种主要场景:

  1. 在寻找有用的1-Day漏洞时,识别使用的开源列表及其版本。
  2. 匹配支持的开源库的符号,帮助逆向工程恶意软件。
  3. 在寻找专有代码中的0-Days时,帮助逆向工程二进制文件或固件。

安装和使用方法

  • Python 3 & IDA >= 7.4: 只需克隆仓库并运行 setup.py install 脚本即可。
  • Python 2 & IDA < 7.4: 对于IDA 7.4或更新版本,以及Python 3,Karta正在积极开发。Python 2和旧版IDA仍然可以使用发行版v1.2.0。

使用例子

  • Identifier: Karta的标识符插件可以识别二进制文件中存在的开源库,并指纹识别其版本。
  • Matcher: 在识别使用的开源库后,可以为特定的库(例如libpng版本1.2.29)编译.JSON配置文件。一旦编译,Karta将自动尝试在加载的二进制文件中匹配开源的函数(符号)。

总结

Karta是一个强大的IDA插件,适用于逆向工程师和安全研究人员,它可以大幅度提高识别和匹配二进制文件中的开源代码库的效率。无论你是在寻找已知漏洞,还是希望在未知的固件中探索0-Days,Karta都是你的得力助手。

#标签 #Karta #IDA #逆向工程 #插件 #开源库匹配 #二进制分析

🔗 项目地址:GitHub - CheckPointSW/Karta

原文始发于微信公众号(二进制磨剑):寻找二进制中的藏宝图 — Karta IDA插件

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年1月28日19:59:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   寻找二进制中的藏宝图 — Karta IDA插件http://cn-sec.com/archives/2438905.html

发表评论

匿名网友 填写信息