Преглед на функциите и основното използване на скенера nmap
Мрежовият скенер nmap дава възможност за решаване на следните задачи за отдалечено събиране на информация за подмрежата и възлите на IP мрежите:
- идентифициране на активни възли;
- идентифициране на мрежови услуги;
- идентифициране на операционни системи;
- Идентификация на софтуер за мрежови услуги;
- идентифициране на набори от правила за защитна стена;
- определяне на имената на потребителите, от името на които работят сървърите на мрежовите услуги.
Във всички случаи се използват активни методи за събиране на информация.
nmap също така предоставя редица функции за управление на реда на изпълнение на теста с цел оптимизиране на скоростта на тестване и надеждността на получените резултати, скриване на факта и/или източника на тестове, проникване през защитни стени. Има и някои опции за контролиране на реда, в който се задават параметрите на теста и извеждането на резултатите. Предоставени са както графичен интерфейс за контролиране на работата на nmap, така и интерфейс на командния ред.
Синтаксис на командния ред
Методи на насочване
Най-лесният начин да посочите целевия хост или мрежа е да посочите неговото име или IP адрес в командния ред след всички опции и техните аргументи. Мрежовите адреси се идентифицират с наставката „/“ („маска“) след името или IP адреса. Типичните стойности на маската са както следва:
- ‘/0’ — целта е цялата мрежа;
- ‘/16’ — целта е подмрежа от клас B;
- '/24' - целта е подмрежа от клас C.
Обърнете внимание, че в много черупки знаците '*' ще трябва да бъдат екранирани с '\' или оградени в кавички.
В много случаи също така е подходящо изрично да се посочи списък с портове на целевите хостове, чието състояние трябва да се определи. Това може да стане сизползвайки опцията -p.
Режим на работа по подразбиране
По подразбиране (когато се изпълнява без никакви опции) nmap извършва сканиране на TCP порт на дадена цел, като използва пълно изследване на връзката (режим -sT).
Преди да започне сканиране на портове, се идентифицират активните хостове на целта. Това използва два метода за сондиране на възли: използване на ICMP съобщения „Echo Request“ и използване на TCP ACK съобщения (в последния случай тестовото съобщение се изпраща до порт номер 80 (http сървър порт)).
Проверяват се всички портове в диапазона 1-1024, както и тези, изброени във файла nmap-services, който идва с nmap (вижте директорията /usr/share/nmap).
Използва се часовият режим "Нормално".
Идентифициране на активни възли
nmap ви позволява да използвате следните методи за изследване на възли, за да идентифицирате тяхната активност:
- чрез сондиране на хостове с ICMP съобщения от тип 'Echo Request';
- чрез сондиране на отделни TCP портове на възли;
- чрез сондиране на отделни UDP-портове на възли (тези, които са затворени с висока сигурност).
Когато идентифицирате активни възли чрез изследване на техните TCP портове, по-добре е да използвате методи за изследване, които осигуряват отговор от активния възел, независимо от състоянието (затворен или отворен) на порта, който се изследва. Например:
- пълно проучване на връзката (опция -sT, също по подразбиране);
- сонда с непълно установяване на връзка (опция -sS);
- ACK Пробване (опция -sA);
- Window-Probing (опция -sW).
Когато използвате методи за проверка на TCP портове, като FIN проверка (опция -sF), сондиранеизползвайки метода на коледното дърво (опция -sX), нулева проверка (опция -sN) е по-добре да изберете портове, които са затворени с висока сигурност (тъй като тези методи осигуряват отговор от възела само когато портът, който се изследва, е затворен).
Надеждността на самоличността на активните възли става доста проблематична, ако достъпът до целта е блокиран от защитна стена. Ако защитната стена блокира преминаването на ICMP съобщения, единственият начин да се идентифицират активните хостове на целта е да се изследват тези TCP и UDP портове, които не са блокирани с голяма сигурност.
По подразбиране идентифицирането на активните целеви възли се извършва автоматично в началото на всяка nmap сесия. Това едновременно сондира възли с ICMP съобщения тип „Echo Request“ и съобщения тип TCP ACK (последните се препращат на порт 80). Опцията -sP позволява само идентифициране на активни възли; опция -P0 - не идентифицира активни възли в началото на сесията. Опциите -PT, -PI, -PS, -PB ви позволяват да дефинирате методи за изследване на възли, които се използват за идентифициране на тяхната активност в началото на сесията.
Идентификация на мрежовата услуга
nmap позволява мрежовите услуги да бъдат идентифицирани чрез TCP и UDP методи за сканиране на портове. В този случай могат да се използват следните методи за сондиране на TCP порт (само един от тях наведнъж):
- пълно проучване на връзката (опция -sT, също по подразбиране);
- сонда с непълно установяване на връзка (опция -sS);
- FIN-Probing (опция -sF);
- озвучаване по метода "коледно дърво" (опция -sX);
- нулева сонда (опция -sN).
Режимът на сканиране на UDP порт е активиранс опцията -sU.
Идентификация на операционната система
nmap позволява идентифициране на хост операционни системи в IP мрежи чрез активно изследване на изпълнението на TCP/IP стека. В същото време nmap се опитва да открие типовете и версиите на операционните системи, както и да определи алгоритъма за генериране на TCP ISN. Съответният режим се активира с опцията -O.
Идентификация на софтуера за мрежови услуги
nmap ви позволява да идентифицирате имената, номерата и версиите на програмите, поддържани от RPC сървърите на целевите хостове (заобикаляйки свързващия агент). Съответният режим се активира с опцията -sR.
Идентифициране на набори от правила за защитна стена
nmap ви позволява да определите броя на TCP портовете, които са блокирани от защитната стена (едновременно със сканирането на тези портове). В този случай могат да се използват тези методи за сондиране на портове, които осигуряват получаване на реакция от изследваните възли, независимо от състоянието на портовете (отворени или затворени), които се изследват:
- пълно проучване на връзката (опция -sT, също по подразбиране);
- сонда с непълно установяване на връзка (опция -sS);
- ACK Пробване (опция -sA);
- Window-Probing (опция -sW).
Определяне на потребителските имена, под които работят сървърите за мрежови услуги
Ако целевият хост изпълнява демона identd, когато сканира TCP портовете на този хост с пълна връзка (опция -sT или по подразбиране), nmap може да определи потребителските имена, под които работят мрежовите сървъри на хоста. Съответният режим се активира с опцията -I.
Начини за скриване на факта и/или източника на тестове
Внедрено в nmapследните начини за скриване на факта и/или източника на тестовете:
Методи за проникване през защитни стени
nmap прилага следните начини за проникване през защитни стени:
- използване на междинен ftp сървър (опция -b) (позволява проникване през защитната стена, ако този ftp сървър е зад защитна стена и последната не блокира достъпа до него);
- фрагментиране на тестови пакети (опция -f) (проститезащитни стени могат да пропускат такива пакети);
- произволен избор на порт източник на тестов пакет (опция -g).