CyberChef:数据加解密与分析的终极瑞士军刀
【免费下载链接】CyberChefThe Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis项目地址: https://gitcode.com/GitHub_Trending/cy/CyberChef
面对一堆看不懂的 Base64 编码串、一个打不开的加密文件、一屏滚不完的日志,你是不是也想过——能不能有个网页直接帮我全处理了?CyberChef 就是干这个的:一款把加解密、编码转换、数据分析装进同一个网页的开源工具,安全分析师用它排障,初级开发者用它快速上手数据处理,打开浏览器拖一拖就能玩。
一句话讲清它是什么:加解密与数据分析的瑞士军刀
CyberChef 由英国 GCHQ 维护,采用 Apache-2.0 开源协议,定位就是官方那句口号——"The Cyber Swiss Army Knife"(网络瑞士军刀)。它把 500 多种操作做成一个个可拼接的模块,你不需要懂每种算法的细节,按数据流转的顺序把它们串起来,结果就会实时出现在屏幕右边。
核心能力,按「一条数据流转链路」拆开讲
我们不看功能清单,直接走一遍一条典型的处理链路:原始数据怎么进来、中间经过几步加工、关键信息怎么出去。
把原始数据喂进去
第一步是把数据弄进来:一段文字、一串十六进制、甚至一个文件或图片,都可以贴/传进输入框。如果拿到的数据本身是编码过的,第一刀通常是解码,比如用 From Base64 把编码串还原成原始内容,实现就在 src/core/operations/FromBase64.mjs。
中间转几刀:把加解密操作串成配方
这是 CyberChef 最核心的设计——把多个操作叠成一个"配方",上一步的输出自动变成下一步的输入,而且每一步的中间结果都能实时看到。Base64 解码、AES 加解密、压缩解压可以随意穿插组合,其中 AES 加解密的实现在 src/core/operations/AESEncrypt.mjs;想顺手算个哈希,还有统一的哈希库 src/core/lib/Hash.mjs 兜底。
把关键信息抠出来
最后一步往往不是要全部数据,而是只要里面的关键信息。比如从一大段日志里把所有 IPv4/IPv6 地址挑出来并自动排序,只需要加一个 "Extract IP addresses" 操作,实现见 src/core/operations/ExtractIPAddresses.mjs;提取邮箱、URL 也是同样的套路。
5 分钟跑通全流程
把环境搭起来
git clone https://gitcode.com/GitHub_Trending/cy/CyberChef cd CyberChef npm install npm start注意需要 Node.js 24 及以上版本(仓库要求 24~26),装完依赖后npm start会直接起本地开发服务并在浏览器打开。
第一次动手
- 打开页面后,在操作目录里搜 "Base64",找到 "From Base64",点一下加入中间的配方区(想加几刀就叠几刀,随时可删)。
- 在输入框里贴一段编码串试试,比如
aGVsbG8=。 - 输出框会实时刷新结果,不用点任何"运行"按钮——改参数、换操作,结果立刻跟着变。
- 如果某一步报错,界面上会给出提示,照着调参数就行,不用猜。
这些真实场景用得上
从一张截图里把文字抠出来:拿到的是一张终端报错的截图?加上 "Optical Character Recognition" 操作,选中图片文件,里面的文字会被识别成可编辑的文本,之后还能继续叠正则匹配操作。实现见 src/core/operations/OpticalCharacterRecognition.mjs。下图就是仓库里自带的 OCR 测试样本:
排查事件时从日志里捞出 IP 和邮箱🔍:把 Web 服务器访问日志整段贴进输入框,配方里依次加上 "Extract IP addresses" 和 "Extract email addresses",输出框立刻把全部 IP(自动排序去重)和邮箱地址列出来,省掉你逐行翻日志。
这个项目目前实现了 500 多种操作,加解密、编码、压缩、网络协议解析、图表分析一个不缺,源码全部开源,想弄懂某个操作内部怎么跑的,直接翻对应文件就行。更多玩法和项目细节可以看 README.md。浏览器一打开就能玩,不先拿段 Base64 试一把?
【免费下载链接】CyberChefThe Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis项目地址: https://gitcode.com/GitHub_Trending/cy/CyberChef
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考