Windows-Gast-Agent: vm.port_scan-Handler (Get-NetTCPConnection/UDP) — #16-Shape spiegeln #27
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ziel
Windows-VM-Ports lokal im Gast scannen — analog zu #16 (Linux
ss, jetzt drin mit VM-Guest-Agent 1.7.0). Statt externem nmap vom Node liefert der Windows-Gast seine lauschenden Ports inkl. Prozess & Exposure.Wichtig: #16 ist command-getrieben (nicht im periodischen Frame)
Der Linux-Agent beantwortet einen
vm.port_scan-Command (VM-Guest-Agent/src/main.rs:448):Entry-Shape (aus
VM-Guest-Agent/src/collect/linux.rs:299), sortiert nach (protocol, port):exposure_for(collect/mod.rs:118):127.0.0.1/::1→"local", alles andere →"public".Der Backend-Ingest + das Senden des
vm.port_scan-Commands existieren bereits (durch #16). Der Windows-Agent hat aber keinenvm.port_scan-Arm (Windows-VM-Guest-Agent/src/main.rs:264match, fällt in_ =>bei Z. 335) → liefert keine Ports. Kein Backend-Change nötig.Soll (reiner Windows-Agent)
1.
Windows-VM-Guest-Agent/src/collect.rs:collect_ports()Neue
pub async fn collect_ports() -> Valueviarun_ps, exakt dieselbe Entry-Shape wie Linux. PowerShell:In Rust parsen, je Entry
exposureableiten (127.0.0.1/::1→local, sonstpublic— identisch zuexposure_for) und"state":"open"setzen, nach (protocol, port) deduplizieren + sortieren. RückgabeValue::Array.2.
Windows-VM-Guest-Agent/src/main.rs:vm.port_scan-ArmIm
match action.as_str()(Z. 264) vor_ =>(Z. 335) ergänzen — 1:1 wie Linux, nurscanner:"powershell":collect_portszum Import (Z. 18) hinzufügen.Akzeptanz
vm.port_scanan einen Windows-Gast → Antwort enthältdata.portsin der #16-Shape (protocol/port/address/process/exposure/state).cargo buildfür den Windows-Target grün — vor Merge bauen (hier nicht kompiliert).Branch
feat/win-agent-portscanWindows Agent - Port Scan auf Agent umstellento Windows-Gast-Agent: lokalen Port-Scan (Get-NetTCPConnection/UDP + Prozess) statt externem nmapWindows-Gast-Agent: lokalen Port-Scan (Get-NetTCPConnection/UDP + Prozess) statt externem nmapto Windows-Gast-Agent: vm.port_scan-Handler (Get-NetTCPConnection/UDP) — #16-Shape spiegeln