Django AutoCTF

Screenshot of the site

The Django based CTF platform I created. Mostly a demo, with programmatically generated flags. It uses Python(Django, PIL, Sympy), CSS3(Bootstrap), JavaScript(jQuery, BootStrap4).

All flags are programmatically generated. It features a basic scoreboard, a hint system, an admin panel, 2FA, rate limiting, captcha, and sanitizes all user input.

See it live at

Fox and Hound Wargame

Fox and Hound welcome screen

The Fox and Hound Wargame is a series of challenges inspired originally by OverTheWire's Bandit. It diverged not long after the initial planning phase. Now it features 18 challenges that map to the NSA's KUs for Linux/Scripting. Further each challenge is programmatically generated and is also solved by the same script. Each challenge also features a welcome screen with the instructions readily available. Each user is given their own "playground" to work with. Currently the challenge series is a NetLab course Module so I created a server and client VM. The VM network and all related course materials for the items.

It utilizes: BASH, SED, Grep, GNU Core Utils, RegEx, C, ViM, Nano, Pipes I also used: VmWare ESXi, NetLab, Debian

I Am Not Alone

Chatbot screen

This project was made for Same Home Different Hacks this summer. I managed operations including the git repo, branches, and collapsing the trees. The site utilizes HTMl5, JS, Fetch, Flask, and MongoDB. The project was a team effort with Richard Ho, and Yiwen Dai.

Falling Blocks

Falling Blocks main UI

This is my capstone project for CS50G, it is a Tetris Clone that I wrote. It uses Love2D for the game engine and features 3 main game modes. Marathon a classic mode where you race to get to level 15. Endless where you play until you fail and attempt the highest score possible. And finally Time Attack where you try to get the highest possible score within 50 lines. There are also 2 difficulties, easy and hard. Easy is more lenient and hard is the classic rules. It also implements all of the guidelines for tetris games. Further it has a persistent highs core table.

Uses: Love2D, Lua, Class.lua, Timer.lua, Bitser.lua.

DataStructures and Algorithms

This repo contains the following data structures as a classes:max binary heap, binary search tree, single/doubly linked lists, priority queue, queue, stack, graph, and weighted graph. It also contains the following algorithms: Djisktra's shortest path, various tree traversal algorithms, and also some basic sorting algorithms. All data structures are encapsulated as classes and it includes basic testing of the various methods of the class.

The repo has the algorithms implemented in: C++, Python, PHP, and JavaScript.

C++ Cipher Library

This repo contains various classical ciphers written in C++. Currently it includes: Hill, and Affine. Later on it will include a cracker for the Hill cipher. It's matrix class can solve series of linear equations, and all of the standard matrix operations that you'd want it to.

The code in here includes a Abstract Data Types, the STL, Object Orientation, Ngrams, and is wrote in C++.

Misc C++ Projects

This repo contains a bunch of C++ code I wrote as I was learning the language. It was based upon the course outcomes for ITP-132 and ITP-232 and the folders state which class each was for.
ITP-132 is a bunch of basic stuff like enums, IO, vectors, sorting algorithms etc. All projects have demo programs that utilize them. The Caesar cipher program is an actual utility that will work.
ITP-232 has more complex items in it. It has full set of different items including Inheritance, Object Orientation, ADTs, Matrix Operations etc.
The "stock_trader" game was the biggest thing that I wrote in this one that was meant to be used by others.
The matrix class and the Hill cipher classes were originally part of this repo but now the most up-to-date code resides in my libCipher repo.

It's all C++, goes over vectors, enums, arrays, Caesar Ciphers, Object Orientation, Abstract Data Types, operator overloading, templates, the STL, etc.

CTF Challenge Generator Scripts

This project was one of the things I did while at MECC. The repo is currently private so that students can't get the answers as all challenges are generated programmatically and thus to get the answer I have to solve the generated challenge. Anyone wanting access to a copy of the repo for their own college's use can email me with a @*.edu email and upon seeing you listed as a faculty member I will give you a copy of the source code as it is licensed under AGPLv3

Challenge Types
  • Programming: Bounded Knapsack, Algorithms, Bash scripting, Python Language Features, Image parsing
  • Crypto: Ceaser, Affine Cipher, Hill Cipher, Baconian Cipher, Morse Code, Navajo Codetalker,
  • RSA: Hastaad Broadcast Attack, Ferma's Near Prime Attack, RSA Signature Forgery,
  • Forensics: Forging a file's edit time.
  • Pwn: Buffer Overflow, Password Cracking, PHP Type Juggling, Reverse Engineering a Binary, Cracking open a Keepass Database archive.,