Security doesn't exist, no system is safe

You are not logged in.

#1 2015-04-05 02:30:45

Mirko
Significant
Registered: 2012-01-04
Posts: 32

[Tutorial] Jak obsługiwać program Nmap?

Poradnik będzie stosunkowo długi ze względu na swoją szczegółowość. Wiążę się to jednak z faktem, że pośpieszne skanowania mogą dostarczyć nam mało przydatnch informacji. Najważniejszymi rozdziałami są tutaj : wstęp, ustalenie co skanujemy, wykrywanie hostów, sposoby skanowania oraz omijanie zapór ognowych i IDS. Jeżeli czujesz niedosyt wiadomości, zalecam zapoznać się z dokumentacją programu. I jeszcze jedno : poradnik może zrozumieć tak samo administrator sieci, jak i osoba nieorientująca się, czym jest protokół TCP/IP. Nie tłumaczę podstawowych pojęć jak UDP, SYN, jednakże mając równorzędnie otwartych 7 kart w wikipedii wszystko zrozumiesz.

Network Mapper
Nmap jest narzędziem typu open source, którego przeznaczeniem jest eksploracja sieci i audytów bezpieczeństwa. Wykorzystując niskopoziomowe pakiety przesyłane do konkretnych adresów sieciowych, może być źródłem informacji o dostępności hosta, typu systemu operacyjnego na jakim pracuje użytkownik, rodzaju firewalla, a także wielu innych informacji, które czerpie ze swojej bazy danych, obejmującej obecnie 450 oryginalnych odcisków stosu TCP/IP.  Nmap jest zdecydowanie najpopularniejszym narzędziem wykorzystywanym przy skanowaniu sieci, jednakże odpowiednie firewalle mogą bez problemu go blokować. Dlatego tak ważne jest łączenie parametrów, korzystanie z ustawień niedomyślnych (gdy trzeba) oraz logika, hierarchia, kolejność podejmowanych działań. Nmap stanowi bardzo przydatne, jednakże niekoniecznie niezawodne narzędzie. Urser, który ogranicza swoje skanowanie do wypisania jednego polecenia może spotkać się z brakiem interesujących go informacji. Jednakże dobrze skonfigurowana lista poleceń czyni z Nmapa najlepszą bron wojenną. W jaki sposób możemy wykorzystać informacje dostarczone przez Nmap? Jak w każdym wypadku – i w legalny i w nielegalny sposób. Znając czyjś system operacyjny, zdecydowanie łatwiej podłożyć pod niego odpowiedniego exploita. Znając ISP – bez trudu zazwyczaj możemy zlokalizować daną osobę. Korzystając z niektórych opcji, możemy przeprowadzić testy penetracyjne. Jak już zakończyłem reklamę, za którą Nmap mi oczywiście zapłacił w BTC, bo nic za darmo nie ma na tym świecie  – przejdźmy do rzeczy.

Stany portów
Nmap (w przeciwieństwie do wielu innych skanerów) wyróżnia sześć stanów portu : otwarty, zamknięty, filtrowany, niefiltrowany, otwarty | filtrowany i zamknięty | filtrowany. Jeśli port jest:
otwarty – to pakiety UDP lub połączenia TCP są akceptowane na tym porcie. Porty otwarte mogą być nieocenionym źródłem wiedzy o usługach dostępnych w sieci;
zamknięty –  to połączenia inicjowane przez Nmapa są odbierane, jednakże w żaden sposób obsługiwane. Porty zamknięte są pomocne przy sprawdzaniu aktywności hosta;
filtrowany – to Nmap nie jest w stanie ustalić, czy port jest otwarty ze względu na działające firewalle. Taki port dostarcza znikomą ilość informacji. Powoduje również, że Nmap jest zmuszony wysyłać wielokrotnie pakiety (w celu uniknięcia ich zaginięcia w wypadku gwałtownego przeciążenia sieci), co znacznie spowalnia proces;
niefiltrowany – to port jest dostępny, jednakże nie można ustalić jego dokładniejszego stanu. Nie wiadomo, czy ów port jest w rzeczywistości otwarty czy zamknięty;
otwarty | filtrowany – to port jest albo otwarty albo filtrowany;
zamknięty | filtrowany – to port jest albo zamknięty albo filtrowany;

Instalacja programu Nmap
Nie lubię generalnie zbyt wielu rzeczy narzucać, sugerować albo odbierać komuś wolną wolę. Mimo to jednak uważam, że warto by było posiadać zainstalowany program, zanim zacznie się na nim działać i jakoś w tym przekonaniu od lat ślepo tkwię. Nmap można pobrać z strony głównej  https://nmap.org/download.html, następnie rozpakować oraz przy pomocy terminala zainstalować.

Po zainstalowaniu programy zaczynamy jego obsługę
W terminalu jako root wpisz kontrolnie polecenie 'nmap -O scannme.nmap.org'. Możesz nie rozumieć teraz dlaczego akurat wybrałeś ten, a nie inny parametr. Jeśli wyniki w jakikolwiek sposób są dla ciebie niezrozumiałe, nie zniechęcaj się. To jedynie próba oswojenia się z programem. Nmap właśnie przeskanował twoje łącze korzystając z domyślnych opcji skanowania. A teraz użyj komendy nmap -h, wyświetlającą pakiet Nmapa. Omówię teraz poszczególne parametry.

Określenie naszego obiektu westchnień
Żeby skanowanie można było nazwać w jakikolwiek sposób sensownym, musi składać się z dwóch głównych członów : skanowania oraz obiektu skanowanego. Dokładne określenie obydwóch argumentów stanowi klucz do sukcesu. Zajmę się teraz samym obiektem skanowania, czyli tym, co chcemy skanować. W najprostszej wersji jest to zwykły adres IP np. nmap -O 73.14.180.255. Jednakże program często wykorzystywany jest do skanowania znacznie obszerniejszych fragmentów sieci, aniżeli jeden, pojedynczy adres IP. Bywa, że chcesz przeskanować całą sieć, dlatego też Nmap obsługuje format CDIR. Możesz dodać do adresu określoną liczbą bajtów, co spowoduje przeskanowanie wszystkich adresów od X do Y. Przykładowo 192.168.10.0/24 przeskanuje 256 adresów pomiędzy 192.168.10.0 i 192.168.10.255 włącznie. Załóżmy, że host scanme.nmap.org ma adres 205.217.153.62, podanie scanme.nmap.org/16 spowoduje przeskanowanie 65,536 adresów IP pomiędzy 205.217.0.0 i 205.217.255.255. Najmniejszą dopuszczalna wartość to /1, co stanowi połowę Internetu. Największa wartość to 32, która oznacza skanowanie pojedynczego adresu IP. Oczywiście kombinować można dalej i rozpatrywać niestandardowe przypadki. Nmap oferuje także niestandardowe opcje wybierania celu, m.in. :

-iL <plik wejściowy>

Odczytanie adresu z pliku. Opcja ta często jest wykorzystywana przy skanowaniu wielu adresów IP.  Niewygodnie jest urserom zapisywać po kolei adresy w wierszu poleceń, stąd też wczytanie wielu adresów z pliku ułatwia pracę.

-iR <liczba hostów>

Skanowanie losowych hostów. Jeżeli nie masz sprecyzowanego celu, możesz pobawić się w skanowanie pierwszych, lepszych adresów.

--exclude <host1, host2...>

Wykluczenie z skanowania. Chcemy przeskanować adresy od A do K, ale z ominięciem E. Dlatego informujemy o tym skaner tą właśnie komendą.

--excludefile <plik wejściowy>

Wykluczenie z skanowania adresu z pliku. Adres jest pobierany z dołączanego przez nas pliku oraz pomijany podczas skanowania.

Wykrywanie hostów
Pierwszorzędną czynnością podczas rekonesansu sieciowego jest redukcja, często bardzo obszernych, adresów IP do tych, które są w danym momencie aktywne. W dużym skrócie można powiedzieć, że program robi to rozsyłając po sieci pakiety i czekając na odpowiedź. Wykrywanie hostów nazywa się nieraz pingowaniem, jednakże metody działania takich programów jak Nmap wykraczają daleko poza samą strukturę działania Pinga. Cel jest jeden : uzyskanie informacji o adresach IP, które są w danej chwili dostępne (są wykorzystywane przez urządzenia – bez znaczenia czy sieciowe czy komputer). Działanie programu Nmap opiera się oczywiście na Pingu, jednakże daje możliwość operowania znacznie większą liczbą opcji. Co więcej, urser może ominąć skan i wyłączyć opcję Pingowania, a jedynie posłużyć się parametrem -sL (pokazuje listę aktywnych hostów) lub -P0. Może także oczywiście łączyć parametry pingowania. Domyślnie Nmap wysyła pakiety TCP ACK na port 80 i zapytanie ICMP Echo Request query do każdego badanego adresu. Ustawienia te są więc tożsame z opcjami -PA i -PE, jednakże mogą być skuteczne jedynie w zakresie sieci lokalnej. Dlatego zaleca się samemu łączyć parametry. Odpowiednie opiszę poniżej.

-sL

Czyli lista skanowania. Stanowi ona najbardziej zwięzłą metodę skanowania hostów. Dostarcza jedynie bardzo podstawowe informacje. Wyświetla wszystkie adresy z podanego zakresu skanowania, jednak nie wysyła żadnych pakietów do nich, wykonując odwrotne zapytania DNS o badane adresy, aby poznać ich nazwy.

-sP

Skanowanie Ping. Ta opcja prosi program tylko i wyłącznie o wykrycie hostów (czyli wykonanie skanowania Ping). Jak można się domyśleć, wynikiem jej działania jest lista aktywnych hostów. Informacje zdobywa przez wysyłanie pakietów ICMP echo request i TCP na port 80, o ile nie zmieni się ustawień (co jest zalecane!). Działając na Unixie z konta root przesyłane są pakiety ARP,  w innym przypadku – pakiety SYN + funkcja systemowa connect().

-P0

Bez pinga. Parametr ten sprawia, że nmap wyłącza całkowicie wykrywanie hostów, a za cel stawia sobie wykrycie aktywnych adresów przed rozpoczęciem właściwej części skanowania.

-PS <lista portów>

TCP SYN Ping. Ustawiając tę opcję, rozkazuje się programowi wysłanie pustych pakietów TCP z ustawioną flagą SYN na port 80.

-PA <lista portów>

TCP ACK Ping. Metoda podobna do wyżej opisanej, tylko wysyłając pusta pakiety TCP zamiast flagi SYN, ustawiona jest flaga ACK. Autorzy oprogramowania udostępnili obie te metody, by zwiększyć szansę na ominięcie systemu zaporowego. To znaczy, jeżeli router będzie blokował wybrane, przychodzące pakiety SYN, można go podejść metodą ACK. Warto wspomnieć, że słowo router warto zamienić słowem „coś”. Coś może blokować. Może router. Może jakieś ustawienia bezpośrednio w jądrze systemu. W wielu wypadkach – firewall.

-PU  <lista portów>

UDP Ping. W tym przypadku, program wysyła puste pakiety UDP na wskazane porty, z czego domyślnie ustawiony jest mało popularny port 32338. Taki, a nie inny port został podyktowany celem uniknięcia wysyłania pakietów do portów otwartych, co w przypadku tego akuratnie testu nie przyniosłoby oczekiwanego przez urserów efektu. Jak wiemy, zamknięty port w odpowiedzi na przesyłany pakiet UDP, powinien odesłać odpowiedź, a nieważne jaka to będzie odpowiedź. W skanowaniu nie liczy zdanie portu – czy on się zgadza czy nie. Mamy go sprowokować do tego, by coś powiedział : ] Bo jeśli coś odpowie, to znaczy, że to urządzenie istnieje. A nam chodzi właśnie o tę informację. A więc wysyłając pakiet UDP, dostaniemy odpowiedź zwrotną ICMP port unreachable, informującą nas o braku możliwości komunikacji z danym portem. W tej chwili Nmap oznacza sobie ten host jako dostępny (co jak już zostało wyżej powiedziane – nie jest nielogiczne). Widząc Inne typy odpowiedzi ICMP (host niedostępny, przekroczony czas życia TTL), Nmap oznacza port jako niedostępny (w końcu skaner interpretuje takie wiadomości jako brak odpowiedzi). Dlaczego tak bardzo nie lubi się portów otwartych? Bo zignorują one pusty pakiet, nie wysyłając żadnej odpowiedzi zwrotnej. I tutaj też ujawnia się sens testowania portu 32338, który jest rzadko wykorzystywany. Wiele usług w tej sytuacji odpowie na pusty pakiet, ten spowoduje, że Nmap uzna host za dostępny, w wyniku czemu w dalszych częściach skanowania. Skanowanie hostów przy skorzystaniu z omawianego parametru -PU może być skuteczne, ponieważ wiele zapór sieciowych filtruje tylko TCP.

-PR <lista portów>

ARP Ping. Podczas skanowania ARP program Nmap w celu wysyłania zapytań ARP posługuje się zoptymalizowanym algorytmem. Otrzymując odpowiedź, Nmap zaznacza sobie host jako aktywny. Ten typ wykrywania hostów pozwala na szybsze i wiarygodniejsze skanowanie. Opcja ta jest domyślnie włączona i nawet, jeśli urser poda inne typy skanowania ping takie jak -PE albo -PS, zamiast nich zostanie użyty ARP.

-PM, -PP, -PE...

Czyli nic innego jak znane nam typy ICMP Ping. Poza wcześniej opisanymi metodami wykrywanie hostów TCP i UDP, Nmap daje urserowi możliwość wysłania standardowych pakietów ICMP znanych z typowego programu ping. Jak się jednak można domyślić, wiele hostów i firewalli blokuje tego typu pakiety. Skutkuje to brakiem wiarygodności skanowania nieznanych hostów. Co prawda i te pakiety mogą znaleźć swoje zastosowanie (na przykład administratorzy systemów monitorujących wewnętrzne sieci mogą efektywnie korzystać z tej metody). Choć parametr -PE zdaje się być naprawdę w większości przypadków bezużyteczny, to -PP i -PM znajdują gdzieniegdzie swoje zastosowanie. Są to zapytania timestamp request, information request i adress mask request odpowiednio o kodach 13,15,17, czyli takie, których celem jest uzyskanie informacji typu aktualny czas czy maska sieci. Teoretycznie mogą być one wykorzystane do wykrywania aktywności hostów. Nmap nie obsługuje zapytań information request, ze względu na rzadkość ich spotykania.

-R

Wymusza zapytania DNS, czyli nakazuje Nmapowi zawsze wykonywać odwrotne zapytania do serwera DNS o nazwy dla skanowanych adresów IP, podczas gdy domyślnie wykonywane są zapytania tylko dla aktywnych hostów.

-n

Wyłącza zapytania DNS, czyli nakazuje Nmapowi nigdy nie używać zapytań odwrotnych do serwerów DNS o nazwy przypisane do adresów IP, co skutkuje znacznym przyśpieszeniem pracy.

--system_dns

Włącza korzystanie z systemowego DNS. Generalnie działanie Nmapa polega na wysyłaniu pakietów bezpośrednio do serwerów DNS, które są są skonfigurowane w systemie i są dostępne. Najczęściej dziesiątki zapytań wykonywanych jest równolegle celem zwiększania wydajności i szybkości wykonywanej pracy. Dodanie opcji –system_dns wymusza rozwiązywanie nazw każdorazowo o pojedyncze IP za pomocą funkcji getnameinfo(), skutkując tym samym spowolnieniem pracy programu. Osobiście zalecam tę opcję wykorzystywać jedynie w przypadkach bardzo niestandardowych, bo jej realnego przeznaczenia – naprawdę nie jestem świadomy.

--dns_server

Daje możliwość podania własnych serwerów. W swoich domyślnych ustawieniach Nmap odczytuje serwery DNS wpisane do pliku resolv.cong, jednakże na twoje życzenie możesz podać własne serwery.

W ten sposób zakończyliśmy omawianie metod wykrywania hostów.
Warto wspomnień, że pozostawiłem niektóre rzeczy w domyśle. Jeśli wybierasz opcję -PS, czyli skanowanie portów TCP przy wykorzystaniu flagi SYN, nie możesz jednocześnie wykorzystać parametru -P0 (bez pinga). Za to inne parametry jak -PS i -PA możesz ze sobą dowolnie łączyć...W przypadku ustawienia –system_dns, komenda –dns_server jest anulowana. Wszystko tutaj to ustawienia domyślne, a więc modyfikując komendy albo całe pliki możesz zmienić narzuconą nam opcję ARP Ping , jak i wiele innych ustawień... Ale nie będę o nich teraz pisał, ponieważ praca zwiększyłaby swoją długość o parę metrów. W przypadku ustawień niestandardowych, zapoznaj się dokładnie z dokumentacją programu. Zresztą, bez przesady. Jeżeli po prostu chcesz zmienić port, do którego domyślnie są wysyłane pakiety (jest to port 80) to i bez przeczytania dokumentacji nasuwa ci się myśl, że trzeba poszukać gdzieś w pliku nmap.h. Potem zaś rozglądasz się za czymś, co w swojej nazwie ma DEFAULT oraz PORT, znajdujesz, sprawdzasz orientacyjnie czy to aby na pewno to i modyfikujesz. Co jeszcze zostawiłem w domyśle? Cóż, chociażby to, że jeżeli metodą -sL otrzymamy następujący wynik : jakiś-adres-ip.szczecintkv, to możemy wziąć pod uwagę, że dana osoba może mieszkać w Szczecinie...

Skanowanie portów
Do odpowiedniego przypadku należy dobrać odpowiedni sposób skanowania portu. Oczywiście można posłużyć się domyślnym (w wypadku Nmapa jest to skanowanie SYN), jednakże nie będzie to najlepsza metoda, bo każdy przypadek jest inny i należy rozpatrzyć go indywidualnie celem zyskania większej ilości rzetelnych oraz prawdziwych informacji. Technik skanowania portu, w przeciwieństwie do wykrywania hostu, nie wolno łączyć ze sobą. Wyjątek stanowi skanowanie UDP, które można łączyć z innymi. Dostępne metody skanowania portów opiszę poniżej.

- sS

TCP SYN. Jest to domyślny i najpopularniejszy typ skanowania, który swoją sławę zawdzięcza szybkości oraz dyskrecji.  Nie otwiera połączeń do końca, co zapewnia mu także niewidzialność.

-sU

Skanowanie UDP. Mimo, że protokół TCP jest przeważnie wykorzystywany w sieciach, usługi UDP są często spotykane, ale – zwykle niezabezpieczane. Dlaczego – tłumaczyłem przy wykrywaniu hostów. Skanowanie UDP można łączyć z dowolnym innym trybem skanowania.
Skanowanie TCP Null, FIN, Xmas. Te typy skanowania wykorzystują kombinacje flag do rozróżnienia pomiędzy stanami portów otwarty, a zamknięty. Gdy skanujemy system zgodny z zapisami w RFC, dowolny pakiet niezawierający flag SYN, RST lub ACK powinien wywołać odpowiedź RST w przypadku portu zamkniętego i całkowity brak odpowiedzi w przypadku portu otwartego. Wszystkie inne kombinacje flag jak na przykład URG czy FIN są prawidłowego, dopóki żadna z wymienionych wcześniej flag nie została użyta. Na podstawie tej zasady Nmap daje możliwość przeprowadzenia trzech typów skanowania. Są to :

-sN

Skanowanie Null, które nie ustawia żadnych flag

-sF

Skanowanie FIN, które ustawia flagę FIN

-sX

Skanowanie Xmas, które ustawia flagi FIN, PSH i URG.
To co warto wiedzieć o tych trybach skanowania to niniejszym to, że są takie same. Różnią się jedynie ustawionymi flagami w pakietach, co zresztą widać. Zaletą tych typów skanowania jest ich zdolność do przemykania przez bezstanowe systemu zaporowe i te filtrowane na routerach.
Jeśli Nmap otrzyma pakiet RST, zaznacza port jako zamknięty. Jeśli host nie odpowie, jako otwarty | filtrowany. A jak dojdzie komunikat ICMP unreachable, program uzna port za filtrowany.
Nie zaleca się stosować tego typu skanowania na Windowsie (prawdopodobnie wszystkie hosty zostaną oznaczone jako zamknięte), za to podatne na nie są systemu unixowe.

-sA

Skanowanie TCP ACK, różniące się od omawianych powyżej, bo nigdy nie wykrywa stanów portów otwarty (a nawet otwarty | filtrowany). Jest wykorzystywany do śledzenia zasad filtrowania, nadzorowania czy filtrowanie jest oparte o stany lub nie oraz które porty są filtrowane. Pakiety wysyłane przy pomocy tej metody skanowania posiadają tylko flagę ACK. Jak się można domyślić, podczas skanowania systemów, nieposiadających filtrowania, porty o stanach otwarty i zamknięty zwrócą pakiet RST oraz zostaną oznaczone jako niefiltrowane, ponieważ z jednej strony były osiągalne dla pakietu ACK, ale z drugiej strony ich stan nie został określony.

-sM

Skanowanie TCP Maimon. Podobne do wyżej opisanych (dla ścisłości : należy do rodziny Null, FIN oraz Xmas), z różnicą, że wysyła pakiet z ustawionymi dwoma flagami FIN/ACK. Najczęściej zarówno porty otwarte, jak i zamknięte powinny zwracać pakiet RST, jednakże Uriel Maimon (odkrywca tego trybu skanowania) zauważył, że systemy oparte na BSD często w przypadku portów otwartych nie wysyłają żadnej odpowiedzi.

-sW

Skanowanie TCP Window. Nie różni się za wiele od skanowanie TCP ACK. Różnica tkwi w tym, że tym razem Nmap odróżnia porty otwarte od zamkniętych (w poprzednim trybie porty te zwracały taką samą wiadomość i były oznaczane tak samo). Od tego, w jaki sposób program rozróżnia stany portów (mimo, że oba zwracają pakiet RST) pochodzi jego nazwa (window). Tryb realizuje analizę pola Window pakiety zwrotnego, porównując ją z bazą danych (otwarte porty zwracają dodatnią wartość rozmiaru okna, podczas gdy zamknięte zwracają wartość zero). Zamiast oznaczać port jako niefiltrowany, Nmap oznacza go jako otwarty lub zamknięty na podstawie wartości zwróconej.
Ta metoda skanowania również jest jednak rzadko wykorzystywana. Często systemy operacyjne zachowują się zupełnie na odwrót i gdy port jest zamknięty, pokazują go jako otwarty. W przypadku portu otwartego, wyświetlają komunikat o tym, że ów port jest zamknięty etc...

--scanflags

Własne skanowanie TCP. I doszliśmy do tego momentu, w którym twórcy Nmapa uznali, że niezdrowo jest ograniczać urserów do wykorzystania wbudowanych opcji. Dana nam zostaje możliwość definiowania własnych typów skanowania z wykorzystaniem wybranych flag TCP. Metoda ta jest idealna, by oszukać IDS, bo najczęściej ich twórcy pobieżnie przeglądają dokumentację programów typu Nmap dodając specyficzne reguły. Specyficzne, ale nie te wykorzystane. Opcja –scanflags może przyjmować argumenty w zapisie numerycznym flag, ale także alfabetycznym. Flagi można ze sobą łączyć np. RSTSYNACKURGPSHFIN, ale wcale wbrew pozorom nie jest to tak użyteczna metoda. Przy wybieraniu własnych flag możliwe jest podanie typu skanowania decydującego o tym, jak mamy interpretować odpowiedzi. I tutaj warto się nie pomylić, bo jeden tryb skanowania po dostaniu pakietu X oznacza port literką Y, a inny po dostaniu pakietu X uznaje, że port jest typu F. Jeśli nie ustawimy na własne życzenie określonego sposobu skanowania portów, Nmap wykorzysta domyślnie ustawiony – czyli skanowanie SYN.

-sI <zombie host[:probeport]>

Skanowanie Idle, często nazywane skanowaniem zombie. Technika tego skanowania opiera się na zachowaniu anonimowości : żaden pakiet nie zostaje wysłany do obiektu naszych badań z prawdziwego adresu IP Nmapa. W tym celu tworzony jest specjalny host zombie o przewidywalnym działaniu stosu TCP i jego wykorzystuje się w celu zdobycia informacji o portach otwartych w badanym systemie. Jest to bardzo poufna metoda, znajdująca zastosowanie także w ogólnym przypatrywaniu się zależnościom pomiędzy maszynami bazującymi na adresach IP.

-sO

Skanowanie protokołów IP, pozwala na wykrycie listy protokołów IP (ICMP, IGMP, TCP...) dostępnych na danym hoście. Pojawia się pytanie : co to ma wspólnego ze skanowaniem portów? W końcu sprawdzane są jedynie kolejne numery protokołów, a nie porty TCP czy UDP. Jednakże opcja ta nadal korzysta z parametru -p do wybrania numerów protokołów do sprawdzenia, w formacie analogicznym do liczby portów. Stąd jej zaklasyfikowanie.

-b <pośredniczący host ftp>

Skanowanie FTP bounce. Bardzo sprytne, jednakże na przestrzeni czasu co raz mniej skuteczne rozwiązanie mające na celu ominięcie firewalli. Protokół FTP generalnie umożliwia(ł) użytkownikowi na połączenie z jednym serwerem FTP i poproszenie go o wysłanie plików do innego. Ta funkcjonalność była przyczyną nadużyć na wielu poziomach, stąd też wiele serweróœ porzuciło dla niej wsparcie. Program Nmap wykorzystując parametr -b zmusza serwer FTP do wysyłania pakietów kolejno na każdy interesujący nas port badanego systemu oraz do przekazywania nam rezultatów (informacji o danym hoście). Z racji, że serwer FTP jest określany w systemach zaporowy jako godny zaufania, przepuszczają go i uchodzi mu to wszystko na sucho. Niestety obecnie znaczenie tej metody zmniejszyło się, jednakże w razie potrzeby – warto ją wypróbować i poszukać jakiegoś dziurawego systemu FTP.

-sT

Skanowanie connect(), stosowane domyślnie zamiast skanowania SYN wtedy, kiedy obsługujący program nie posiada uprawień roota.

Kolejność skanowania portów oraz sprecyzowanie jakimi portami jesteśmy zainteresowani
Nie jest to może najważniejszy, ale jakkolwiek istniejący i mogący znaleźć swe zastosowanie punkt. Nmap domyślnie skanuje wszystkie porty do 1024-ego. Wyższe porty są wyszczególniane w pliku nmap-services. Możemy również zadecydowań o sekwencji lub losowości skanowania.

-r

Generalnie porty (poza często powtarzający mi się, 'popularnymi') skanowane są losowo. Możemy jednak tę funkcję wyłączyć i wprowadzić sekwencyjne skanowanie. Do tego służy ten parametr.

-p <zakres portów>

Pozwala nam stworzyć własną listę skanowanych portów zamiast korzystać z domyślnej. Możemy podać zarówno pojedyncze porty, jak i oddzielić je myślnikiem.

-F

Program skanuje tylko porty umieszczone w pliku nmap-services. Jest możliwość stworzenia własnego pliku tego typu za pomocą komendy –datadir.

Detekcja wersji
Sam fakt tego, że na danym serwerze udostępniona jest dana obsługa niewiele nam daje. Powinno interesować nas sprawdzenie jej wersji. Dopiero wtedy możemy pomyśleć nad tym, jakie wirusy wykorzystać w ataku sieciowym/teście penetracyjnym... Nmap określa szczegóły informacji poprzez dalsze wysyłanie wiadomości do portów otwartych (najczęściej są to standardowe porty jak 80, 25, 55, ale pamiętajmy, że niektórzy administratorzy mogą mieć skłonności do umiejscowienia serwerów na specyficznych portach) i dostosowywanie wszelkich odpowiedzi do swojej bazy danych (nmap-service-probes) usług. Kolejność stanowi logiczny i harmoniczny szereg : najpierw program stara się określić protokół wykorzystywany przez usługę (ssh, telnet, http, ftp...), następnie nazwę aplikacji (Apache? Solaris telnetd?), później wersję usługi, nazwę hosta, urządzenie (router, drukarka, komputer stacjonarny) na rodzinie systemu operacyjnego (Windows, Linuks) kończąc, a i nie zawsze kończąc! Czasami uda się uzyskać informacje na przykład o nazwie użytkownika : ]
Niestety świat, w którym żyjemy, do pięknych nie należy -większość usług wszystkich tych informacji nam nie dostarczy. Do detekcji usług wykorzystujemy następujące parametry :

-sV

Wykrywa usługi. Opcjonalnie można użyć -A, który także wykryje nam system operacyjny.

--allports

Pełna paczka. Niezależnie od domyślnych portów nieprzeznaczonych do skanowania, a także tych objętych dyrektywą exclude, wszystkie porty zostaną przeskanowanie. Brzmi czasochłonnie, ale dokładnie i precyzyjnie, jednak trzeba z tą opcją uważać. Kto by chciał, by ofierze drukarka, do której należy port 9100, zaczęła drukować tysiące stron zapytań binarnych? : ]

--version-intensity <poziom>

Ustalanie poziomu. Można powiedzieć, że skanowanie wersji -sV składa się z innych mikrotestów. Całość podzielona jest na poziomu dokładności od 1 do 9. Im niższy poziom, tym popularniejsza jest usługa. Wyższych poziomów używa się dla mało popularnych usług. Domyślnie Nmap skanuje wszystkie port z poziomu 7, jednakże opcja ta pozwala nam zmienić sposób testowania.

--version-light

W odwołaniu do powyższej komendy, ustala ona wartość '2', a jednocześnie znacznie przyśpiesza detekcję wersji. Koszem dokładności.

--version-all

Ustawia wartość '9'. Program wykona wszystkie możliwe testy na każdym porcie.

--version-trace

Włączanie śledzenia błędów podczas wykrywania wersji (na bieżącą wraz z dostarczanymi informacjami jesteśmy informowani o przebiegu procesu skanowania).

Detekecji systemu operacyjnego

-O

Włącza opcję wykrywania systemu operacyjnego.

-A

Włącza opcję wykrywania OS + dodaje inne informacje jak te uzyskane z wykrywania wersji.

--osscan-limit

Skanowanie systemu jest dużo bardziej efektywne, o ile warunek wykrycia przynajmniej po jednym otwartym i zamkniętym porcie TCP został spełniony. Wraz z dołączeniem –osscan-limit, Nmp nie będzie próbował określać OS, jeżeli powyższy warunek nie został spełniony, co znacznie skrócza czas skanowania. Oczywiście, żeby w ogóle mówić o tej opcji, trzeba wpierw dodać -A albo -O.

--osscan-guess; --fuzzy

W przypadku, gdy nie można jednoznanie dopasować systemu operacyjnego, program sugeruje bardzo zbliżone do siebie wyniki (których jednak nie jest pewien). Żeby wyników uzyskać więcej i tym samym zapewnić sobie na tym polu większą swobodę – stosuje się ten parametr.

Zależności i wydajność  – kto nigdy nie chciał kontrolować czasu niech pierwszy rzuci zegarek
W zależności od tego, co chcemy osiągnąć – różnie podchodzi się do tego tytułu. Jeżeli naszym celem jest przeskanowanie paru adresów IP, nie powinniśmy szczędzić sobie czasu. Mimo, że Nmap skanuje domyślnie jeden host w ciągu 1/5 sekundy (co jest zadowalającym wynikiem), problem może pojawić się przy seryjnym skanowaniu tysiąca adresów IP.  Warto również pamiętać, że wiele czynników jak dodane przez nas parametry służący podkreśleniu dokładności oraz stopień zaawansowania firewalla mogą spowalniać ten proces. Za to posługiwanie się opcjami 'przyśpieszonymi', o których nieraz była mowa – skutkuje brakiem precyzji oraz czasami dostarczeniem nieprawdzicyh informacji. Dlatego też twórca programu pomyślał o dołączeniu do niego pewnych opcjonalnych parametrów związanych z długością wykonywania procesu.

--min-hostgroup <liczba hostów>; --max-hostgroup <liczba hostów>

Zmiana liczby hostów w grupie. Nmap posiada możliwość obmacania wielu portów i wersji jednocześnie. Dzieli adresy docelowe na grupy, które kolejno przechodzą proces skanowania. Im grupa jest większa, tym praca staje się efektywniejsza i płynniejsza.

--min-parallelism <liczba prób>; --max-parallelism <liczba prób>

Kontrola współbieżności testów. Domyślnie Nmap dobiera idealną liczbę testów w zależności od parametrów sieci. Pakiety wysyłane bywają gubione. W takich przypadkach program zwalnia i zaczyna wykonywać mniejszą liczbę testów równolegle, stale próbując później przyśpieszać, o ile pakiety nie są wciąż gubione. Wyżej wymienione opcje pozwalają na określenie minimalnego i maksymalnego limitu liczby jednocześnie wykonywanych testów. W złych warunkach liczba ta może spaść do 1, przy dobrych – wzrosnąć do kilkuset. Najczęściej wykorzystywana jest opcja –min-parallelism do ustawienia wyższej niż 1 wartości w trakcie skanowania przy złych warunkach sieciowych. Jest to jednak opcja ryzykowna. Ustawienie zbyt wysokiej wartości może skutkować brakiem poprawności testów. Ogranicza również możliwości Nmapa w zakresie dynamicznego dostosowywania się do warunków panujących w sieci – jego czujność jest wyłączona.

--min_rtt_timeout <czas>; --max-rtt-timeout <czas>; --initrial-rtt-timeout<czas>;

Kontrola czasu oczekiwania na wykonanie testu. Zanim test zostanie ponowiony, musi przepłynąć pewien czas oczekiwania na wynik poprzedniego testu. Jeśli program napotkuje duże i zmienne opóźnienia w sieci, czas oczekiwania może zwiększyć się do kilku sekund. Początkowo wartość (podawana w milisekundach swoją drogą, chociaż można to zmienić dopisując po x-liczbie literę 'h', 's', 'm') jest wysoka i takową zostanie w przypadku skanowania nie odpowiadających hostów. Podanie niższych wartości niż te domyślne w –max-rtt-timeout i –initial-rtt-timeout może znacząco skrócić czas skanowania, co widoczne jest w szczególności w wypadku skanowania -P0 (bez pinga). Jeśli interesujące nas hosty znajdują się w sieci lokalnej, sensownym ustawieniem –max-rtt-timeout jest 100 milisekund. W przypadku skanowania innego segmentu, warto sprawdzić czasy odpowiedzi dla protokołu ICMP za pomocą narzędzia ping lub phpin2. Interesuje nas w tym przypadku maksymalny czas odpowiedzi dla dziesięciu w wyż pakietów.

--max-retries <maksymalna liczba prób>

Maksymalna liczba prób ponawiania skanowania portów. Kiedy Nmap nie otrzyma odpowiedzi, może to oznaczać, że wybrany port jest filtrowany. Ale równie dobrze, że wysłany pakiet zaginął w głębiach internetowych połączeń sieciowych lub host nam nie odpowiedział, ponieważ został przekroczony jego osobisty (często dyktowany przez firewalle) limit odpowiedzi.
W takim wypadku Nmap walczy z portem ponawiając próbę jeszcze 10 razy , co odbija się pozytywnych echem na dokładności skanowania. Ustawienie wartości 0 w tym parametrze spowoduje znaczne przyśpieszenie skanowania. Można także ustawić wartość wyższą niż 10.

--scan-delay <czas>; --max-scan_delay <czas>;

Opcja ustawiania opóźnienia między testami. Pozwala nam określić ile milisekund ma minąć, zanim zostanie rozpoczęty następny skan. Opcja ta okazuje się nieraz złotym środkiem w przypadku systemów kontrolujących liczbę wysyłanych do hosta pakietów. Im wartość milisekund jest większa, tym system mniej podejrzewa, za to czas skanowania ulega zwiększaniu się. Ważna uwaga : parametr –scan-delay daje nam możliwość omijania systemów detekcji intruzów IDS/IPS.

-T <Paranoid | Sneaky | Polite | Normal | Aggressive |Insane>

Ustawienie szablonu zależności czasowych skanowania. Z czym nam się kojarzy szablon? Z gotowym schematem. Powyższe sterowanie czasem, mimo że precyzyjne, może skomplikować nam życie. Poza tym dobieranie odpowiednich parametrów, sprawdzając na logikę czy nie działają antagonistycznie (przeciwstawnie) względem siebie może wydać komiczny obraz zakapturzonego gościa, któremu zależy na szybkości skanowania tak bardzo, że już by wszystkie testy wykonał, podczas gdy on jest w trakcie wybierania parametrów czasowych. Dlatego parametr -T pozwala nam korzystać z utartych ścieżek. Dostępne szablony to paranoid (0, paranoidalny), sneaky (1, podstępny), polite (2, grzeczny), normal (3, normalny), aggressive (4, agresywny) i insane (5, szalony). Pierwsze dwa znajdują swe zastosowanie w omijaniu IDS (system detekcji intruzów). Tryb 'grzeczny' spowalnia skanowanie, powodując mniejsze obciążenie sieci. Szablon normalny jest wykorzystywany jest domyślnie, agresywny – przyśpiesza skanowanie przy założeniu, że łącze internetowe jest dobre i stabilne. Tryb szaleńczy zwiększa szybkość skanowania, zakładając bardzo wykraczającą ponad przeciętność szybkość i odporność na przeciążenia sieci. A teraz omówmy opcje od strony praktycznej. Wartości 0 i 1 mają sens jedynie, kiedy chcemy ominąć systemu detekcji intruzów IDS, ale jeśli skanujemy więcej portów lepiej już skonfigurować sobie to ręcznie, nie korzystając z powyższych szablonów. Wartość 2 wykorzystuje się raczej tylko dla zasady bycia gentelmanem. Spowalnia bezsensownie proces. W sieciach szerokopasmowych i Ethernet zaleca się korzystanie z trybu czwartego, agresywnego. Można go również stosować w niemalże każdej, dowolnej sieci. Piąty bywa zbyt szaleńczy i z wariatami się lepiej nie zadawać, chyba, że ktoś lubi.
Szablony można łączyć z innymi opcjami czasowymi, ale pod warunkiem, że zostaną one [szablony] ustawione na początku (dodane na końcu zakryją wcześniej dodane opcje).

Firewalle i systemy detekcji wirusów
W latach 90-tych, jak niektórzy z nas mogą pamiętać – nie było praktycznie żadnych zabezpieczeń, a przepływ informacji był właściwie nieograniczony. Obecnie liczne zapory ogniowe, lokalne bramki proxy, odpowiednio dopasowane antywirusy stanowią główną przeszkodę w uzyskiwaniu informacji o sieci. Dlatego też domyślne skanowanie Nmapa może okazać się nieskuteczne i gorąco zachęcam do korzystania z takich parametrów jak -b, -IDLE. Niemalże każda firma, a także niektórzy urserzy posiadają IDS, program monitorujący działania sieciowe, które w swojej bazie danych ma informacje o Nmapie, którego skan często poprzedza ataki komputerowe. A więc większość działań Nmapa, a już na pewno te określone domyślnie – są odbierane jako potencjalne ataki sieciowe i odpierane. A więc teraz pobawmy się w omijanie IDS i firewalli : ]

-f

Fragmentacja pakietów. Opcja ta umożliwia przy skanowaniu wysyłanie pofragmentowanych pakietów. Idea tkwi w podzieleniu nagłówka TCP na szereg pomniejszych pakietów celem utrudnienia analizowania pakietów przez systemy detekcji wirusów. Niestety, przestarzałe systemu jak sniffer zaprotestują i po odebraniu zaledwie paru pakietów powstanie awaria i się wyłączą.
Jak dokładniej działa fragmentacja pakietów? Załóżmy, że mamy nagłówek TCP o wielkości 20 bajtów. Parametr -f dzieli ten nagłówek na trzy części : dwa pakiety po 8 bajtów i jeden 4-bajtowy, z czego każdy ma przydzielony numer IP.

-mtu

Fragmentacja pakietów : ciąg dalszy. Jeżeli dodalibyśmy jeszcze jeden parametr -f, wzrosłaby pojemność, za to zredukowała się liczba pakietów. Parametr -mtu umożliwia urserowi dokładniejsze decydowanie o rozmiarach pofragmentowanych pakietów.

-D <decoy1 [,decoy2][,ME]

Skanowanie za pomocą innych hostów. Nmap wysyła pakiety pochodzące z różnych miejsc, adresów IP, przez co usypia czujność nadzorującego działania w sieci IDS (sporo pakietów wysyłanych z jednego IP wzbudza przecież podejrzenia, a tak – mamy do dyspozycji hosty-przykrywki). Podając liczbę poszczególnych zasłon należy oddzielić je przecinkami. Za to w miejsce ME wpisuje się kolejność w jakiej zostanie wysłany pakiet z prawdziwego IP. Jeśli nie ustawimy tutaj żadnej wartości – nastąpi losowanie. W czym tkwi sens : jeśli ME będzie mieć wartość 6, IDS nie zobaczy naszego IP, nie zwróci na niego uwagi, może nawet nie będzie go w logach. Z drugiej strony – im większą się tutaj wartość ustawi, tym proces staje się wolniejszy.

-S <adres ip>

Ustawienie adresu IP nadawcy. W niektórych przypdakach Nmap może nie odnaleźć IP nadawcy i w tym przypadku należy podać adres lokalnego interfejsu, przez który mają być wysyłane pakiety. A poza tym można się pobawić i pomanipulować  sytuacją. Co jeśli IDS firmy odkryje, że dokonywane 'ataki sieciowe' są inicjowane przez adres IP konkurencyjnej firmy? :3

-e <interfejs>

Użyj wybranego interfejsu. Informuje Nmapa przez który interfejs ma odbierać i wysyłać pakiety. Skaner powinien znaleźć go sobie sam, ale można mu też zasugerować ten, który my chcemy.

--source-port <numer portu>; -g<numer porty)

Używaj podanego portu źródłowego. W najróżniejszych aplikacjach, systemach zdarzają się luki związane z wprowadzonymi zmianami DNS, FTP (etc..). Taka luka najczęściej powoduje efekt 'pustego miejsca'. Przykładowo firewalle nie strzegą tylko jednego portu (np. port 55 jest zupełnie niestrzeżony, chociaż koło reszty portów stoi cała polska husaria w wersji IDS-owej) i w ten port wypadałoby zaatakować. Wykorzystując powyższe parametry, pokazujemy Nmapowi, której najsłabszej jednostce w szeregu ma się przyjrzeć.

--data-length <rozmiar>

Dodawanie losowych danych do wysyłanych pakietów. Generalnie pakiety w swoim przeznaczeniu powinny być jak najlżejsze, jednakże dodanie losowych danych o podanym rozmiarze (w bajtach) czyni pakiety bardziej zaufanymi okiem IDS, jednocześnie spowalnia proces skanowania.

--ttl <wartość>

Ustawia czas życia pakietów na podaną wartość.

--randomize-hosts

Losowa kolejność skanowania postów. Opcja ta włącza losowanie kolejności hostów w każdej grupie do 8096 hostów przed ich skanowaniem, siejąc spustoszenie :3 Zachowanie takie czyni skanowanie mniej oczywistym dla wielu systemów monitorujących sieci, zwłaszcza w połączeniu z  opcją spowalniającą skanowanie.

-spoof-mac <adres mac, prefiks, lub nazwa producenta>

Podmienia adres MAC. Opcja ta powoduje, że Nmap wysyła wszystkie pakiety ethernet przy użyciu adresu MAC. Automatycznie włączane jest tutaj –send-eth dla uzyskania pewności wysyłania pakietów na poziomie ethernetu. Jeżeli w miejscu adresu MAC wpisze się wartość '0', Nmap wybierze całkowicie losowy adres na czas trwania danej sesji. Można też ustawić wybrany przez siebie adres. W tym wypadku ważne jest podanie parzystej liczby cyfr heksadecymalnej.

--badsum

Wysyłanie pakietów z nieprawidłową sumą kontrolną TCP/UDP. Powoduje wstawienie do nagłówków wysyłanych pakietów nieprawidłowych sum kontrolnych. Na skutek tego 98% stosów IP odrzuci tego typu pakiety, odpowiedź, jaką się otrzyma będzie pochodzić najprawdopodobniej od firewalla lub IDS.

Wyjście
Zbliżamy się już do ostatnich opcji, jakie możemy zastosować. Skanowanie mamy za sobą. To, co skanowaliśmy, w jaki sposób, czy wybraliśmy najlepsze parametry – nie interesuje nas. Teraz pojawia się pytanie : gdzie oraz w jaki sposób zapisać wyniki? Czas na ostatnie poprawki.
Sposoby zapisywania :

-oN <nazwa pliku>

Format normalny. Zapisuje wyniki do wskazanego przez nas pliku.

-oX <nazwa pliku>

Format XML. Powoduje zapisanie informacji wyjściowych do wybranego przez nas w pliku, jednakże w formacie XML, który może zostać łatwo przekonwertowany na format HTML. Format ten jest również łatwo przetwarzany przez inne programy, a także języki programowania takie jak C++, Python, Java (o ile dodana została do nich bibliotek XML).

-oS <nazwa pliku>

Format ScRipT KIdd|3. Jest on podobno do interaktywnego, jednakże dodatkowo przetworzony na potrzeby l33t HaXXorZ.

-oG <nazwa pliku>

Grepowalny. Zapisuje plik w formacie grepowalnym. Osobiście nie polecam, bardzo przestarzałe.

-oA <nazwa pliku>

Wszystko. Zapisuje wyniki we wszystkich formatach : normalnym, XML i grepowalnym.

Poziom szczegółowości i dokładności raportowania postępów.
Wciąż jesteśmy przy „wyjściu”, robimy to na sam koniec.

-V

Podwyższony poziom dokładności skanowania. Wraz z dołączeniem parametru dostaniemy więcej szczegółowych informacji. Odpowiadające hosty zostaną wyświetlone od razu, kładziony jest nacisk na relacjonowanie postępu skanowania. Podwójne użycie opcji zwiększy tę dokładność.

-d <poziom>

Ustawienie poziomu śledzenia błędu. Jest to chyba jeden z tych ostatnich leveli dociekliwości ludzkiej :3 Włączając tę opcję zostajemy zasypani raportami o tym, co Nmap robi, dlaczego, ile razy mu coś nie wyszło, nieraz niezrozumiałymi dla nas. Najwyższy możliwy poziom to dziewiąty.

--packet-trace

Śledzenie wysyłanych i odbieranych pakietów. To również stanowi swego rodzaju apogeum wścibskości. Parametr ten powoduje wyświetlanie informacji na temat każdego wysyłanego i odbieranego pakietu, często wykorzystywany jest celem wyszukiwania błędów w Nmapie.

-iflist

vPokazuje interfejsy i tablice routingu, wykryte przez Nmapa.
Inne opcje 'końcowe' to na przykład:

--append-output <nazwa pliku>

Dołączaj do pliku. W normalnym wypadku wyniki zapisane do wskazanego pliku 'przykrywają' jego wcześnijeszą treść (o ile jakąś treść ten plik posiadał). Zajmowały jej miejsce. Wraz z komendą –apend-output, wyniki zostają po prostu dołączone i raport zaczyna się w ostatniej linijce, którą mogą poprzedzać tysiące innych, związanych lub niezwiązanych z skanowaniem linijek tekstu.

-resume <nazwa pliku>

Wznowienie przerwanego skanowania. Jeżeli jesteśmy teraz pochłonięci głębokim skanowaniem wielu portów, może dojść do sytuacji, że swobodę wykonywalnych działań coś nam może ograniczyć. Załóżmy możemy skanować dany zestaw portów tylko w godzinach 17-18, a skanowanie musi potrwać przynajmniej cztery godziny, by mogło zostać zakończone. Do przerwania skanowania służy nam opcja ctr-C, zaś do wznowienia ostatniego oraz zapisania wyników w tym samym pliku, do którego były zapisane wcześniejsze wyniki służy nam -resume.

-stylesheet <scieżka lub URL>, webxml <ścieżka lub URL>

Styl XSL do transformacji formaut XML. Oba ta parametry niczym się nie różnią oprócz nazwą. Ursery wolą korzystać z tej drugiej, ponieważ jest łatwiejsza do zapamiętania. Opcja ta może posłużyć do przeglądania plików XML w stylu XSL.

--no-stylesheet

Nie korzystaj z deklaracji stylu XSL w formacie XML. Zablokowuje całkowicie możliwość korzystania z XSL celem obsługi XML.

I został nam już ostatni rozdział : „Misc”, czyli inne, różne opcje : )

-6

Włączenie skanowania IPv6.

-A

Włączenie skanowania agresywnego, które zawiera w sobie w domyśle parametr -O (wykrywanie systemy operacyjnego) oraz -sV (wykrywanie wersji aplikacji). Dzięki temu urser, który chciałby przeprowadzić głębsze skanowanie, nie musi zapamiętywać wielu parametrów.

--datadir <nazwa katalogu>

Określenie katalogu z instrukcjami. Nmap podczas swojej pracy wykorzystuje dane z innych nmapowskich katalogów (nmap-service-prbes, nmap-protocols...). Może jednak te poszukiwania zacząć od katalogu umieszczonego przy parametrze. Jak nie znajdzie w wyznaczony przez ciebie miejscu – poszuka u siebie.

--send-eth 

Używanie niskopoziomowych ramek ethernet. Nmap w przypadku dołączenia tego parametru ramki niskiego poziomu ethernet wysyła bezpośrednio, zamiast przez stos IP. Domyślnie Nmap wybiera metodą, która lepiej pasuje do systemu operacyjnego, na której program jest uruchamiany. W przypadku systemów uniksowych, gniazda raw (warstwa IP) są efektyniejsze, podczas gdy ramki ethernet są niezbędne w przypadku systemów Windows, które nie obsługują gniazd raw.

--send-ip

Wysyłanie pakietów raw IP. Opcja ta włącza wysyłanie pakietów przez gniazda raw IP, zamiast przez ramki ethernet. Działa więc antagonistycznie w stosunku co do opcji –send-eth.

-privileged

Zakłada, że użytkownik ma odpowiednie uprawnienia. Jeśli próbowalibyśmy wykonać na sucho skan z takimi opcjami jak -A (właściwie to z jakimikolwiek...) nie udałby się nam. Musimy mieć uprawnienia roota albo dodać ten parametr.

-unprivileged

Zakłada, że użytkownik nie ma odpowiednich uprawnień. Nawet, jeśli je oficjalnie posiadasz.

--interactiwe

Włącz tryb interaktywny, powoduje uruchomienie listy poleceń umożliwiającą łatwe uruchamianie wielu równoczesnych skanowań (zarówno synchronicznych jak i w tle).

-V; --version

Wyświetla numer wersji

-h; --help

Pokazuje opcje, których nie wolno wykorzystywać. Użycie jakiejkolwiek z nich usunie ci system32 z Windowsa albo skasuje jądro w Linuksie.

I to by było na tyle. W następnym poradniku napiszę, jak zmienić odcisk stosu TCP/IP celem dostarczenia Nmapowi lub skanerom nmapopodobnym fałszywych informacji o naszym systemie. Czyli nawet jeśli proces skanowania przebiegnie pomyślnie to nasz OS przedstawi się jako X, będąc tymczasem Y.
Mam nadzieję, że komuś się to w jakiś sposób przyda :3

LinuxFirefox 37.0

Offline

Board footer

Powered by FluxBB