Project Highlights

Listed below are some of my favorite projects that I've created or worked on. All my other projects can also be found here on my GitHub Profile.

ThunderStorm

ThunderStorm is the name for the over-arching C2 solution that I've been developing since 2019. Based off XMT, a Golang-based C2 framework (that I also created), ThunderStorm aims to be a successor to mature, currently used C2 software/service, such as CobaltStrike and Sliver.

ThunderStorm has many components involved in it:

  • Jetstream (Bolt Builder)
  • Bolts (Agents)
  • Cirrus (The C2 Service)
  • Doppler (CLI Client Manager)
  • StormFront (Web GUI Client Manager)

Also included is a HTTP ReSTful API that allows for automation and control without direct involvement.

Currently, ThunderStorm has been tested in to separate CTF events (BSidesLV 2021 & BSidesDE 2021) with promising results!

View ThunderStorm on GitHub

XMT: eXtensible Malware Toolkit

I can't mention ThunderStorm without also mentioning XMT.

XMT stands for eXtensible Malware Toolkit and is a solid framework that can be used to develop implants and server C2 software.

Written in Golang, XMT has support for all the current architectures and operating systems supported by Golang upstream.

Special care is written into XMT for cool features in Windows, such as:

  • Memory Injection
  • Evasion
  • DLL Injection/Reflective Loading
  • Migration
  • Assembly Instructions
  • Window Tools
  • Screenshots
  • Advanced Command Execution

Other unique features about XMT are the multiple methods that can be used to masquerade C2 traffic using the Wrapper and Transform interfaces, encryption and unwrapping of strings during runtime, built-in task support so there's no need for developing any command wrappers out-of-the-box and support for both JavaScript and the Monkey programming languages internally. These must be registered beforehand.

Additionally, many build flags allow for changing up how XMT acts during runtime, which is great for keeping defenders on their toes.

View XMT on GitHub

I gave a presentation on XMT (also ThunderStorm) at BSides Las Vegas 2022 called "So you Wanta Build a C2?" you can Watch the Video here or View the Slides.

Spaceport: System Management Daemon

The System Management Daemon (SMD for short) was a software solution made out of necessity. Instead of having a complex hierarchy of scripts and "sudo" commands just to change the CPU speed, I developed a dynamic platform that allows for full control over my device.

Yup, you read that right. SMD is a system platform software solution that I run on my own Linux Laptop Tablet. It allows for privilege separation when running simple tasks such as changing the brightness or changing the CPU governor.

However, SMD does way more! From managing user sessions and startup options for programs to composers, it also manages the hardware. This allows for fully working hibernate/suspend and complex locking scenarios (such as using Yubikeys).

Additionally, with the Hydra plugin, SMB can also manage virtual machines with the assistance of QEMU!

Based on a simple "plug and play" model, new modules can be added or removed by changing the files in the "modules" folder, no dependencies required! (Ok, except Python3!)

View Spaceport SMD on GitHub

Dotfiles

What kind of Linux elitist would I be without publishing my dotfiles? lol

Self-explanatory, these are the scripts and configs I use every day. They are meant to be used on tandem with SMD, just to make life easy for me.

View Dotfiles on GitHub

Scorebot Scoreboard

I got into programming, ironically enough, starting out writing HTML sites with C#. What better way to come full circle than to top it off with one of the best looking sites I could create?

If you're not familiar with Pros Versus Joes, you can read up here

If you've seen or played in any PVJ CTF since ~2018, you should have seen this beauty! Written in Golang and backed by a powerful hashing backend, this site uses WebSockets and come slick JavaScript (no bullshit JS frameworks either!) to dynamically create and display the Scoreboard. Only updating things that have changed, this is a dramatic change from previous versions that re-compute the display every 5 seconds.

Not only does it look good, but it can guarantee that each page viewing the Scoreboard is in sync and consistent across viewers/browsers.

Lastly, its optimized for all display types, you can use this to keep track of your team with any device!

View Scorebot Scoreboard on GitHub

Scorebot3

Last but not least, the core of ProsVJoes games, Scorebot!

While a little older than most projects here, Scorebot3 has been battle tested and has went through many revisions to get where it is today.

Solid enough to run large scale games on, it's still doing math since ~2016.

View Scorebot3 on GitHub