StringCheese is a tool to get easy CTF flags automatically.
Project description
StringCheese
StringCheese is a script written in Python to extract CTF flags (or any other pattern with a prefix) automatically.
It works like a simple strings | grep command, but can detect many encodings (like base64, XOR, rot13) and works on file formats other than plaintext.
Installation
Use the package manager pip to install StringCheese.
sudo pip install stringcheese
Usage
StringCheese only needs to know the flag prefix to work. You can pass it the input file using the --file option or through stdin.
stringcheese FLAG{ --file input.txt
cat input.txt | stringcheese FLAG{
How it works
StringCheese generates strings which encode the flag prefix in various ways.
Those strings are then searched in several transformed version of the input file : one in two bytes, reversed, etc.
When the encoded flag prefix is found somewhere, the corresponding decoder is called to regenerate the flag.
Authors and contributors
Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file stringcheese-2.1.tar.gz.
File metadata
- Download URL: stringcheese-2.1.tar.gz
- Upload date:
- Size: 107.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
929efbee18fa6a57b9ebd6d9588e8de83ae5a87e47817fd6772c85e05c12dd66
|
|
| MD5 |
d6e2bf9649e70c39b8e596b2b87781c0
|
|
| BLAKE2b-256 |
55e22abc86d2957fe0e1f94d65ab5b96062528c4d4bc09e058bd9fd4b06f0086
|