CyberChef:5 分钟跑通的网页版加密解密与编码工具
2026/9/6 19:40:10 网站建设 项目流程

CyberChef:5 分钟跑通的网页版加密解密与编码工具

【免费下载链接】CyberChefThe Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis项目地址: https://gitcode.com/GitHub_Trending/cy/CyberChef

凌晨值班,你在一条告警日志里看到一串 Base64,怀疑里面藏着回连地址;或者接手一段被多层编码过的样本数据,想知道它到底写了什么。这时候你不想装 Python 环境、也不想记一堆命令参数,只想找个网页工具,把数据贴进去、点几下就看到结果。CyberChef 就是干这个的:一个跑在浏览器里的加密解密与编码转换工具,内置 500 多个操作,从 Base64、Hex 到 AES、RSA 哈希校验一应俱全,而且所有数据都在你本机浏览器里处理,不会上传到任何服务器。

CyberChef 工具横幅,出自 GCHQ 开源项目

跟一个真实任务走一遍:解开一段可疑日志

假设你抓到的日志里有一行aHR0cDovLzEwLjAuMC41OjU1NTUvY2Fs,看起来没什么,但你直觉它有问题。

打开 CyberChef 界面后,你会看到四个区域:右上角是输入框,右下角是输出框,左侧是按类别分组的全部操作列表,中间是你的"配方"区。把上面那串 Base64 贴进输入框,然后从左侧搜索From Base64,把它拖进中间的配方区。不需要点任何"运行"按钮——CyberChef 是自动执行(Auto Bake)的,改一下输入或配方,右下角立刻输出http://10.0.0.5:5555/cal

接着你怀疑它外面还包了一层 URL 编码,就在 Base64 上方再拖一个URL Decode操作(拖入后可直接调整顺序)。每一层怎么转换,你都能在配方区里看得清清楚楚。如果这串数据你根本看不出是什么编码,可以拖一个Magic操作进去,它会尝试自动识别数据上的编码层并给出建议。整个过程中,你的数据没有离开过浏览器,这对敏感分析场景是个很实际的保障。

功能拆解:它到底能替你干什么

CyberChef 的操作数量庞大,日常最高频的大概是下面这几类:

功能说明一个具体例子
编码转换(Base64/Hex/URL)各种编码互转,支持批量日志里的 Base64 串一行行解码
加密解密(AES/DES/RSA 等)对称与非对称加解密、签名验证用密钥解开 AES 密文后直接得到明文
哈希与校验和MD5、SHA2、CRC、Fletcher 等对下载的文件算 SHA256 核对完整性
数据提取从文本中提取 IP、邮箱、URL、域名从一段对话记录里批量抓出所有 IP 地址
压缩解包Gzip、Zlib、Tar、Zip 等解出 gzip 数据后再接 Hex 查看内容
协议解析解析 IPv4/IPv6 头、TLS 记录、X.509 证书把一段 IPv4 报文的各字段拆开逐字段看

它的操作目录在源码里都能找到,按模块组织在 src/core/operations/ 下,每个操作一个文件,想看某个功能怎么实现可以直接翻。

另一类值得说的是"流程控制"操作。Fork可以按分隔符把输入拆开,对每一行分别执行后续操作——比如把多行 Base64 各占一行贴进去,Fork 之后接 From Base64,就得到逐行解码的结果,不用手动循环。JumpConditional Jump则能按条件走分支,组合起来相当于一个可视化的数据处理流水线。

它还能处理图片:拖一张截图进去,接上Optical Character Recognition(OCR,光学字符识别)操作,就能把图里的文字提取出来,方便你分析截图里藏的敏感信息。

测试用 OCR 图片:CyberChef 的 Optical Character Recognition 操作可识别此类图片中的英文文本

新手最常踩的坑

  • Node 版本不对,装不起来。CyberChef 要求 Node.jsv24package.json里写死>=24 <27),用旧版本跑npm installnpm start会报错。解决办法:升级 Node,或用 nvm 按项目里的.nvmrc切换到指定版本。
  • 构建大配方时报内存不足(out of memory)。官方 README 里直接给了方案:执行npm run setheapsize调大 Node 的堆内存后再跑。
  • 以为数据会上传到服务器。恰恰相反,CyberChef 是纯客户端的,配方和输入都不经过任何服务器。反过来说,这意味着它也没有"服务端 API"给你调用——想集成进自己的系统,要用的是它自带的 Node.js 接口(npm run repl可以进入交互式命令行直接调用各操作),而不是发 HTTP 请求。
  • 输入输出格式没对上。有些操作要求输入是二进制(比如解密类操作),你贴进去的是纯文本就会被拒绝。先看操作说明里的输入类型,必要时在配方前面加一个From Hex之类的转换操作把数据变成正确格式。

适合谁、不适合谁

它适合安全分析师、运维和开发:日志里夹带的 Base64、交接来的密文、要核对的文件哈希、要抓的 IP 列表,三五分钟就能在网页上搞定,而且不用把敏感数据交给任何在线服务。它不适合两类场景:一是生产环境的大文件批处理——2GB 以内的文件浏览器能扛,但更大的量就该走 Node.js 接口或专用工具;二是你想要一个稳定的 API 端点来集成——它本质是客户端工具,集成方式是以库的形式引入,而不是调接口。

源码就放在仓库里,操作实现、测试用例(tests/operations/)都可以直接读,官方仓库:https://gitcode.com/GitHub_Trending/cy/CyberChef

【免费下载链接】CyberChefThe Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis项目地址: https://gitcode.com/GitHub_Trending/cy/CyberChef

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询