Dwa skanowania portów tej samej witryny mogą się różnić, ponieważ nazwa między uruchomieniami została rozwiązana na inny adres, a nie dlatego, że tunel zmienił to, co ujawnia cel. Nazwa hosta to instrukcja wyszukiwania, a Nmap podąża za nią w momencie skanowania. Gdy resolver odpowie innym rekordem, drugie skanowanie zmierzyło inną maszynę.

Ustal adres numeryczny, a porównanie znów nabiera sensu. Wszystko inne w raporcie, od pomiaru czasu po urządzenia pośrednie, pozostaje osobną zmienną, która wymaga własnej kontroli.

Dwa eksperymenty, które w raporcie wyglądają identycznie

Porównaj nazwę z nią samą, a zmieniłeś co najmniej dwie rzeczy naraz: ścieżkę, którą podążają twoje pakiety, i cel zwrócony przez resolver. Różnicy w wyniku nie można przypisać żadnej z nich. Ta niejednoznaczność jest zwykłym powodem, dla którego skanowanie przed i po zamienia się w spór, którego nikt nie potrafi rozstrzygnąć.

Porównaj adres z nim samym, a cel jest ustalony z konstrukcji. Wszystko, co nadal się różni, należy do ścieżki, adresu źródłowego, filtrowania pomiędzy lub stanu samej maszyny. Usunąłeś jedną zmienną, co nie jest tym samym, co usunięcie wszystkich.

Zapisz, który z tych dwóch eksperymentów faktycznie wykonałeś, zanim wyciągniesz jakikolwiek wniosek z tabeli portów. Różnica brzmi akademicko, dopóki raport nie stwierdzi, że VPN zablokował port, który nigdy nie był otwarty na adresie osiągniętym za drugim razem.

ComparisonWhat stays fixedWhat a difference can mean
Name against nameThe string you typedResolver answer, answer order or split-horizon policy changed
Address against addressThe numeric destinationSource path, filtering or service placement changed

Najpierw rozwiąż, potem skanuj zapisany adres

Oddziel rozwiązywanie od sondowania, aby dwa fakty trafiły w różne miejsca. Zapytaj system, co rozwiązał, zapisz tę odpowiedź, a następnie podaj Nmapowi dosłowny adres. Powtórz te same dwa polecenia z tunelem opuszczonym i podniesionym.

getent hosts scan.example.net
dig +short scan.example.net A
nmap -Pn -sV -p 443,8443 192.0.2.40

Flaga -Pn ma tu znaczenie, ponieważ host ignorujący sondy wykrywania zostałby inaczej zgłoszony jako niedostępny, a pusty wynik zostałby błędnie odczytany jako zamknięty port. Używaj -sV tylko wobec celów zatwierdzonych przez operatora; sondowanie wersji jest głośniejsze niż samo połączenie i należy do pisemnego zakresu.

Dokumentacja specyfikacji celu Nmapa mówi wprost, że nazwa hosta jest rozwiązywana na adres przed skanowaniem i że przy kilku zwróconych adresach narzędzie skanuje pierwszy, chyba że zażądasz wszystkich. Nic w tym zachowaniu nie jest specyficzne dla VPN. Podzielony DNS, inny resolver lub równoważnik obciążenia odpowiadający w nowej kolejności dają ten sam efekt bez żadnego tunelu.

Trzymaj rozwiązaną wartość obok wyniku skanowania, wraz z rodziną adresów, zestawem flag i znacznikiem czasu. Wyszukiwanie odwrotne zwracające nazwę firmy to kolejna obserwacja, a nie dowód, który backend odpowiedział.

Co zmieniony stan portu może, a czego nie może ci powiedzieć

Gdy cel jest ustalony, port przechodzący z otwartego na filtrowany zwykle wskazuje na ścieżkę. Pomyśl o ACL wyżej w łańcuchu, zaporze stanowej albo dostawcy, który traktuje wyjście tunelu inaczej niż wyjście domowe. Zawęź to, testując drugi zatwierdzony adres w tej samej podsieci, gdy zakres na to pozwala, ponieważ zmiana nazwy hosta ponownie wprowadziłaby pytanie resolvera. Jedna zmienna na uruchomienie to cała metoda.

Port, który pozostaje otwarty, podczas gdy zmienia się baner usługi, to inna historia. Ten wzorzec pasuje do frontendu rozdzielającego połączenia między backendy, a żadna ilość skanowania z twojej strony nie wskaże najemcy za nim.

Czego skanowanie nigdy nie mówi, to intencja. Filtrowany port jest wynikiem polityki, a nie dowodem, że ktoś wybrał twój tunel, a otwarty port nie jest dowodem, że aplikacja za nim będzie ci służyć. Skorelowój z logami komponentu, którym zarządzasz, zanim napiszesz którąkolwiek z tych dwóch historii.

Zapisuj wyniki, aby porównanie przetrwało przegląd

Użyteczny zapis zawiera żądaną nazwę, rozwiązany adres i jego rodzinę, dokładne flagi, używany adres źródłowy oraz autoryzację obejmującą cel. Dodaj czas, ponieważ odpowiedzi DNS się obracają, a raport bez znaczników czasu dwa razy zaprasza ten sam spór. Dodaj też wersję skanera, ponieważ domyślne zachowanie sondowania przesuwa się między wersjami. Jeśli dwa uruchomienia użyły różnych metod, traktuj je jako różne eksperymenty i powiedz to w nagłówku, nie w przypisie.

Oznacz ustalenie tym, czym jest: różne cele, różne ścieżki źródłowe albo różnica wciąż niewyjaśniona. Ten słownik utrzymuje raport ze skanowania uczciwym i powstrzymuje odpowiedź resolvera przed ponownym opublikowaniem jako zdarzenie przechwycenia VPN. Następnym krokiem jest zwykle jeszcze jedno uruchomienie z ustalonym adresem, a nie szersze skanowanie.

Powiązane artykuły