feat: report what listens, and which Windows service it is

One script: Get-NetTCPConnection -State Listen, Get-NetUDPEndpoint, the
processes holding them and Win32_Service's PIDs. A process running one
service names it; a shared svchost runs several, and which of them holds
the socket Windows does not say, so it names none. http.sys sockets
(WinRM, IIS, SMB) belong to the System process.

The fixture is synthetic: no Windows host was at hand. tools/harvest.py
records the real output. For netOrk#673.
This commit is contained in:
Christian Manivong committed 2026-10-07 07:20:27 +02:00
1 parent 1ce42ef099
commit a6814ad92e
7 files changed
+185 -2

No files matched your search

+2
View File
@@ -5,6 +5,8 @@
- PowerShell Remoting transport over WinRM (pypsrp), one runspace pool per connection.
- `get_facts`, `get_interfaces`, `get_interfaces_ip`, `get_arp_table`, `get_route_to`.
- `get_services` and `manage_service` (start, stop, restart, enable, disable).
- `get_listening_sockets`: every listening TCP and bound UDP socket with its process and,
where the process runs one Windows service, that service (netOrk #673). Fixture synthetic.
- Discovery fingerprints: WinRM ports 5985/5986, `Microsoft-HTTPAPI` / `Microsoft-IIS`
server headers, Windows SNMP `sysDescr`, OpenSSH-for-Windows banner.
- `tools/harvest.py` to record real script output as test fixtures.