CyberChef has a useful Node.js API, but sometimes we want to be able to programmatically run CyberChef recipes in languages other than JavaScript.
By running this server, you can use CyberChef operations in any language, as long as you can communicate via HTTP.
Example Use
Assuming you’ve downloaded the repository and are running it locally:
curl -X POST -H "Content-Type:application/json" -d '{"input":"... ---:.-.. --- -. --. --..--:.- -. -..:- .... .- -. -.- ...:..-. --- .-.:.- .-.. .-..:- .... .:..-. .. ... ....", "recipe":{"op":"from morse code", "args": {"wordDelimiter": "Colon"}}}' localhost:3000/bake
response
{
value: "SO LONG, AND THANKS FOR ALL THE FISH",
type: "string"
}
Features
- Compatible with recipes saved from CyberChef. After using CyberChef to experiment and find a suitable recipe, the exported recipe JSON can be used to post to the
/bake
endpoint. Just copy/paste it in as yourrecipe
property as part of the POST body.
Installing
- Clone the repository
cd
into the project and runnpm install
- Run
npm run
- In a browser, navigate to
localhost:3000
to see usage documentation.
Docker
A Docker image can be built, then run by doing the following:
git clone https://github.com/gchq/CyberChef-server
cd CyberChef-server
docker build -t cyberchef-server .
docker run -it --rm --name=cyberchef-server -p 3000:3000 cyberchef-server
For more information click here.