Hello there. I'm Connor, and this is my website. I do computer stuff and I like security.
I'm a computer scientist with a passion for invention and security. I graduated from Virginia Tech in 2021 with a B.S. in computer science and a minor in cyber security. A year later, I graduated with a M.S. (also in computer science), focusing on computer systems and security, with an emphasis on fuzzing.
I enjoy software development, exploring software security, and creating things in my free time. Check out the blog posts I've written about some of my endeavors here.
I'm an engineer at Microsoft. I've been doing exciting security work involving speculative-execution side-channel attacks (remember Spectre and Meltdown?) and other architectural attacks. I've also been working on the Microsoft Pluton Security processor and the Microsoft Cobalt processor. Recently I had the chance to co-author a patent and successfully submit it to the US Patent Office. Additionally, given Microsoft's position in the AI frenzy, I have been taking advantage of chances to enable the use of LLMs in my organization's day-to-day engineering workflows. It's been a fantastic experience so far.
I also worked as a Teaching Assistant with the Virginia Tech Computer Science
department for five semesters. I spent four of those five semester working on
CS 3214 - Computer Systems, both as an undergraduate and graduate TA.
This class is notorious for its challenging assignments and comprehensive C-based
software development, but I absolutely loved it.
I got the chance to assist hundreds of students with complex systems programming
projects involving Linux processes, multithreading, memory management,
virtualization, security, and networking, all with a heavy emphasis on writing
robust and high-performing code.
During my M.S. degree at Virginia Tech (2020-2022), I created Gurthang, a fuzzing framework designed specifically for fuzz-testing web servers. I created a novel fuzzing harness for AFL++ capable of sending multiple payloads to a web server simultaneously, allowing for effective testing for concurrency-related bugs induced when servers handle multiple requests at once. Read more about it here!
Software Engineering
Object-Oriented Programming
Algorithms & Data Structures
Operating Systems
Processes
Multithreading
Memory Management
Networking
Virtualization
Linux Kernel
Fuzzing
Software Security
Network Security
Cryptography
Cache Timing Attacks
Speculative Execution Attacks
C
C++
x86 Assembly
Arm64 Assembly
Python
Shell Scripting
Java
Rust
C#
JS/TS
HTML/CSS
Vim Script
Linux
Bash
WSL
Git
Vim
GDB
Valgrind
QEMU
strace
AFL/AFL++
libfuzzer
Radamsa
Wfuzz
Kali Linux
Burp Suite
nmap
tcpdump
Wireshark
John the Ripper
GitHub
Azure
Azure DevOps
Creating things - especially things I dreamed up myself - is incredibly rewarding and one of my greatest passions in life. Mix that with a couple of computer science degrees and you wind up with lots of coding projects. Here are a few notable mentions of things I've created (or are still creating):
I also worked on some pretty neat projects in school. Here are some of my favorites:
Other stuff I've built into this website:
While at Virginia Tech, I played trumpet in the Marching Virginians for five years. Joining that band was one of the best decisions I have ever made. If you happen to be reading this as a Tech student and are on the fence about auditioning, let me help you: do it.
Fictional and nonfictional people alike have some great things to say. Here are some I like (more to come!):
Books are amazing. Here are some I really enjoy.