Skip to content

4nd3r5on/ctf1

Repository files navigation

CTF-1

My first simple CTF-like project.

Random sometimes done not quite right.

There is no flag, unlike in usual CTF, but it has a critical bug that allows to create unlimited number of accounts on other's e-mails and bypass captcha. Good luck to find and exploit it.

Run the CTF

Prepare

cp example.postgres.env .postgres.env
cp example.redis.env .redis.env
cp example.smtp.env .smtp.env
# Edit it (I hope you'll find the exit)
vim .redis.env
vim .postgres.env
vim .smtp.env

Run development

Need configuration? It's in the cmd/serv/main.go

docker-compose -f ./docker-compose.dev.yml build
docker-compose -f ./docker-compose.dev.yml up

Latter will make other options to run, like prod

For developers & researchers

Code structure

in cmd located application entrypoints, files where execution starts.

in internal/setup located all the app initialization.

in pkg located simple tools (that are mostly can be useful in latter projects).

internal/domain contains application logic, main entities, data validation. It's a middle layer between the APIs and Repository to add flexability to the project structure. Also it's important for security reasons (for example to make same validation on different APIs, reduce risks)

internal/repository has all the storage-related code (DB, cache, disk).

in internal/api located everything related to an API (Handlers, routes).

Tests

Nothing yet, TODO...

About

Moj prvi jednostavni sličan CTF-u projekt.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published