Join us in-person this July for the first-ever Antisyphon Summer Camp! Register Here

Workshop: Let’s Build a Simple C2 Framework in Golang and VueJS with Faan Rossouw

Workshop: Let’s Build a Simple C2 Framework in Golang and Vue.js with Faan Rossouw

Overview

  • Course Length: 4 hours
  • Support from expert instructors
  • Includes a certificate of completion
Pay
What You
Can
Instructor:

Join Faan Rossouw for this 4-hour workshop where you’ll build a basic Command and Control (C2) framework from scratch.

He will use Go (Golang), a beginner-friendly and efficient language, to develop a server and agent, as well as Vue.js to create a web ui client. By the end, you’ll not only have a functional C2 framework, but you’ll also have gained foundational knowledge and resources to expand on the project further. Designed for beginners in security with basic programming and networking experience, this course helps solidify your skills in a practical, security-focused context. Explore both offensive and defensive insights into one of the most critical aspects of modern compromises—C2. Let’s turn theory into action and create something impactful together!

Syllabus

Part A: Introduction

  • General introduction (LECTURE)
  • A C2 Framework is just a Client + Server (LECTURE)
  • Development Roadmap (LECTURE)

Part B: Setting Up

  • Setting up our Go project, module management, and basic structure (LAB)
  • Setting up git + version control overview (LAB + LECTURE)

Part C: Server

  • Basic listener only (LAB)
  • Intro to Factory Pattern (LECTURE)
  • Creating Listener Factory (LAB)
  • Adding Listener Manager and Service (LAB)

Part D: Frontend

  • Quick intro to Vue (LECTURE)
  • Frontend setup with Vue (LAB)
  • Quick intro to Websockets (LECTURE)
  • Adding websockets to server (LAB)
  • Adding websockets to frontend (LAB)
  • Displaying server info on frontend (LAB)

Part E: Agent

  • Creating our basic agent (LAB)
  • Adding delay, jitter, and data jitter (LAB)
  • Adding basic authentication (LAB)
  • Adding endpoint enumeration (LAB)
  • Adding JWE payload encryption (LAB)
  • Integrating agent enumeration results into frontend (LAB)

Part F: Conclusion

  • Final thoughts (LECTURE)
  • Where to go from here (LECTURE)

Virtual (September 18th, 2025)

  • September 18th – 11 AM EST – 4 PM EST

System Requirements

This course is designed to be accessible without requiring high-end hardware. Here’s what you’ll need to participate fully:

CPU: A modern dual-core processor is the minimum requirement, though a quad-core processor will provide a smoother experience when running multiple applications simultaneously (IDE, server, agent, and other tools).

RAM: 8GB of RAM is the recommended minimum. This will comfortably support our development environment without excessive slowdowns.

Storage: Please ensure you have at least 50GB of free disk space. This will accommodate the operating system, development tools, our project files, and allow room for additional resources and documentation.

GPU: No specialized graphics hardware is required for this course. The standard integrated graphics in most computers will be entirely sufficient.

Audience (who is this for)

This course is ideal for network security professionals or enthusiasts who have completed a basic introductory programming course and possess foundational networking knowledge. If you’re eager to apply your skills in a hands-on project, this is the perfect opportunity.

Though we will be creating an offensive tool, this workshop is equally relevant to cyber defenders. By learning how C2 frameworks are designed, defenders can develop more effective detection strategies focused on communication patterns, protocol anomalies, and behavioral indicators. 

Further, the broader skills developed in this course are all universally applicable and could just as easily be applied to projects with defensive goals in mind. Though we create an offensive tool, the core foundational skills we use are valuable across both offensive and defensive security domains. 

Level: beginner, intermediate, advanced

Beginner-to-Intermediate Level.

Since definitions of “beginner” and “intermediate” can vary, let me clarify: This workshop is designed for those who have some familiarity with basic programming syntax (it doesn’t have to be Go) and fundamental networking concepts (IP, HTTP, OSI model etc). You might not feel fully confident in your understanding regarding these concepts yet, but you’re ready to take the next step and level up your skills. 

Labs/VMs/Github (information for students)

Operating System: The course materials work across Windows, macOS, and Linux. For Windows users, I recommend enabling WSL2 (Windows Subsystem for Linux) for the most seamless experience since I’ll be demonstrating primarily with terminal commands that work best in a Unix-like environment.

Integrated Development Environment (IDE): You’re welcome to use any IDE or text editor you’re comfortable with, as long as it has support for Go development. I’ll be using GoLand throughout the course, I’m currently working with JetBrains to hopefully provide free trial licenses for participants. If you prefer a free alternative, Visual Studio Code with Go extensions is pretty good (most of the time), and I’ll provide a setup guide for it. Other options like Helix, Neovim, or Sublime Text are perfectly fine if you’re already familiar with them.

Required Software:

A GitHub account for version control and sharing code – if you don’t yet have an account, please create one

Go programming language (latest stable version)

Git version control

curl command-line tool

Live Training

  • Pay What You Can
  • Collaborative interaction with Instructor and fellow students through the Antisyphon Discord class channel
  • Access to course slides for future reference
  • Tips, tools, and techniques that can be applied immediately upon returning to work
  • Strengthen your skills by solving challenges within the Antisyphon Cyber Range
  • Become part of a community driven to educate and share knowledge

Pay What You Can

Workshop: Lets Build a Simple C2 Framework in Golang and VueJS with Faan Rossouw
$ 25.00 $ 150.00
Pay
$ 25.00
Includes certificate of participation, six months access to class recordings and our appreciation.
Sep 18
11am EDT – 4pm EDT
Registration ends: 10 PM ET on Sep 17
$ 25.00
Select option

Pay What You Can

Pay
$ 25.00
Includes certificate of participation, six months access to class recordings and our appreciation.

Pay
$ 50.00
Includes certificate of participation, six months access to class recordings and our appreciation.

Pay
$ 75.00
Includes certificate of participation, six months access to class recordings and our appreciation.

Pay
$ 100.00
Includes certificate of participation, six months access to class recordings and our appreciation.

Complete Package

Pay
$ 150.00
Includes certificate of participation, six months access to class recordings and our appreciation.

Course Categories:

Pay What You Can, Workshop

Shopping Cart

No products in the cart.