gchq/CyberChef — công cụ bảo mật — đang có 36.1k sao GitHub trong nhóm Security. The Cyber Swiss Army Knife - a web app for encryption, encoding, compression and data analysis
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
CyberChef is a simple, intuitive web app for carrying out all manner of "cyber" operations within a web browser. These operations include simple encoding like XOR and Base64, more complex encryption like AES, DES and Blowfish, creating binary and hexdumps, compression and decompression of data, calculating hashes and checksums, IPv6 and X.509 parsing, changing character encodings, and much more.
The tool is designed to enable both technical and non-technical analysts to manipulate data in complex ways without having to deal with complex tools or algorithms. It was conceived, designed, built and incrementally improved by an analyst in their 10% innovation time over several years.
Contents
Official website
Running Locally
With Docker
From source
How it works
Features
Deep linking
Browser support
Node.js support
Security
Contributing
Licencing
Official website
CyberChef's official website can be found here - have fun!
Running Locally
You can run CyberChef with Docker (no toolchain required) or build it from source with Node.js.
With Docker
Prerequisites
Docker
Docker Desktop must be open and running on your machine
If you prefer to skip the build process, you can use the pre-built image
docker run -it -p 8080:8080 ghcr.io/gchq/cyberchef:latest
Just like before, navigate to http://localhost:8080 in your browser.
This image is built and published through our GitHub Workflows.
From source
If you want to develop CyberChef or run it without Docker, you can build it directly with Node.js.
Prerequisites
Node.js v24 (see Node.js support)
[!NOTE]
You can use nvm to manage Node.js versions and use the current development version in this project to avoid conflicts with other projects on your machine.
Setup
git clone https://github.com/gchq/CyberChef.git
cd CyberChef
npm install
Common tasks
Command
Description
npm start
Run the development server with live reload at http://localhost:8080.
npm run build
Produce a production build in the build/prod directory.
npm test
Run the Node.js and operation test suites.
npm run testui
Run the browser (UI) tests.
npm run lint
Check the code against the linting rules.
npm run newop
Scaffold a new operation via the interactive quickstart script.
If you hit an out-of-memory error while building large recipes, increase Node's heap size with npm run setheapsize.
How it works
There are four main areas in CyberChef:
The input box in the top right, where you can paste, type or drag the text or file you want to operate on.
The output box in the bottom right, where the outcome of your processing will be displayed.
The operations list on the far left, where you can find all the operations that CyberChef is capable of in categorised lists, or by searching.
The recipe area in the middle, where you can drag the operations that you want to use and specify arguments and options.
You can use as many operations as you like in simple or complex ways. Some examples are as follows:
Decode a Base64-encoded string
Convert a date and time to a different time zone
Parse a Teredo IPv6 address
Convert data from a hexdump, then decompress
Decrypt and disassemble shellcode
Display multiple timestamps as full dates
Carry out different operations on data of different types
Use parts of the input as arguments to operations
Perform AES decryption, extracting the IV from the beginning of the cipher stream
A simpler way to perform the same AES Decryption
Automagically detect several layers of nested encoding
Features
Drag and drop
Operations can be dragged in and out of the recipe list, or reorganised.
Files up to 2GB can be dragged over the input box to load them directly into the browser.
Auto Bake
Whenever you modify the input or the recipe, CyberChef will automatically "bake" for you and produce the output immediately.
This can be turned off and operated manually if it is affecting performance (if the input is very large, for instance).
Automated encoding detection
CyberChef uses a number of techniques to attempt to automatically detect which encodings your data is under. If it finds a suitable operation that make sense of your data, it displays the 'magic' icon in the Output field which you can click to decode your data.
Breakpoints
You can set breakpoints on any operation in your recipe to pause execution before running it.
You can also step through the recipe one operation at a time to see what the data looks like at each stage.
Save and load recipes
If you come up with an awesome recipe that you know you’ll want to use again, just click "Save recipe" and add it to your local storage. It'll be waiting for you next time you visit CyberChef.
You can also copy the URL, which includes your recipe and input, to easily share it with others.
Search
If you know the name of the operation you want or a word associated with it, start typing it into the search field and any matching operations will immediately be shown.
Highlighting
When you highlight text in the input or output, the offset and length values will be displayed and, if possible, the corresponding data will be highlighted in the output or input respectively (example: highlight the word 'question' in the input to see where it appears in the output).
Save to file and load from file
You can save the output to a file at any time or load a file by dragging and dropping it into the input field. Files up to around 2GB are supported (depending on your browser), however, some operations may take a very long time to run over this much data.
CyberChef is entirely client-side
It should be noted that none of your recipe configuration or input (either text or files) is ever sent to the CyberChef web server - all processing is carried out within your browser, on your own computer.
Due to this feature, CyberChef can be downloaded and run locally. You can use the link in the top left corner of the app to download a full copy of CyberChef and drop it into a virtual machine, share it with other people, or host it in a closed network.
Deep linking
By manipulating CyberChef's URL hash, you can change the initial settings with which the page opens.
The format is https://gchq.github.io/CyberChef/#recipe=Operation()&input=...
Supported arguments are recipe, input (encoded in Base64), and theme.
Browser support
CyberChef is built to support
Google Chrome 50+
Mozilla Firefox 38+
Node.js support
CyberChef is built to fully support Node.js v24 and is also tested against Node.js v26 ahead of it becoming the active LTS release. For more information, see the "Node API" wiki page
Security
Please see the CyberChef security policy.
Contributing
Contributing a new operation to CyberChef is super easy! The quickstart script will walk you through the process. If you can write basic JavaScript, you can write a CyberChef operation.
An installation walkthrough, how-to guides for adding new operations and themes, descriptions of the repository structure, available data types and coding conventions can all be found in the "Contributing" wiki page.
Push your changes to your fork.
Submit a pull request. If you are doing this for the first time, you will be prompted to sign the GCHQ Contributor Licence Agreement via the CLA assistant on the pull request. This will also ask whether you are happy for GCHQ to contact you about a token of thanks for your contribution, or about job opportunities at GCHQ.
Licencing
CyberChef is released under the Apache 2.0 Licence and is covered by Crown Copyright.
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/gchq/CyberChef là nguồn chính thức.
gchq/CyberChef có bao nhiêu sao?
gchq/CyberChef có 36.1k sao GitHub — tải lại trang để xem số mới nhất, hoặc xem trực tiếp github.com/gchq/CyberChef. TopGit phản chiếu số sao của GitHub nhưng không cam kết đến từng phút.
gchq/CyberChef có những chủ đề gì?
GitHub topics của gchq/CyberChef: "compression", "data-analysis", "data-manipulation", "encoding", "encryption", "hashing", "parsing". TopGit xếp repo vào nhóm Security.
gchq/CyberChef có trang demo không?
Dự án có trang chủ ở https://gchq.github.io/CyberChef. Tab "Readme" ở trang này thường có ảnh chụp và hướng dẫn bắt đầu nhanh.
gchq/CyberChef còn đang phát triển không?
Commit gần nhất trên gchq/CyberChef là 3 tháng trước (theo timestamp GitHub). Repo có 4.2k fork — một chỉ báo về mức độ quan tâm của cộng đồng.
gchq/CyberChef dùng license gì?
gchq/CyberChef phát hành theo license Apache-2.0. Nên mở file LICENSE trên GitHub để xác nhận — license metadata đôi khi lệch với thực tế dự án.
gchq/CyberChef viết bằng ngôn ngữ gì?
gchq/CyberChef chủ yếu viết bằng JavaScript. Trường "language" của GitHub dựa trên phần lớn byte ở nhánh mặc định.
Đọc đầy đủ README ở tab phía trên.
CyberChef có đáng để bạn bỏ thời gian?
ChatGPT, Claude và Perplexity đều đọc được trang này. Hỏi thử xem họ nghĩ gì về CyberChef.