GithubHelp home page GithubHelp logo

gladson-lalu / enigma-ctf-website Goto Github PK

View Code? Open in Web Editor NEW
3.0 1.0 0.0 7.7 MB

Enigma CTF - Frontend Website and Backend Server

Home Page: https://enigmaaec.live

JavaScript 22.02% CSS 25.51% HTML 40.38% EJS 12.09%
css ctf google-cloud google-sheets-api html javascript mongodb mongoose nodejs

enigma-ctf-website's Introduction

This is the website developed for the Enigma CTF, organized by the Tinkerhub AEC on our campus.

About CTF

In computer security, CTF (Capture The Flag) is an exercise in deliberately hiding “flags” in vulnerable programs or websites. Typically, CTFs serve as an educational exercise to give participants experience in securing a machine, as well as to perform and respond to attacks similar to those seen in the real world. The machine enigma inspired the term “enigma”, a cipher device developed and used in the early to mid-twentieth century to protect commercial, diplomatic and military communications.

How We Conducted It

We conducted the Enigma CTF to get newcomers and second-year students to know their campus and gain team experience by solving challenges. Several QR codes hid in unnoticeable places on campus. If they scan a QR code, they will receive a riddle, and once the riddle is answered correctly, places to visit next will be shown according to their current level. They have to complete all the challenges at one level to get promoted to the next level..

About The Technology

HTML, CSS, JavaScript and Bootstrap are used for the frontend development and Express and NodeJs are used for the backend of the website. MongoDB is used as the Database and Google spreadsheet is used to manage the user registration and the CTF questions.

Dependencies:

  • bcrypt
  • body-parser
  • cookie-parser
  • ejs
  • express
  • google-spreadsheet
  • jsonwebtoken
  • mongoose

Pages:

  1. Login
  2. Register
  3. Leaderboard
  4. About
  5. Instructions
  6. Question Page

Install and Use:

git clone https://github.com/TinkerHub-AEC/CTF-Website.git
npm install .

Now you needed to do

  • Setup a Mongodb database
  • setup a Google spreadsheet for the registeration of participants (Registeration process can be done by google form)
  • setup a Google spreadsheet to handle the questions(Since we setting up the google spreadsheet, we can add or modify the questions in googlesheet feasibly and refresh the question cache by '/refreshQuestion' route)
  • Replace the config,js
  • Add your Google Developer Autentication Key(Google Spreadsheet and Google Drive API Permission Required) in services folder
npm start

enigma-ctf-website's People

Contributors

gladson-lalu avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.