Code Monkey home page Code Monkey logo

fast's Introduction

๐Ÿšฉ Fast โ€” Flag Acquisition and Submission Tool

Fast is a specialized tool built in Python designed for managing exploits and automating flag submission in Attack/Defense (A/D) competitions. The goal of Fast is to take the technical burden off the team players, allowing them to focus on writing exploits and patching vulnerabilities.

The development of Fast was heavily influenced by the practical experiences and valuable insights gathered by the Serbian National ECSC Team ๐Ÿ‡ท๐Ÿ‡ธ who utilized the tool in multiple A/D competitions. Fast's development roadmap will continue to be aligned with the team's needs.

Installation

To install the latest release, run the following command:

pip install https://github.com/dusanlazic/fast/releases/download/v1.0.0/fast-1.0.0.tar.gz

Overview

Manage Exploits with YAML

connect:
  host: 192.168.13.37
  port: 2023
  player: s4ndu

exploits:
  - name: alpha
    targets:
      - 10.1.2-11.1
  
  - name: bravo
    targets:
      - 10.1.2.1
      - 10.1.6.1
      - 10.1.8-11.1
  
  - name: charlie
    run: ./charlie.sh [ip]
    targets:
      - 10.1.2-11.1

Utilize Tick Time Wisely

- name: lima
  batches:
    count: 5
    wait: 3
  targets:
    - 10.1.2-31.1

- name: mike
  delay: 2
  batches:
    size: 8
    wait: 3
  targets:
    - 10.1.2-31.1

Straightforward Exploit and Submitter Templates

def exploit(target: str) -> str:
  
    # Exploit the target, get the flags

    return text_containing_flags
from typing import List, Tuple, Dict

def submit(flags: List[str]) -> Tuple[Dict[str, str], Dict[str, str]]:
    accepted_flags = {}
    rejected_flags = {}

    # Submit and categorize flags

    return accepted_flags, rejected_flags

See the Flags Yourself With Dashboard

Pressure-Friendly Query Language

Here are examples of some actual queries. Basically, anything you write will likely work.

player is alice
target = 10.1.3.5
tick >= 25
timestamp after 15:30
status is accepted
response matches ".* OK"
value starts with "FAST{"
status in [accepted, rejected]
exploit not in [alpha, bravo]
timestamp between 14:00 and 16:00
response ending with "OK"
player is bob and status is rejected
exploit is alpha or target = "10.1.4.1"
status == accepted && (exploit == beta || target == 10.1.5.1)
player is charlie and timestamp < 12:00
value contains "FAST" and status is not rejected
target starts with "10.1."
response != "DEMOffoxfzhX0avVWS/wBb0oMljtFde6Ir/10GUmv3aXFIcUXbM= OLD"
tick between [10, 20]
player is not alice and status in [accepted, queued]
exploit is delta and (timestamp > 10:00 && timestamp < 14:00)
response matches ".* DUP"
player of [eve, frank]
target ends with ".5"
exploit is gamma and status is not queued
exploit is alpha or (target is 10.1.4.1 and (timestamp < 16:00 or timestamp > 18:00))

Read the Docs for more

Fast docs

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.