Spectral/src/main.rs
2026-04-10 22:11:39 -04:00

20 lines
732 B
Rust

mod kvm;
mod mem;
mod qemu;
fn main() {
let vm = qemu::find_windows_vm().expect("no quickemu Windows VM found");
println!("[+] pid={} vm_fd={} vcpu_fds={:?}", vm.pid, vm.vm_fd, vm.vcpu_fds);
let sregs = kvm::get_sregs(vm.vcpu_fds[0]).expect("KVM_GET_SREGS failed");
println!("[+] vcpu0 CR3={:#018x}", sregs.cr3);
let regs = kvm::get_regs(vm.vcpu_fds[0]).expect("KVM_GET_REGS failed");
println!("[+] vcpu0 RIP={:#018x} RSP={:#018x}", regs.rip, regs.rsp);
let guest = mem::GuestMem::attach(vm.pid).expect("failed to map guest RAM");
for r in &guest.regions {
println!("[+] mem region GPA {:#010x}..{:#010x} (HVA {:#010x})",
r.gpa_base, r.gpa_base + r.size, r.hva_base);
}
}