Jak przeskanować zaporę ogniową, aby znaleźć otwarte porty wychodzące?

9

Szukam narzędzia, którego mogę użyć w sieci z zaporą ogniową do skanowania zapory sieciowej w celu znalezienia otwartych portów wychodzących.

Przeprowadziłem pewne badania i znalazłem Firewalk'a, ale nie był on utrzymywany przez 10 lat i wydawało się, że nie działa dla mnie, gdy go wypróbowałem.

Zrobiłem trochę googlingu i znalazłem kilka stron mówiących, że możesz to zrobić za pomocą nmap, ale nie mogłem też tego uruchomić.

Czy ktoś wie o lepszym sposobie niż skonfigurowanie skrzynki poza zaporą ogniową, nasłuchując na każdym porcie i próbując przeskanować ją od wewnątrz?

Mike Akers
źródło

Odpowiedzi:

4

Załóżmy, że masz trzy podsieci i serwer w jednej z nich, ale chcesz zobaczyć, jakie reguły są otwarte dla pozostałych dwóch. Przeprowadzam skanowanie nmap przeciwko pozostałym dwóm z serwera. Zazwyczaj używam tej linii:

nmap -v -oA `hostname`_full-nmap-`/bin/date +%y%m%d` -P0 -sS -F -n --host_timeout 240000 --max_rtt_timeout 300 --initial_rtt_timeout 2000 --max_parallelism 250 192.168.123.0/24 192.168.234.0/24

Możesz również zastosować podobne koncepcje routingu do Internetu, ponieważ nmap zidentyfikuje, które porty są filtrowane.

Warner
źródło
Dzięki za to; składnia fyi nmap została zaktualizowana na kilka sekund, a P0 jest przestarzałe; zaktualizowane polecenie: nmap -v -oA `hostname`_full-nmap-`/bin/date +%y%m%d` -Pn -sS -F -n --host_timeout 240 --max_rtt_timeout 3 --initial_rtt_timeout 2 --max_parallelism 250 <IPADDRESS>
jhaagsma
3

Oto co zrobiłem:

Skonfiguruj jeden komputer w testowanej sieci, a drugi w Internecie (po drugiej stronie zapory). Powinieneś dobrze korzystać z Windowsa lub Linuksa (użyłem CentOS). Miałem publiczny adres IP, ale myślę, że działałoby to z NAT 1: 1.

Na maszynie internetowej uruchomiłem polecenie, które otworzyło każdy port na moim komputerze za pomocą nc. Zrobiłem

for i in `seq 1 65000`; do nc -l $i &; sleep 1; done

Uśpienie ma na celu zapobieganie odradzaniu się nadmiernej liczby procesów netcat jednocześnie. Poszło dobrze, ale zajęło 65000 sekund (w nocy).

W testowanej sieci po prostu uruchamiam

nmap -p- -PN <IP>

i czekaj na wyniki.

Pedro Brito
źródło
Witaj w serverfault! Zredagowałem twoją odpowiedź, aby lepiej pasowała do stylu innych odpowiedzi; nie krępuj się, edytuj siebie, by zobaczyć przeceny. Zauważ, że grób (`) jest używany do oznaczenia sekcji kodu, więc użycie go jako apostrofu (') dezorientuje silnik przeceny :)
Falcon Momot
1

Firebind.com zapewnia tę usługę.

Pozwala przetestować łączność wychodzącą w dowolnym zakresie portów UDP lub TCP. Testowanie zakresów większych niż 100 portów wymaga bezpłatnego konta.

AJay
źródło
5
Pracujesz dla nich?
jscott
0

Ponieważ potrzebujesz odpowiedzi na te porty, twój pomysł posiadania maszyny po obu stronach zapory jest najlepszy. Bez tej maszyny docelowej port może być otwarty na samej zaporze, ale ponieważ nie będzie (nie powinien?) Odpowiadać na ruch na tym porcie, nie będziesz tego świadomy. W takiej sytuacji nie byłbyś w stanie stwierdzić różnicy między portem zamykanym zaporą ogniową po prostu upuszczaniem pakietów a portem otwartym, ale nic z drugiej strony nie odpowiada.

John Gardeniers
źródło