This page contains information on a few selected projects. Anything not listed here can be found on my Github account at https://github.com/benjholla.
JReFrameworker
JReFrameworker is an Eclipse plugin for creating projects that allow the user to write annotated Java source that is automatically merged or inserted into the Java runtime. It was designed as a more user friendly way to write managed code rootkits (MCRs) for the Java runtime environment. The framework supports developing and debugging attack modules directly in the Eclipse IDE.
Atlas Plugins
I’ve written a few plugins for Atlas (a program analysis framework).
- AtlasWBP - An Atlas frontend for processing Java WAR binaries.
- Toolbox Commons - A set of common utilities for program analysis using Atlas.
- Starter Toolbox - A barebone starter toolbox for building a domain specific toolbox on top of Atlas. This plugin supports a headless bulk analysis mode.
- Software Metrics - A program analysis assignment to calcuate software architecture metrics for afferent and efferent coupling.
- Android Essentials Toolbox - A set of building blocks for analyzing Android apps with Atlas. This plugin implements a mapping of Android permissions to their corresponding API methods for multiple versions of Android.
- SIDIS Toolbox - A successor to Statically-informed Dynamic (SID) Analysis for hybrid static and dynamic analysis enabling Statically-informed Dynamic (SID) analysis and Dynamically-informed Static (DIS) analysis.
- Projected Control Graph (PCG) Toolbox - A toolbox for transforming Control Flow Graphs into compact Projected Control Graphs with respect to a set of control flow events.
- Immutability Toolbox - A toolbox for object immutability analysis and method purity (side effect analysis).
- Points-to Toolbox - An Atlas native points-to analysis and utilities for enabling client analyses.
- Call Graph Toolbox - A toolbox for visually experimenting with implementations of nine different call graph construction algorithms using partial or whole program analysis.
- Slicing Toolbox - A toolbox for creating Program Dependence Graph (PDG) based program slices.
BrewLog / SoapLog
BrewLog is a public homebrew log with version control! I built BrewLog as an extension to the Jekyll-now theme to track my homebrew beer and wine measurements as well as tasting notes, but it’s ready to be forked and deployed free on Github by anyone. SoapLog extends BrewLog for a public soaping log with an integrated lye calculator and version control.
QuestionableCode.org
QuestionableCode.org is project to audit every Android binary application installed on a Samsung Galaxy Tab 4 tablet.
ZombieStrategies.com
ZombieStrategies.com was a website where anyone could add, modify, or delete emergency supply locations (in case of a zombie apocalypse) along with a categorized list of supplies at each location. The locations database was seeded with over a 100 thousand locations including firearm dealers, gas stations, Walmarts, Targets, hospitals, hardware stores, and grocery stores. Due to realistic life demands I was unable to maintain the project and released most of the source code on Github. This project was the result of a personal programming ambition and several years of scope creep.
Cyber Defense Competition Scenarios
I’ve developed several vulnerable web applications and challenge anomalies for use in cyber defense competitions at Iowa State University. For more details see https://github.com/ISEAGE-ISU.
Social Video Service (PHP) Completely Digital Clips 2015 IT Olympics |
---|
Competition Anomalies |
Timesheet Application (C) Cloud Developers Club 2014 ISU National CDC |
---|
Competition Anomalies |
Blackbook (Scala) Cyber Disease Center 2013 ISU CDC |
---|
Competition Anomalies Promotional Video |
Bad Twitter Clone (PHP) Colonial Data Center 2010 IT Olympics |
---|
Web Application Source |