Project Aegis
Prototype

Prototype

Project Aegis is an AI-assisted security assessment prototype I developed for my Computer Science final project. A customer creates a session, connects a network tunnel, and follows an agent’s activity through the web app.

The platform controls which tools the agent can run and which networks it can reach. I wanted those limits enforced by the system, rather than left to the model’s instructions.

Current prototype

The prototype includes a customer and admin web app, a backend for sessions and stage lifecycle, and a service inside the assessment environment. It can create a session, attach a tunnel profile, start the stage flow, and stream basic status to the interface.

The stage service, called the Shim, currently exposes health checks, a tool list, and a guarded shell endpoint for local development. Shell execution is disabled by default. When enabled, commands have timeouts and destructive command patterns are blocked. This is an early implementation, with more isolation and policy work planned.

Session isolation

The production design calls for a disposable Firecracker microVM for each session, running a Kali-based image. A read-only base image supplies the tools; a separate scratch disk holds temporary output and logs.

The orchestrator would cap resources and session duration, inject tunnel credentials for that session, and destroy the VM and scratch disk when it ends.

Network scope

The planned network policy blocks traffic by default. It permits stage management, tunnel setup, assessment traffic to approved customer networks, and uploads back to Aegis.

Customer traffic would go through the tunnel, with assessment traffic stopped if the connection drops. DNS would also need to follow the tunnel or use an approved resolver.

Activity and reports

The reporting design includes tool output, collected artifacts, tunnel state, and session events. Customers would be able to follow an assessment and review the evidence behind its findings. Admins would have a view of running sessions and a way to terminate them manually.

© 2026 Kitsune