Skip to content

feat(protocols): add ForcAD HTTP protocol support#189

Open
SimoneErrigo wants to merge 1 commit into
ByteTheCookies:mainfrom
SimoneErrigo:feat/forcad-http-protocol
Open

feat(protocols): add ForcAD HTTP protocol support#189
SimoneErrigo wants to merge 1 commit into
ByteTheCookies:mainfrom
SimoneErrigo:feat/forcad-http-protocol

Conversation

@SimoneErrigo

Copy link
Copy Markdown

Adds a dedicated HTTP submission protocol for the ForcAD Attack-Defense CTF (https://github.com/pomo-mondreganto/ForcAD), in cookiefarm/pkg/protocols/forcad_http.go.

The existing cc_http protocol doesn't work correctly against ForcAD: it relies a status field in the checker's JSON response ("ACCEPTED", "DENIED", …), ForcAD's HTTP receiver doesn't send one.

ForcAD's PUT /flags endpoint replies with a JSON array of objects shaped like:

[{"msg": "[] ", "flag": ""}]

There is no explicit status field, the verdict is only encoded in the readable msg. As a result, with cc_http the flag status was never updated.

Tested manually against a running ForcAD instance:

  • flags submitted through the gameserver were correctly accepted and their statuses updated in CookieFarm (accepted / denied / service down cases), whereas the same setup using cc_http left the statuses unchanged
Screenshot 2026-06-16 alle 17 21 21 Screenshot 2026-06-16 alle 17 20 55

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant