Skip to content
/ YACF Public
forked from boujeebit/YACF

Yet Another CTF Framework - Built with Vuejs, Django, GraphQL, and Redis

License

Notifications You must be signed in to change notification settings

noraj/YACF

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

YACF

Yet Another CTF Framework!

YACF is still under development and should not be use in production yet. Good things to come!

Deployment

Currently, the only supported method of deploying YACF is through Docker. Docker Compose is recommended to streamline the process.

To do deploy the environment, first ensure that you have docker and docker compose installed on the server/computer. Once verified, run the following commands

$: curl https://raw.githubusercontent.com/0xCODEs/YACF/master/scripts/docker-compose.yml -o docker-compose.yml
$: docker-compose up

Now go to your web browser and navigate to the IP address of where it is deployed. The application will be listening on port 80.

Note: The default admin credentials are admin/yacfadmin

Developers

<!-- docker run --name yacf-redis -p 6379:6379 -d redis -->
docker-compose build

Build Vue

yarn build

rm -rf ../backend/static/*
cp -r dist/* ../backend/static/

  • [Bug] Get webpack to append static to css. Current workaround, change it in dist/index manually.

Things to Fix

  • On challenge solve place unique constraint on backend model to ensure team cannot resubmit flags.

Things to Add

  • Auto shut off time to hide scoreboard
  • After event has ended, have the option for users to submit writeups
  • Limit number of users that can be on a team
  • Upload for team profile picture
  • Backend code/message system
  • Change submit flag to return one time solve message (Need to create model for this)
  • Make challenge hits.
  • Make post challenge survey for either user or whole team.

Security

  • [backend] Stop teams from submitting the same flag twice
  • [backend] Check event end time before submitting flag.
  • [backend] Hide team access code

About

Yet Another CTF Framework - Built with Vuejs, Django, GraphQL, and Redis

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 48.3%
  • Python 39.9%
  • JavaScript 10.6%
  • Other 1.2%