CyberChef is a straightforward, intuitive net app for finishing up all method of “cyber” operations inside an online browser. These operations embody easy encoding like XOR and Base64, extra complicated encryption like AES, DES and Blowfish, creating binary and hexdumps, compression and decompression of knowledge, calculating hashes and checksums, IPv6 and X.509 parsing, altering character encodings, and way more.
The instrument is designed to allow each technical and non-technical analysts to control knowledge in complicated methods with out having to cope with complicated instruments or algorithms. It was conceived, designed, constructed and incrementally improved by an analyst of their 10% innovation time over a number of years.
Reside demo
CyberChef continues to be below energetic growth. Consequently, it should not be thought-about a completed product. There’s nonetheless testing and bug fixing to do, new options to be added and extra documentation to write down. Please contribute!
Cryptographic operations in CyberChef shouldn’t be relied upon to supply safety in any state of affairs. No assure is obtainable for his or her correctness.
A stay demo could be discovered right here – have enjoyable!
Containers
If you need to check out CyberChef regionally you possibly can both construct it your self:
docker construct --tag cyberchef --ulimit nofile=10000 .
docker run -it -p 8080:80 cyberchef
Or you should use our picture straight:
docker run -it -p 8080:80 ghcr.io/gchq/cyberchef:newest
This picture is constructed and printed by our GitHub Workflows
The way it works
There are 4 most important areas in CyberChef:
- The enter field within the high proper, the place you possibly can paste, sort or drag the textual content or file you wish to function on.
- The output field within the backside proper, the place the result of your processing will probably be displayed.
- The operations record on the far left, the place yow will discover all of the operations that CyberChef is able to in categorised lists, or by looking.
- The recipe space within the center, the place you possibly can drag the operations that you simply wish to use and specify arguments and choices.
You need to use as many operations as you want in easy or complicated methods. Some examples are as follows:
Options
- Drag and drop
- Operations could be dragged out and in of the recipe record, or reorganised.
- Information as much as 2GB could be dragged over the enter field to load them straight into the browser.
- Auto Bake
- Everytime you modify the enter or the recipe, CyberChef will routinely “bake” for you and produce the output instantly.
- This may be turned off and operated manually whether it is affecting efficiency (if the enter may be very giant, for example).
- Automated encoding detection
- CyberChef makes use of plenty of strategies to try to routinely detect which encodings your knowledge is below. If it finds an acceptable operation that make sense of your knowledge, it shows the ‘magic’ icon within the Output area which you’ll be able to click on to decode your knowledge.
- Breakpoints
- You possibly can set breakpoints on any operation in your recipe to pause execution earlier than working it.
- You may as well step by the recipe one operation at a time to see what the information seems to be like at every stage.
- Save and cargo recipes
- Should you provide you with an superior recipe that you realize you may wish to use once more, simply click on “Save recipe” and add it to your native storage. It’s going to be ready for you subsequent time you go to CyberChef.
- You may as well copy the URL, which incorporates your recipe and enter, to simply share it with others.
- Search
- If you realize the title of the operation you need or a phrase related to it, begin typing it into the search area and any matching operations will instantly be proven.
- Highlighting
- Save to file and cargo from file
- It can save you the output to a file at any time or load a file by dragging and dropping it into the enter area. Information as much as round 2GB are supported (relying in your browser), nonetheless, some operations might take a really very long time to run over this a lot knowledge.
- CyberChef is solely client-side
- It needs to be famous that none of your recipe configuration or enter (both textual content or information) is ever despatched to the CyberChef net server – all processing is carried out inside your browser, by yourself pc.
- As a consequence of this characteristic, CyberChef could be downloaded and run regionally. You need to use the hyperlink within the high left nook of the app to obtain a full copy of CyberChef and drop it right into a digital machine, share it with different folks, or host it in a closed community.
Deep linking
By manipulating CyberChef’s URL hash, you possibly can change the preliminary settings with which the web page opens. The format is https://gchq.github.io/CyberChef/#recipe=Operation()&enter=...
Supported arguments are recipe
, enter
(encoded in Base64), and theme
.
Browser help
CyberChef is constructed to help
- Google Chrome 50+
- Mozilla Firefox 38+
Node.js help
CyberChef is constructed to totally help Node.js v16
. For extra info, see the “Node API” wiki web page
Contributing
Contributing a brand new operation to CyberChef is tremendous straightforward! The quickstart script will stroll you thru the method. Should you can write primary JavaScript, you possibly can write a CyberChef operation.
An set up walkthrough, how-to guides for including new operations and themes, descriptions of the repository construction, accessible knowledge sorts and coding conventions can all be discovered within the “Contributing” wiki web page.
- Push your modifications to your fork.
- Submit a pull request. If you’re doing this for the primary time, you may be prompted to signal the GCHQ Contributor Licence Settlement by way of the CLA assistant on the pull request. This may even ask whether or not you might be comfortable for GCHQ to contact you a couple of token of thanks in your contribution, or about job alternatives at GCHQ.