Guest VMs
Independent virtual machines, each with its own guest kernel. This is the layer RootView exists to protect: it is where an eBPF rootkit runs, and where it hides.
| Plan (Aug 31) | Plan, Presentation |
|---|---|
| Milestone 1 (Sep 28) | Requirement, Design, Test, Presentation, Progress Evaluation |
| Milestone 2 (Oct 26) | Presentation, Progress Evaluation |
| Milestone 3 (Nov 23) | Presentation, Progress Evaluation |
Florida Tech senior design · 2026-2027
RootView detects eBPF rootkits in a running Linux guest by reading the guest's kernel memory from outside the guest, on the KVM host, where the malware has no way to reach.
Where a guest actually runs, from the hardware up through the hypervisor to the VMs themselves. RootView adds no layer here. It watches this stack from the host side.
Point at a layer, or tab to it, to read what it does
Layer detail
Nothing selected.
Independent virtual machines, each with its own guest kernel. This is the layer RootView exists to protect: it is where an eBPF rootkit runs, and where it hides.
The host's Linux kernel with the KVM module loaded, creating, scheduling and isolating the guests above it. RootView runs here, beside the hypervisor rather than inside anything it is watching.
The physical machine underneath everything: a CPU with virtualization extensions (VT-x or AMD-V), memory and storage.
RootView's own layers, built outward from the guest. The colour brightens with each ring: the VM at the centre is opaque, and every layer around it adds a little more visibility into what is happening inside.
Point at a ring, or tab to it, to read what it does
Layer detail
Nothing selected.
The guest being monitored. From inside, a rootkit can hide itself from the guest's own tools, so RootView treats nothing reported from in here as evidence.
Virtual machine introspection, built on LibVMI. Reads the guest's memory directly from the host, so a compromised guest kernel cannot lie about its own state.
The detection logic. Walks the guest memory that VMI hands it to enumerate eBPF programs and maps, and checks what it finds against known rootkit behaviour.
A researcher-facing interface over the same introspection data, for building eBPF analysis and detection tooling beyond the checks that ship with the engine.
Ties the detection logic, VMI and the Python API together into one running service. This is the layer the web server talks to.
The interface: a dashboard that answers whether anything is wrong, and an introspection view for reading the raw eBPF state the engine is working from.
The team has limited experience with KVM and VMI and must learn how to access guest memory, processor state, and page tables from outside the guest.
Kernel structures change between versions, so RootView must investigate ways to identify and interpret structures without relying entirely on hardcoded offsets.
The team must learn how eBPF works internally, how it can be abused by rootkits, and what characteristics of malicious activity can be observed.
Establishes the basic VMI infrastructure.
Expands RootView into a Linux and eBPF introspection platform.
Turns the backend into a reusable research platform.