GitHub 30k星认证:400+工具覆盖编码/解码全场景需求
大家好,今天分享一款好用的编码/解码工具,在 Github 已获 30k+ star,有了它,逆向的时候几乎不用写代码来验证算法了。
CyberChef
CyberChef 是一款简单直观的 Web 应用,可在 Web 浏览器中执行各种“网络”操作。这些操作包括
XOR
和Base64
等简单编码、AES
、DES
和Blowfish
等更复杂的加密、创建二进制和十六进制转储、压缩和解压缩数据、计算哈希值和校验和、IPv6
和X.509
解析、更改字符编码等等。
这款工具的地址是:https://gchq.github.io/CyberChef/
它是一款开源工具,Github 地址是:https://github.com/gchq/CyberChef
先来看一下网站截图:
主要有四个窗口,最左侧是操作选择框,可以在左侧选择编码、解码、加密、解密、格式化、解析等等操作,中间的 Recipe 是有点类似于搭积木,可以对一个输出进行多种操作后生成一个输出,右侧是输入和输出框。
主要功能
- 时间格式化工具
- 非对称算法实现,包括证书转换,证书解析,PGP 加解密,
PGP
签名验签等等工具 - 对称算法实现,
AES
,DES
,RC2
,RC4
,SM4
,XOR
,JWT
签名验签等等工具 - 网络数据包解析,
TCP
、UDP
头解析,数据包解析,URL
编码解码,JA3
、JA4
解析等等工具 IPV6
,X.509
等复杂数据结构数据解析等等工具zlib
,zip
,tar
,LZ4
等等算法的压缩解压工具,在线就能压缩解压文件- 字符编码转换工具,在不同字符集之间转换文本数据
- 还有更多的工具就不一一写了,太多了
功能演示
例如我要验证一个算法:
- 获取当前的时间戳
- 将其格式化成
YYYY-MM-DD-HH-mm-ss
格式 - 将上面的字符串使用
00
进行填充,填充到30
字符 - 对其进行
sha1
计算 - 将结果转成
base64
编码
以上的流程只需要动动手拖动所需要的功能就可以,完全无需更改代码,如下图:
将所需的功能拖到中间,并且设置好对应的参数,即可在右侧的输出框输出结果,不仅支持随意禁用某个功能,还支持断点功能。
例如我想要看一下格式化后的字符串是不是我想要的时间字符串的格式,我可以在下一个功能上点一下暂停按钮,即可在输出框查看结果,并且打了断点的功能会变成红色。
官方功能
来看几个官方的功能演示:
将多行时间戳字符串解码成多个时间日期:
对十六进制数据解压并且输出结果:
解密并反汇编 shellcode:
自动解密,并且从字符串的开头提取 IV 并解密:
更多功能
并且它还支持多种功能:
- 可以直接输入和输出文件,最大支持 2GB 的文件,不过处理这么多数据可能要多等一会,小一点的文件应该没问题
- 每次对输入的修改都会自动输出对应的结果
- 使用多种技术自动检测编码,CTF 的小伙伴可能会比较喜欢
- 可以保存和加载流程,如果有特定的算法需要重复使用,可以选择保存起来,下次就可以直接使用了
- 完全不连网,离线使用,不用担心数据泄露或者其他安全文件
- 支持使用
docker
自行部署,部署教程请查看官方文档
总结
CyberChef 是一款功能丰富的工具,易于使用的操作列表加上 400+ 种工具,几乎可以满足绝大部分数据加解密或者编解码的需求,无论是逆向分析,还是开发加解密功能都可以派上用场,有类似需求的小伙伴可以尝试一下。
本文章首发于个人博客 LLLibra146’s blog
本文作者:LLLibra146
更多文章请关注公众号 (LLLibra146):
版权声明:本博客所有文章除特别声明外,均采用 © BY-NC-ND 许可协议。非商用转载请注明出处!严禁商业转载!