Поточний посібник по Nmap: основи сканування
Що таке Nmap?
Nmap (або “мережевий картограф”) – один з найпопулярніших на ринку безкоштовних інструментів виявлення мережі. Протягом останнього десятиліття або близько того програма виникла як основна програма для мережевих адміністраторів, які прагнуть скласти карту своїх мереж та провести широкі мережеві інвентаризації. Це дозволяє користувачеві знаходити живі хости у своїй мережі, а також сканувати відкриті порти та операційні системи. У цьому посібнику ви дізнаєтесь, як встановити та використовувати Nmap.
Nmap працює в центрі навколо командного рядка, подібного до командного рядка Windows, але інтерфейс GUI доступний для більш досвідчених користувачів. Використовуючи Nmap, користувач просто вводить команди та виконує скрипти через текстовий інтерфейс. Вони можуть переміщатися через брандмауери, маршрутизатори, IP-фільтри та інші системи. По своїй суті, Nmap був розроблений для мереж масштабування підприємств і може сканувати через тисячі підключених пристроїв.
Деякі з основних цілей Nmap включають сканування портів, пінг підмітає, Виявлення ОС, і виявлення версій. Програма працює за допомогою IP-пакетів для ідентифікації доступних хостів у мережі, а також, які сервіси та операційні системи вони запущені. Nmap доступний у багатьох різних операційних системах від Linux до Free BSD та Gentoo. Nmap також має надзвичайно активну та яскраву спільноту підтримки користувачів. У цій статті ми розбиваємо основи Nmap, щоб допомогти вам вдаритись по землі.
Аналіз мережі та нюхання пакетів за допомогою Nmap
Мережеві аналізатори, такі як Nmap, є важливими для безпеки мережі з кількох причин. Вони можуть ідентифікувати нападників і тест на вразливість всередині мережі. Що стосується кібербезпеки, то чим більше ви знаєте про свій пакетний трафік, тим краще підготовлені до нападу. Активне сканування вашої мережі – це єдиний спосіб забезпечити підготовку до потенційних атак.
Як мережевий аналізатор або sniffer пакетів, Nmap надзвичайно універсальний. Наприклад, це дозволяє користувачеві сканувати будь-який активний IP-код у своїй мережі. Якщо ви помітили IP-адресу, якого ви раніше не бачили, можете запустити сканування IP-адреси, щоб визначити, чи це законна послуга, або зовнішня атака.
Nmap – це аналізатор мережевого доступу для багатьох адміністраторів, оскільки він пропонує широкий спектр функцій безкоштовно.
Випадки використання Nmap
Наприклад, ви можете використовувати Nmap для:
- Визначте живих хостів у вашій мережі
- Визначте відкриті порти вашої мережі
- Визначте операційну систему служб у вашій мережі
- Усуньте вразливості вашої мережевої інфраструктури
Як встановити Nmap
Дивись також: Nmap шпаргалка
Перш ніж ми перейдемо до використання NMap, ми розглянемо, як її встановити. Користувачі Windows, Linux та MacOS можуть завантажити Nmap тут.
Встановіть Nmap у Windows
Використовуйте самоінсталятор Windows (званий nmap-setup.exe), а потім дотримуйтесь інструкцій на екрані.
Встановіть Nmap в Linux
У Linux, речі трохи складніші, оскільки ви можете вибрати між установкою вихідного коду або кількома двійковими пакунками. Встановлення Nmap в Linux дозволяє створювати власні команди та запускати власні сценарії. Щоб перевірити, чи встановлено у вас nmap для Ubuntu, запустіть nmap –вернення командування. Якщо ви отримаєте повідомлення про те, що nmap наразі не встановлено, введіть sudo apt-get install nmap у командному рядку та натисніть клавішу Enter.
Встановіть Nmap на Mac
На Mac, nmap пропонує спеціалізованого інсталятора. Щоб встановити на Mac, двічі клацніть на nmap-.dmg файл і відкрити файл під назвою nmap-mpkg. Відкривши це, розпочнеться процес встановлення. Якщо ви використовуєте OS X 10.8 або новішої версії, ви можете бути заблоковані вашими налаштуваннями безпеки, оскільки nmap вважається “непізнаним розробником”. Щоб обійти це, просто клацніть правою кнопкою миші файл .mpkg та виберіть відчинено.
Як запустити сканування Ping
Однією з основ мережевого адміністрування є виділення часу для виявлення активних хостів у вашій мережі. У Nmap це досягається за допомогою сканування ping. Сканування ping (яке також називається виявленням IP-адреси в команді підмережі) дозволяє користувачеві визначити, чи є IP-адреси в Інтернеті. Він також може бути використаний як метод виявлення хоста. Сканування пінг-файлів ARP – один з найкращих способів виявлення хостів в локальних мережах.
Щоб запустити сканування ping ARP, введіть у командний рядок таку команду:
# nmap -sp 192.100.1.1/24
Це поверне список хостів, які відповіли на ваші запити ping разом із загальною кількістю IP-адрес на кінець. Приклад наведено нижче:
Важливо зазначити, що цей пошук не надсилає жодних пакетів до перелічених хостів. Однак Nmap запускає зворотну роздільну здатність DNS для перелічених хостів, щоб ідентифікувати їх імена.
Методи сканування портів
Що стосується сканування портів, ви можете використовувати безліч різних методик на Nmap. Це основні:
- sS TCP SYN сканування
- sT TCP підключення сканування
- sU сканування UDP
- sY SCTP INIT сканування
- sN TCP NULL
Нові користувачі намагатимуться вирішити більшість проблем із скануванням SYN, але в міру розвитку ваших знань ви також зможете включити деякі з цих інших методів. Важливо зазначити, що ви можете одночасно використовувати лише один метод сканування портів (хоча ви можете комбінувати сканування SCTP та TCP разом).
TCP SYN Scan
sS TCP SYN Scan
The TCP SYN Scan є однією з найшвидших методик сканування портів у вашому розпорядженні на Nmap. Ви можете сканувати тисячі портів в секунду в будь-якій мережі, яка не захищена брандмауером.
Це також хороша техніка сканування з точки зору конфіденційності тому що він не має TCP-з’єднань, які привертають увагу до вашої діяльності. Він працює, надсилаючи SYN-пакет і потім чекаючи відповіді. Підтвердження вказує на відкритий порт, тоді як жодна відповідь не позначає відфільтрований порт. RST або скидання визначає порти, які не слухають.
TCP Connect Scan
sT TCP Connect Scan
А TCP Connect Scan є основною альтернативою сканування TCP, коли користувач не може запустити сканування SYN. Під час сканування TCP-з’єднання користувач видає системний виклик з’єднання для встановлення з’єднання з мережею. Замість того, щоб читати відповіді пакетів, Nmap використовує цей виклик для отримання інформації про кожну спробу з’єднання. Одним з найбільших недоліків сканування підключення TCP є те, що для націлювання на відкриті порти потрібно більше часу, ніж сканування SYN.
Сканування UDP
sU сканування UDP
Якщо ви хочете запустити сканування портів у службі UDP, то Сканування UDP – ваш найкращий спосіб дій. UDP можна використовувати для сканування таких портів, як DNS, SNMP та DHCP у вашій мережі. Вони особливо важливі, оскільки це область, яку зловмисники зазвичай експлуатують. Під час сканування UDP також можна одночасно запустити сканування SYN. Під час запуску сканування UDP ви надсилаєте пакет UDP на кожен цільовий порт. У більшості випадків ви надсилаєте порожній пакет (окрім портів, таких як 53 та 161). Якщо ви не отримаєте відповідь після передачі пакетів, порт класифікується як відкритий.
Сканування портів SCTP INIT
sY SCTP INIT Сканування
The Сканування портів SCTP INIT охоплює послуги SS7 та SIGTRAN та пропонує комбінацію протоколів TCP та UDP. Як і сканування Syn, SCTP INIT Scan надзвичайно швидкий, здатний сканувати тисячі портів щосекунди. Це також хороший вибір, якщо ви хочете зберегти конфіденційність, оскільки це не завершує процес SCTP. Це сканування працює, надсилаючи фрагмент INIT і чекаючи відповіді від цілі. Відповідь з іншим фрагментом INIT-ACK визначає відкритий порт, тоді як фрагмент ABORT вказує на порт, який не слухається. Порт буде позначений як фільтр, якщо відповідь не буде отримана після декількох повторних передач.
TCP NULL Scan
sN TCP NULL Scan
А TCP NULL сканування є однією з найвибагливіших методів сканування у вашому розпорядженні. Це працює, використовуючи лазівку в TCP RFC, що позначає відкриті та закриті порти. По суті, будь-який пакет, який не містить бітів SYN, RST або ACK, підкаже відповідь з поверненим RST, якщо порт закритий, а відповідь не буде, якщо порт відкритий. Найбільшою перевагою сканування TCP NULL є те, що ви можете орієнтуватися навколо фільтрів маршрутизатора та брандмауерів. Незважаючи на те, що вони є гарним вибором для схованості, проте їх все одно можна виявити за допомогою систем виявлення вторгнень (IDS).
Хост-сканування
Якщо ви хочете ідентифікувати активних хостів у мережі, то найкращий спосіб зробити це сканування хостів. Сканування хоста використовується для надсилання пакетів запитів ARP до всіх систем всередині мережі. Він надішле запит ARP до певної IP-адреси в межах діапазону IP, а потім активний хост відповість пакетом ARP, надіславши свою MAC-адресу повідомленням “хост вгору”. Ви отримаєте це повідомлення від усіх активних хостів. Щоб виконати сканування хосту, введіть:
nmap -sP
Це підніме екран із наступним:
Визначте імена хостів
Однією з найпростіших і найкорисніших команд, яку ви можете використовувати, є команда -sL, яка повідомляє nmap запускати запит DNS на ваш вибір IP. За допомогою цього методу ви можете знайти імена хостів для IP, не надсилаючи жодного пакета хосту. Наприклад, введіть таку команду:
nmap -sL 192.100.0.0/24
Це повертає список імен, що стосуються відсканованих IP-адрес, що може бути надзвичайно корисним для визначення того, для чого насправді є певні IP-адреси (за умови, що вони мають відповідне ім’я!).
Сканування ОС
Ще одна з корисних функцій Nmap – це виявлення ОС. Щоб виявити операційну систему пристрою, Nmap відправляє пакети TCP та UDP в порт і аналізує його відповідь. Потім Nmap проводить різноманітні тести від вибірки TCP ISN до вибірки IP-ідентифікаторів і порівнює його зі своєю внутрішньою базою даних 2600 операційних систем. Якщо він знайде збіг або відбиток пальців, він надає резюме, що складається з імені постачальника, операційної системи та версії.
Щоб виявити операційну систему хоста, введіть таку команду:
nmap -O 192.168.5.102
Важливо зазначити, що для використання команди –O вам потрібен один відкритий і один закритий порт.
Виявлення версій
Виявлення версій – це ім’я, яке надається команді, яка дозволяє дізнатися, з якою версією програмного забезпечення працює комп’ютер. Що відрізняє його від більшості інших сканів, це те, що порт не є фокусом його пошуку. Натомість він намагається визначити, яке програмне забезпечення працює на комп’ютері, використовуючи інформацію, яку надає відкритий порт. Ви можете використовувати розпізнавання версій, ввівши команду -sV та вибравши свій IP-вибір, наприклад:
#nmap -sV 192.168.1.1
Збільшення багатослівності
Під час запуску будь-якого сканування через Nmap, можливо, вам знадобиться додаткова інформація. Введення багатослівної команди -v надасть вам додаткову інформацію про те, що робить Nmap. На Nmap доступно дев’ять рівнів багатослівності, від -4 до 4:
- Рівень -4 – Не забезпечує виводу (наприклад, ви не побачите пакети відповідей)
- Рівень 3 – Подібно до -4, але також дає вам повідомлення про помилки, щоб показати вам, якщо команда Nmap не вдалася
- -2 рівень – Чи є вищезазначене, але також є попередження та додаткові повідомлення про помилки
- Рівень -1 – Показує інформацію про час виконання, наприклад версію, час початку та статистику
- Рівень 0 – рівень багатомовності за замовчуванням, який відображає відправлені та отримані пакети, а також іншу інформацію
- Рівень 1 – Те саме, що рівень 0, але також містить детальну інформацію про деталі протоколу, прапори та терміни.
- 2 рівень – Показує більш обширну інформацію про відправлені та отримані пакети
- 3 рівень – Показати повну необроблену передачу відправленого та отриманого пакету
- 4 рівень – Те саме, що рівень 3 з додатковою інформацією
Збільшення багатослівності чудово підходить для пошуку способів оптимізації ваших сканувань. Ви збільшуєте кількість інформації, до якої маєте доступ, та надаєте собі більше інформації для цілеспрямованого вдосконалення вашої мережевої інфраструктури.
Двигун сценаріїв Nmap
Якщо ви хочете отримати максимальну користь від Nmap, вам знадобиться використовувати двигун сценаріїв Nmap (NSE). NSE дозволяє користувачам писати сценарії в Lua, щоб вони могли автоматизувати різні мережеві завдання. За допомогою NSE можна створити кілька різних категорій сценаріїв. Це:
- авт – скрипти, які працюють з або обходять облікові дані автентифікації в цільовій системі (наприклад, x11-access).
- мовлення – сценарії, які зазвичай використовуються для виявлення хостів шляхом трансляції в локальній мережі
- груба – скрипти, які використовують грубу силу для отримання доступу до віддаленого сервера (наприклад, http-brute)
- за замовчуванням – сценарії, встановлені за замовчуванням у Nmap на основі швидкості, корисності, багатослівності, надійності, настирливості та конфіденційності
- відкриття – скрипти, які шукають публічні реєстри, служби каталогів та пристрої з підтримкою SNMP
- дос – сценарії, які можуть спричинити відмову в обслуговуванні. Може використовуватися для тестування або нападу служб.
- експлуатувати – скрипти, призначені для використання вразливості мережі (наприклад, http-shellshock
- зовнішній – сценарії, які надсилають дані до зовнішніх баз даних, таких як whois-ip
- завивка – скрипти, які надсилають рандомізовані поля в пакетах
- настирливий – сценарії, які загрожують збоєм цільової системи та трактуються як шкідливі іншими адміністраторами
- зловмисне програмне забезпечення – скрипти, які використовуються для перевірки, чи система заражена шкідливим програмним забезпеченням
- сейф – сценарії, які не вважаються нав’язливими, розроблені для використання лазівки або служб збоїв
- версія – використовується під функцією виявлення версії, але не може бути вибрана явно
- вульн – скрипти, призначені для перевірки на наявність вразливих місць та повідомлення про них користувачеві
NSE може бути досить складним, щоб спочатку обернутися головою, але після початкової кривої навчання орієнтуватися стає набагато простіше.
Наприклад, введення команди -sC дозволить вам використовувати загальні сценарії, що є рідними для платформи. Якщо ви хочете запустити власні сценарії, можете скористатися параметром –script. Важливо пам’ятати, що будь-які запущені сценарії можуть пошкодити вашу систему, тому перевірте все, перш ніж вирішити запустити сценарії.
Інструменти графічного інтерфейсу Nmap
Zenmap
Як альтернатива інтерфейсу командного рядка, NMap також пропонує графічний інтерфейс під назвою Zenmap. На Zenmap ви можете створювати та виконувати команди та сканування. GUI набагато зручніший для користувачів, ніж інтерфейс командного рядка, що робить його ідеальним для нових користувачів. GUI може також відображати графічні порівняння результатів тестування послуг, наприклад:
Якщо ви хочете писати власні команди та сценарії, то GUI далеко не ідеальний, і вам краще дотримуватися Nmap та інтерфейс командного рядка.
Paessler PRTG Network Monitor
Paessler PRTG Network Monitor використовує Простий протокол управління мережею (SNMP) знайти всі пристрої у вашій мережі. Після того, як кожен предмет буде виявлений, він реєструється в інвентарі. Інвентаризація є основою Мережевої карти PRTG. Ви можете реорганізувати карту вручну, якщо хочете, а також можете вказати спеціальні макети. Карти не обмежуються відображенням пристроїв на одному сайті. Він може показувати всі пристрої в WAN і навіть будувати всі сайти компанії на реальній карті світу. Хмарні сервіси також включені в мережеву карту.
Функція виявлення мережі PRTG працює постійно. Отже, якщо ви додасте, перемістіть або вилучите пристрій, ці зміни автоматично відобразяться на карті, а інвентар обладнання також оновиться.
Кожен пристрій на карті позначений своєю IP-адресою. Крім того, ви можете вибрати пристрої, ідентифіковані за їх MAC-адресами або іменами хостів. Кожна піктограма пристрою на карті – це посилання на вікно з деталізацією, яке дає інформацію про цей елемент обладнання. Ви можете змінити відображення мережевої карти, щоб обмежити її на пристроях певного типу, або просто показати один розділ мережі.
Paessler PRTG – це єдина система моніторингу інфраструктури. Він також буде відслідковувати ваші сервери та програми, що працюють на них. Існують спеціальні модулі для моніторингу веб-сайтів, і монітор також може охоплювати віртуалізації та мережі Wi-Fi.
Paessler PRTG доступний як онлайн-сервіс з локальним колекторним агентом, встановленим у вашій системі. Або ви можете встановити програмне забезпечення в приміщеннях. Система PRTG працює на комп’ютерах Windows, але вона здатна спілкуватися з пристроями, на яких працює інші операційні системи. PRTG доступний для завантаження у 30-денній безкоштовній пробній версії.
Що Золото Золото
WhatsUp Gold має функцію автоматичного виявлення, яка охоплює дротовий, бездротовий та віртуальний середовища. Програмне забезпечення для цього інструменту моніторингу інфраструктури встановлюється на Windows Server 2008 R2, 2012, 2012 R2 та 2016 р. Перший запуск утиліти розпочне мережеві процедури виявлення. Вони реєструють усі пристрої рівня 2 та рівня 3 (комутатори та маршрутизатори) у вашій мережі та записують їх у реєстр. Процес відкриття також генерує мережеву карту. Система ведення журналу постійно працює, тому будь-які зміни в мережі відображатимуться на карті. Хмарні сервіси, якими користується ваша компанія, також включаються на карту, і ви можете охопити кілька сайтів, щоб побудувати свій WAN на одній карті.
Процес відкриття WhatsUp Gold використовує підпрограми Ping та SNMP. Реєструється також тип пристроїв. Це допомагає монітору відповідно коригувати процеси для кожного типу обладнання. Спливаюче вікно деталей, що додається до кожної піктограми на карті, покаже вам деталі цього обладнання.
Стани пристроїв у мережі контролюються за допомогою SNMP. На карті показано стан здоров’я кожного пристрою: зелений для хорошого, жовтий для попередження та червоний для поганого. Тому, ви можете з першого погляду побачити, як все це обладнання. Стан мережевого зв’язку також виділяється кольором: зелений для хорошого, жовтий для попередження та червоний для перевантажених.
Ви можете отримати надбудову «Аналіз мережевого трафіку» для WhatsUp Gold, щоб отримати глибший інтелект щодо продуктивності вашої мережі. Це дає вам більше можливостей щодо усунення несправностей за допомогою розуміння продуктивності мережі як за посиланням, так і від кінця до кінця. Інструмент планування потенціалу допомагає передбачити попит та розширити ресурси, де це необхідно.
Альтернативи Nmap
Хоча постійні користувачі Nmap клянуться цим, у цього інструмента є свої обмеження. Новачки в адміністрації мережі навчилися очікувати інтерфейс графічного інтерфейсу від улюблених інструментів та кращого графічного представлення проблем роботи мережі. Адаптація Nmap до карти (див. Нижче) проходить довгий шлях до задоволення цих потреб.
Якщо ви не хочете використовувати утиліту командного рядка, для Nmap є альтернативи, які ви можете перевірити. SolarWinds, який є одним з провідних світових виробників інструментів мережевого адміністрування, навіть пропонує безкоштовний сканер портів. Аналітичні функції Nmap не такі великі, і ви можете виявити інші інструменти для подальшого вивчення статусів та продуктивності вашої мережі..
Nmap: Основний інструмент адміністрування мережі
Зрештою, якщо ви шукаєте інструмент, який дозволяє орієнтуватися на системи у вашій мережі та орієнтуватися між брандмауерами, то Nmap – це інструмент для вас. Хоча це не так гламурно, як деякі інші інструменти мережевого аналізу на ринку, він залишається основною частиною наборів інструментів більшості ІТ-адміністраторів. Пінг-скани та сканування портів – лише вершина айсберга, коли ми говоримо про те, на що здатна ця платформа.
Якщо ви хочете дізнатися більше про Nmap, обширний веб-сайт спільноти наповнений посібниками та інформацією, яка допоможе вам максимально використати досвід. Ви можете отримати доступ до документації Nmap на веб-сайті інструменту. Як тільки ви пройдете криву навчання, ви не тільки матимете більшу прозорість своєї мережі, але й зможете захистити свої системи від майбутніх загроз. Почніть тільки з вивчення основ, і з NMap ви будете чудово.