IDA密码算法自动化识别插件、脚本汇总
在逆向过程中,自动识别文件中存在的密码算法。原理上只有两条路
1、密码算法中的常量特征(常数、s盒等);
2、特定加密库的独有特征(字符串、指令流等)。
现有工具特点:
1、大多都是根据密码算法的常量特征进行识别,很少包含特定加密库的特征。
2、都是以反汇编工具(IDA/Ghidra)的插件、脚本形式存在。
3、都是基于静态分析,也就是只能识别静态特征。如果特征在运行时动态生成,则无能为力。
findcrypt系列
FindCrypt和FindCrypt2
最初的基础,2006年hex-rays的Ilfak发布。
77个特征,在源码的consts.cpp中,不方便修改,重新编译后才生效。
FindCrypt2使FindCrypt试用大端程序。
FindCrypt – Hex Rays
FindCrypt2 – Hex Rays
findcrypt3
HexRays 的 Ilfak 基于 findcrypt1 和 findcrypt2 开发的。
566个特征。特征库在源码中,不方便修改,重新编译后才生效。
https://github.com/HongThatCong/FindCrypt3
idapython_tools_findcrypt
使用python对findcrypt/findcrypt2的重现。
ida6.8-7.5均运行错误。作者只说了mac上7.x测试通过,具体版本没说。python版本也没说。
https://github.com/you0708/ida/tree/master/idapython_tools/findcrypt
FindCrypt - Ghidra
用java移植的findcrypt。
在findcrypt的77个特征库基础上增加到122个,位于database.d3v文件。格式未知,不好扩展。
https://github.com/d3v1l401/FindCrypt-Ghidra
Ghidra FindCrypt
说是对FindCrypt - Ghidra的重开发,但是比较两者对同一文件的扫描结果。没有FindCrypt - Ghidra扫出来的多。效果不好。
更好地呈现搜索的结果。会进行重命名并增加注释。
只支持9.2以后版本Ghidra。
https://github.com/TorgoTorgo/ghidra-findcrypt
Signsrch系列
IDA Signsrch
dll版本插件,最新2018年发布,只支持到ida7.1。
特征库xml形式。2279条特征。方便扩展。
特征库还包括其它一些字符串,如“IsDebuggerPresent”
GitHub - nihilus/IDA_Signsrch: IDA Signsrch
IDASignsrch
python版本插件,支持最新ida。
特征库真包含IDA Signsrch,多18个特征。
https://github.com/l4ys/idasignsrch
findcrypt-yara系列
findcrypt-yara
python插件。
需要给python安装yara,pip安装yara-python而不是yara,不然不兼容。
ida7.5支持。
特征库为yara,129条,方便扩展。
GitHub - polymorf/findcrypt-yara: IDA pro plugin to find crypto constants (and more)
总结
综上,推荐大家使用三个工具:
- findcrypt-yara
- IDASignsrch
- findcrypt3
最好是这三个工具都用一遍,虽然功能上有重合,但也各有特色,运行时间也都不太长。
———————————————————————————————————————————
欢迎关注我的微博:大雄_RE。专注软件逆向,分享最新的好文章、好工具,追踪行业大佬的研究成果。
IDA密码算法自动化识别插件、脚本汇总相关推荐
- 基于LLVM编译器的IDA自动结构体分析插件
引用 这篇文章旨在介绍一款对基于LLVM的retdec开源反编译器工具进行二次开发的IDA自动结构体识别插件实现原理分析 文章目录 引用 简介 源码分析 LLVM编译器简介 Retdec源码分析 Kl ...
- python商用_python实现sm2和sm4国密(国家商用密码)算法的示例
GMSSL模块介绍 GmSSL是一个开源的加密包的python实现,支持SM2/SM3/SM4等国密(国家商用密码)算法.项目采用对商业应用友好的类BSD开源许可证,开源且可以用于闭源的商业应用. 安 ...
- windows平台上的密码算法识别工具
2011-04-11 21:00:00| 分类: 网络与信息安全|举报|字号 订阅 下载LOFTER我的照片书 | 今天在看雪上面看到几个windows平台上的密码算法识别工具,我对它们 ...
- ISO/IEC国际标准组织收入的国产密码算法汇总
我国SM2和SM9数字签名算法正式成为ISO/IEC国际标准 发布日期:2017-11-17来源:国家密码管理局 11月3日,在第55次ISO/IEC联合技术委员会信息安全技术分委员会(SC27)德国 ...
- 基于PaddleOCR开发Auto.js Pro文字识别插件
目录 目的 准备工作 插件开发 1.项目结构对比 2.插件SDK集成 3.调整assets资源 4.删除无用的Activity文件 5.修改AndroidManifest.xml 6.修改Predic ...
- Vue 所有实用插件集合汇总
Vue 所有实用插件集合汇总 框架 element - 饿了么出品的Vue2的web UI工具套件 mint-ui - Vue 2的移动UI元素 iview - 基于 Vuejs 的开源 UI 组件库 ...
- OrionX Panel for Mac(ps摄影自动化工作流插件)支持ps2021 big sur11 汉化版
为大家分享最新汉化的OrionX Panel for Mac,这是一款ps摄影自动化工作流插件,小编亲测,适用于Photoshop 2021最新版,OrionX汉化版提供了蒙版.夜景.风光.极坐标鱼眼 ...
- 蓝奏云数值验证码识别,python调用虹鱼图灵识别插件,超高正确率
识别验证码一直是本人想要做的事情,一直在接触按键精灵,了解到有一个虹鱼图灵识别插件专门做验证码和图像识别,原理就是图片处理和制作字库识别,制作字库我一直觉得很麻烦,工程量太大.不管怎样,它能用能达到我 ...
- python自动化办公 51cto_利用python实现批量自动化运维脚本案例
本文为通过密码或密钥实现python批量自动化运维脚本案例分享,是老男孩linux培训 python课程教学案例内容,后续会分享多线程并发执行这个脚本的更高级的功能(http://oldboy.blo ...
最新文章
- (数据结构)前缀,后缀以及中缀表达式
- 一台微型计算机性能的主要参数及其意义,微型计算机的主要性能指标.ppt
- 转载:tcpdump抓包和Wireshark解包
- git status清空_本地删除文件后,git status会显示红色的那个文件。
- eclipse aop连接点joinpoint方法点不出来_(面试必备)你必须要懂的Spring-Aop
- TurboMail邮件服务器 V4.2.0 正式发布
- 声音存储空间计算公式_声音图像视频容量计算公式
- PHP祝福语,日常祝福语
- tp810c桥接_TP-Link双无线路由器开启WDS桥接设置步骤
- 蓝凌oa任意文件读取,RCE
- 用Python写个「倒计时」软件
- 提高RM-MEDA局部学习(IRM-MEDA)
- 分类任务中的类别不平衡问题
- 输入某学生的考试成绩,输出对应等级A、B 、C、 D、E
- 四、在Xilinx FPGA上使用Cortex M1 软核——固化Cortex-M1程序
- 自定义圆环形进度条实现
- 用了十年竟然都不对,Java、Rust、Go主流编程语言的哈希表比较
- JQuery测手速小游戏-遁地龙卷风
- Swagger2常用注解说明
- 蒙氏数学素材---乘法板及作业纸