Skenujete port VPN, nedostanete odpověď a usoudíte, že služba nefunguje nebo že je firewall zavřený. U WireGuardu a u řídicích kanálů OpenVPN, které nesou vlastní autentizaci, tento závěr neplatí. Datagram bez platného autentizačního materiálu je zahozen bez odpovědi, takže ticho je to, jak zdravá služba vypadá zvenčí. Sonda je špatná dřív, než je špatný tunel.

Ticho je protokol, ne závada

UDP nemá navazování spojení, takže neexistuje SYN ani potvrzení, které by skeneru umožnilo rozeznat otevřený port od filtrovaného. Sonda přichází jako izolovaný datagram a služba ověřuje, zda odpovídá protokolu, který očekává. Když neodpovídá, paket se zahodí, a zahození je dokumentované chování, nikoli porucha.

WireGuard kryptograficky ověřuje své zprávy handshake a všechno, co neprojde, ignoruje. OpenVPN s tls-auth nebo tls-crypt dělá totéž pro svůj řídicí kanál. V obou případech se libovolný payload nikdy nedostane do fáze obrácené k uživateli, takže není čím odpovědět a není chybu, kterou vrátit.

TCP by vám dal reset ze zavřeného portu. UDP vás nechává v nejistotě, kterou skenery řeší vypsáním otevřený nebo filtrovaný místo hádání.

Co skener může a co nemůže usoudit

Výsledek skenování je tak informativní, jak informativní je odeslaný payload. Seřaďte možná pozorování podle toho, co každé z nich skutečně potvrzuje:

ProbeObserved resultWhat it supports
Empty datagramNo replyNothing beyond the fact that UDP was used
Random payloadNo replyConsistent with an authenticated service
Valid handshake from a real clientA protocol replyThe service is alive and reachable
ICMP port unreachableUnreachable messageThe host answered, usually because nothing listens

Čtěte třetí řádek jako jediný pozitivní test v seznamu. Vyžaduje skutečný profil, skutečný klíč a správný endpoint, což je přesně to, co obecný skener nemá.

Podívejte se na oba konce cesty

U serveru, který spravujete, zachyťte provoz na rozhraní, než uděláte jakýkoli závěr, a potom se služby zeptejte, co viděla. Oba příkazy vyžadují root na bráně:

tcpdump -ni any udp port 51820
tcpdump -ni any udp port 1194
wg show

Pokud se na rozhraní neobjeví žádný paket, cesta ho zahodila dřív, než služba cokoli viděla, a další zastávkou je směrování a filtrování. Pokud pakety dorazí, ale handshake se nedokončí, služba je dostupná a neshoda je v klíčích, konfiguraci endpointu nebo verzi protokolu. Toto srovnání odpovídá na otázku, kterou skener nedokázal. Spusťte ho, když se skutečný klient pokouší připojit, ne když skener opakuje sám sebe.

Změňte test, ne ochranu

Lákavou zkratkou je vypnout ochranu řídicího kanálu, aby diagnostika dostala odpověď. To vyměňuje skutečnou bezpečnostní vlastnost za hezčí výsledek skenování a je to špatný směr. Použijte místo toho platný profil ze schválené sítě a poznamenejte endpoint a čas, aby bylo srovnání opakovatelné.

Nejužitečnější test je diferenciální: stejný profil na cestě, která funguje, a na cestě, která nefunguje. Pokud funkční cesta vytvoří handshake a selhávající cesta nevytvoří na rozhraní nic, lokalizovali jste přerušení, aniž byste cokoli oslabili.

Neodpovězený UDP paket tedy nedokazuje ani to, že je server offline, ani to, že je bezpečný. Dokazuje, že tato sonda, na této cestě, v tomto okamžiku nebyla přijata.

Související články