A CTFd Terminal-UI for y'all, because we can.
I had a few CTFs where there was a terible server connectivity. Each interaction was a few seconds so most of the time I had to work only with the CTFd API for quicker access, since no HTML and no CSS to load.
That's when I had the idea to make a cute CLI that could prevent me wasting time doing all those requests to the API manually.
Currently, pwntui only supports CTFd but maybe in the future we could add support for more services! Since we're only focused on CTFd as of right now, the following tasks are concerning CTFd.
- login (id/password only)
- saving sessions (in
~/.pwntui/sessions.json) - provide extra cookies in requests (most of the time, it's for Cloudflare's
cf_clearancecookie, but this also requires an extraUser-Agentheader) - check if joining/creating a team is required
- retrieve user information
- create a team (id/password/nonce)
- join a team (id/password/nonce)
- challenges listing
- challenge information
- challenge attempt submission