CySim (Senior Design)


Project Description

  • A cyber training facility for blue, red, and executive response teams
  • Contains a complete SOC for blue team and pentesting systems for red
  • Executives operate off of blue team response and have fiscal and PR
  • We are designing a test network and website to demo the functionality
  • Nagios to monitor uptime of services and training for new users
  • I am the team's Docker and CI/CD engineer deploying our services

What I Want To Learn

  • How to utilize Nagios to monitor services
  • How to develop in C# and .NET and utilize APIs to extend its usability
  • How to integrate security testing and docker with github actions
  • How to manage networking within our ESXi environment

HomeLab


Project Description

  • Small rack server consisting of a R210ii and R710
  • R210ii is an OPNsense wired firewall/router plus a Cisco L3 switch
  • R710 is virtualization center plus NAS running Proxmox
  • Documentation and config files are stored on github for reference

What I Implemented and Learned

  • OPNsense firewall with web proxy, ClamAV, Suricata, and Unbound DNS
  • Cisco switch managing VLANs and network isolation for Wireless devices
  • Proxmox server managing virtual machines which running k3s
  • Many services like: Authentik, Gitlab, Nextcloud, and Grafana/Loki SIEM
  • Uses Rook and Ceph for persistent storage connected back to proxmox

Future Features

  • Custom CNI in Kubernetes called Antrea that can tap traffic to my IDS
  • Falco for monitoring the states of containers with custom policies
  • Far future, I want AWS/Backblaze storage as a backup and set up IaC

Chirrup


Project Description

  • Simple Twitter-esque Android application
  • Backend user and post management of Springboot web server
  • I worked on the Springboot + MySQL backend team
  • Used Gitlab for collaborative feature-based development

Features I Implemented and Learned

  • User typing and parental controls
  • MySQL database management and CI/CD
  • Searching users by name and other options
  • Basic login system
  • Reporting of users and posts
  • Admin view to handle reports

MIPS Piplelined Processor


Project Description

  • Coverted single instruction processor to pipelined
  • Small team of two
  • I was the main designer and put together each stage
  • Used Gitlab for collaborative development and version control

Features I Implemented and Learned

  • Designed how components fit together and expected I/O
  • Used team member's implementation to build staged operations
  • Combined stages together to build functioning cpu
  • Fixed mistakes found in components Verilog code


Solo or Class Programming Projects


CprE308 Projects


Project Description

  • Challenged myself w/ two C programs during my operating systems course
  • Goto statements as a means to exit my state machine and safely free memory
  • Implemented my own data structures like variable arrays and linked lists
  • Data structures used to safely manage multithreaded spawing of tasks

bsdfan-rs


Project Description

  • Fan controller for FreeBSD Thinkpads
  • Uses FreeBSD's sysctls to control fan speed based off cpu temperature
  • Simple config system to set max and min temps for each fan level

Features Implemented

  • Config sanity checking to ensure levels don't overlap/invalid
  • Controller that raises the fan level when temp reaches max temperature
  • Lowers the fan level when temp reaches min of current level
  • FreeBSD start up script to start at boot

Mines


Project Description

  • Minesweeper clone written in C using GTK 3
  • My first ever major C programs
  • Custom draw svg images for mines, tiles and face button

Features Implemented

  • Left click that to clear a mine
  • Recursively clears mines when a tile has no mines next to it
  • Right click that flags a tile as a mine
  • Middle click that clears remaining unflagged tiles around a revealed tile
  • Reset button to restart the game
  • Menu option that selects the board size and number of mines
  • Timer and mines remain counters