如何用BurpCrypto破解复杂加密

9 人参与

前几天我在抓包时碰到一个登录页,前端居然用了 AES 再套一层 RSA,想想普通的 BurpSuite 编码器根本玩不转,我的脑子里立刻浮现出 BurpCrypto 这把“瑞士军刀”。于是,我把它装进 Burp,直接在插件的选项卡里开整,感受到了从“哎呀,这玩意儿怎么破”到“哇,这下爽了”的戏剧性转变。

上手 BurpCrypto 的第一步

下载完官方的 .jar,直接拖进 Burp 的扩展列表,点一下“启用”,插件立马出现一个新标签页。别小看这一步,我之前总是手动写脚本,结果常常踩坑——现在只要点几下就能把加密函数塞进去,省得去翻那一大堆 JS 源码。

玩转多 Processor,一次性搞定多种密钥

BurpCrypto 里最让我惊喜的,就是可以创建多个 Processor。比如这次的案例,我先新建一个 AES Processor,填入 mode=CBCkey=1234567890abcdef,再点“Add Processor”搞一个 RSA Processor,填上公钥和填充方式。保存后,两个 Processor 能并行跑,等于是把两层加密一步到位。

实战案例:双层加密的破解路径

我把抓到的密文复制进插件的“Ciphertext”框,点“Start Attack”。几秒钟后,结果列表里出现了两列:一列是 AES 解密后的中间文本,另一列是 RSA 解密后的最终明文。原本需要手动跑两遍脚本的工作,现在只用了“一杯咖啡的时间”。更爽的是,插件自带的“Get PlainText”功能直接把我最初的 Payload 给找回来了,省得去翻数据库。

小技巧:ExecJs 抢救奇葩加密

有些网站的加密根本不在常规库里,这时候我会把前端的核心函数复制出来,稍微改写成 Node 可执行的形式,粘进插件的 ExecJs 区。比如一次碰到的自定义 MD5 变体,我把 function md5_custom(s){…} 包装成 return md5_custom(input),直接塞进 BurpCrypto,结果秒出明文。说白了,ExecJs 就是给你一个“万能钥匙”,把不支持的算法也拉进来。

总之,BurpCrypto 把我从“只能盯着密文发呆”变成了“可以玩转各种加密组合的魔法师”。如果你也在测试中被复杂加密卡住,不妨试试这把刀——说不定下次你还能把它当成“炫酷的玩具”。

参与讨论

9 条评论
  • 小洋

    这插件真香,刚试了下AES+RSA组合秒解

    回复
  • 银河猎人

    我之前手动写Python脚本折腾半天,早看到就好了

    回复
  • 霜羽灵

    求问RSA公钥是从哪扒的?前端里找吗?

    回复
  • 喵星快递

    ExecJs那块太实用了,上次遇到个魔改SHA1就靠它救场

    回复
  • Voidshroud

    感觉还行,不过有些网站会动态混淆JS函数啊

    回复
  • 风语预言

    刚装上BurpCrypto,结果加载.jar报错了咋整?

    回复
  • 小雨滴儿

    双层加密现在越来越常见了,这工具确实省事

    回复
  • 四季如歌

    hhh 从发呆到魔法师说得太真实了😂

    回复
  • 厄洛斯爱箭

    能不能支持SM4国密算法?试了下好像不行

    回复