Siddharth Mishra
Reverse engineering · low-level systems · security research
Experience
PhD, Computer Science (Cybersecurity)
Arizona State University
- Currently underway — details to follow.
Software Consultant
RevEng.AI, Binary AI LTD
- Fully develop and maintain software plugins for Rizin, Cutter, Radare2 & Iaito reverse engineering tools.
- Keep up with the fast, ongoing changes in RevEng.AI’s API and features.
- Weekly meetings to sync ideas between different plugin maintainers and the RevEng.AI team.
Google Summer of Code '23 Contributor
RizinOrg
- Uplifted MIPS and NanoMIPS architecture instructions to the RzIL intermediate language.
- Augmented BAP’s QEMU to support trace testing of MIPS.
- Trace-tested uplifted instructions to verify the correctness of RzIL code execution.
Open Source
Rizin & Cutter plugins using RevEngAI’s API to bring AI features into reverse engineering and binary analysis workflows. Part of my contract work.
Radare2 plugin that uses RevEngAI’s API to provide AI features in the radare2 command line tool. Part of my contract work.
A C library that helps C programs talk to RevEng.AI’s REST API — uses libCURL for requests and cJSON to parse JSON responses into structured C data. Part of my contract work.
Ongoing contributions to RizinOrg’s rizin reverse engineering CLI — some merged, some in progress. Currently rewriting the GNU v2 & v3 C++ demanglers for rz-libdemangle; the W.I.P PR is here.
Projects
A C11 “standard library” that brings modern, generic and type-safe programming to plain C. Everything is opt-in at build time — you compile only what you use, and a single #include <Misra.h> pulls in whatever the build enabled.
A cross-platform window library in C, built to follow my own coding principles rather than reach for existing solutions. Currently targets Linux via XCB.
A retained-mode (RmGUI) cross-platform GUI library in C — my own take on application GUIs, companion to CrossWindow.
A fast, from-scratch neural network class in C++. I also wrote an accompanying tutorial on GeeksforGeeks.
A thin C++ interface bridging the Vulkan C API with C++ containers, to make Vulkan less verbose to work with.
A small game engine / renderer written while learning Vulkan, following vkguide.dev and vulkan-tutorial.com.
A feature-rich IDE for C/C++ development, written in C++ — a long-running project built largely to learn what really goes into a full IDE.
A hobbyist operating system written in my first semester of college, out of curiosity about how operating systems are actually built.
An unsupervised, grammar-based fuzz case generator for programs that take text input. It takes an arbitrary context-free grammar in EBNF, parses it into an internal representation, then traverses the graph along random routes — each terminal expansion grows the string by one, enabling soft length limits as the probability of picking a non-terminal decays toward a graceful stop. A personal research project; source is closed, but development was live-streamed on YouTube.
A native GUI for an r2wars-like game on a custom virtual machine (xvm). Written just after my college entrance exams, while exploring VMs and desktop application development.
Basic exploit scripts written while learning binary exploitation — mostly printf and stack-buffer-overflow vulnerabilities.
Education
Ph.D., Computer Science (Cybersecurity)
Arizona State University
- Doctoral research in systems & software security.
B.Sc. (Hons.) Mathematics & Computing — Dept. of Mathematics
Birla Institute of Technology
- GPA: 8.59 / 10.0
- Dissertation: Comprehensive Performance Analysis of 5G Network Stations using the MOORA Method.
Relevant Coursework
- Formal Languages & Automata Theory
- Operating Systems
- Database & Management Systems
- Object Oriented Programming (Java)
- Probability & Statistics