.NETBotNet

About .NETBotNet

.NETBotNet is a botnet that was created for a Hackathon competition in the Fall of 2023. The project consists of three pieces: a C2 control server, a bot program (referred to as workers), and a web hosted user interface. The C2 server was developed using the .NET Core framework, along with the use of the ASP.NET framework for the development of the API, and it handles all requests made from the user interface and distributes them to the desired workers. The bot program was developed in C++, has functionality for both Windows and Linux based machines, and performs all tasks received from the C2 server. Finally, the web hosted user interface was developed using the Vue.js framework and is where all requests are made to the C2 server. As of now, the botnet can solely send out DDOS attacks to specified machines, or all machines that are connected to the server through their worker, and the team behind .NETBotNet have no plans to continue any further development of the project. Below, you can find some screenshots of the user interface to get a better idea of how the botnet is managed:

Landing Page

Login Modal

Home Page

Zoomed Map

Tasks Modal

Completed/Queued tasks

Worker Profile

Project Background

     .NETBotNet was originally developed in the Fall of 2023 during the YCP Hacks Hackathon event at York College of Pennsylvania. I and a few friends, Braden Fleming, Liz Mains, and Brandon Simmons, formed a team for the competition and wanted to create a very basic botnet that could send out Distributed Denial of Service (DDOS) attacks to workers running on different machines that we had control over. Within the two days that the event was held over, my team and I were able to create a functional C2 control server accompanied by an API with endpoints for managing and controlling workers, or bots, along with creating the actual bot program that runs on the machines and performs the requested tasks that were sent to them from the C2 server. Finally, my team and I created a Visual User Interface, where all tasks could be monitored and assigned from, along with the location of the worker, the specs of the machine it is running on, and its live terminal output. At the end of the event, my team and I ended up winning second place overall out of 26 teams.
     Following the event, two of my team members spoke with their professor, which at the time I also had but for a different course, and he stated that they could build upon the project and submit it as their final project for the Ethics course at York College. After finding this out, they asked if I would like to continue development of the botnet with them throughout the semester, to which I said yes, and we soon continued development of the project. Over the next few weeks, we added a few small features to the project, such as a map that shows the location of each worker and a secure login that only allows one user to actually view and control the botnet through the user interface. Our Professor agreed that if I came to the final period of the class and presented the project with my two team members, he would count that as my final for when I take the class in the Fall of 2024. So, I did just that, and our project was voted first place out of all the projects from the Ethics course that semester.