Термин «дактилоскопия ОС» в Ethical Hacking относится к любому методу, используемому для определения операционной системы на удаленном компьютере. Это может быть —
-
Активная дактилоскопия — Активная дактилоскопия выполняется путем отправки специально созданных пакетов на целевую машину, а затем записывает ее ответ и анализирует собранную информацию для определения целевой ОС. В следующем разделе мы привели пример, объясняющий, как вы можете использовать инструмент NMAP для обнаружения ОС целевого домена.
-
Пассивная дактилоскопия — Пассивная дактилоскопия основана на следах сниффера от удаленной системы. Основываясь на следах сниффера (таких как Wireshark) пакетов, вы можете определить операционную систему удаленного хоста.
Активная дактилоскопия — Активная дактилоскопия выполняется путем отправки специально созданных пакетов на целевую машину, а затем записывает ее ответ и анализирует собранную информацию для определения целевой ОС. В следующем разделе мы привели пример, объясняющий, как вы можете использовать инструмент NMAP для обнаружения ОС целевого домена.
Пассивная дактилоскопия — Пассивная дактилоскопия основана на следах сниффера от удаленной системы. Основываясь на следах сниффера (таких как Wireshark) пакетов, вы можете определить операционную систему удаленного хоста.
У нас есть следующие четыре важных элемента, которые мы рассмотрим, чтобы определить операционную систему:
-
TTL — какая операционная система устанавливает время жизни для исходящего пакета.
-
Размер окна — то, что операционная система устанавливает размер окна.
-
DF — устанавливает ли операционная система бит « Не фрагментировать» .
-
TOS — Устанавливает ли операционная система тип обслуживания , и если да, то при чем.
TTL — какая операционная система устанавливает время жизни для исходящего пакета.
Размер окна — то, что операционная система устанавливает размер окна.
DF — устанавливает ли операционная система бит « Не фрагментировать» .
TOS — Устанавливает ли операционная система тип обслуживания , и если да, то при чем.
Анализируя эти факторы пакета, вы сможете определить удаленную операционную систему. Эта система не на 100% точна и работает лучше для некоторых операционных систем, чем для других.
Основные шаги
Прежде чем атаковать систему, необходимо знать, в какой операционной системе размещается веб-сайт. Как только целевая ОС известна, становится легко определить, какие уязвимости могут присутствовать для использования целевой системы.
Ниже приведена простая команда nmap, которую можно использовать для идентификации операционной системы, обслуживающей веб-сайт, и всех открытых портов, связанных с именем домена, то есть IP-адреса.
$nmap -O -v tutorialspoint.com
Он покажет вам следующую конфиденциальную информацию о данном доменном имени или IP-адресе —
Starting Nmap 5.51 ( http://nmap.org ) at 2015-10-04 09:57 CDT Initiating Parallel DNS resolution of 1 host. at 09:57 Completed Parallel DNS resolution of 1 host. at 09:57, 0.00s elapsed Initiating SYN Stealth Scan at 09:57 Scanning tutorialspoint.com (66.135.33.172) [1000 ports] Discovered open port 22/tcp on 66.135.33.172 Discovered open port 3306/tcp on 66.135.33.172 Discovered open port 80/tcp on 66.135.33.172 Discovered open port 443/tcp on 66.135.33.172 Completed SYN Stealth Scan at 09:57, 0.04s elapsed (1000 total ports) Initiating OS detection (try #1) against tutorialspoint.com (66.135.33.172) Retrying OS detection (try #2) against tutorialspoint.com (66.135.33.172) Retrying OS detection (try #3) against tutorialspoint.com (66.135.33.172) Retrying OS detection (try #4) against tutorialspoint.com (66.135.33.172) Retrying OS detection (try #5) against tutorialspoint.com (66.135.33.172) Nmap scan report for tutorialspoint.com (66.135.33.172) Host is up (0.000038s latency). Not shown: 996 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 443/tcp open https 3306/tcp open mysql TCP/IP fingerprint: OS:SCAN(V=5.51%D=10/4%OT=22%CT=1%CU=40379%PV=N%DS=0%DC=L%G=Y%TM=56113E6D%P= OS:x86_64-redhat-linux-gnu)SEQ(SP=106%GCD=1%ISR=109%TI=Z%CI=Z%II=I%TS=A)OPS OS:(O1=MFFD7ST11NW7%O2=MFFD7ST11NW7%O3=MFFD7NNT11NW7%O4=MFFD7ST11NW7%O5=MFF OS:D7ST11NW7%O6=MFFD7ST11)WIN(W1=FFCB%W2=FFCB%W3=FFCB%W4=FFCB%W5=FFCB%W6=FF OS:CB)ECN(R=Y%DF=Y%T=40%W=FFD7%O=MFFD7NNSNW7%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A OS:=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0% OS:Q=)T5(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S= OS:A%A=Z%F=R%O=%RD=0%Q=)T7(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1(R= OS:Y%DF=N%T=40%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N% OS:T=40%CD=S)
Если в вашей системе Linux не установлена команда nmap , вы можете установить ее с помощью следующей команды yum —
$yum install nmap
Вы можете подробно изучить команду nmap, чтобы проверить и понять различные функции, связанные с системой, и защитить ее от злонамеренных атак.
Быстрая починка
Вы можете спрятать свою основную систему за защищенным прокси-сервером или VPN, чтобы ваша полная идентификация была безопасной и в конечном итоге ваша основная система оставалась безопасной.
Сканирование портов
Мы только что видели информацию, предоставленную командой nmap . Эта команда выводит список всех открытых портов на данном сервере.
PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 443/tcp open https 3306/tcp open mysql
Вы также можете проверить, открыт ли определенный порт или нет, используя следующую команду —
$nmap -sT -p 443 tutorialspoint.com
Это даст следующий результат —
Starting Nmap 5.51 ( http://nmap.org ) at 2015-10-04 10:19 CDT Nmap scan report for tutorialspoint.com (66.135.33.172) Host is up (0.000067s latency). PORT STATE SERVICE 443/tcp open https Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds
Как только хакер узнает об открытых портах, он может планировать различные методы атаки через открытые порты.
Быстрая починка
Всегда рекомендуется проверять и закрывать все нежелательные порты, чтобы защитить систему от вредоносных атак.
Ping Sweep
Развертка ping — это метод сканирования сети, который можно использовать для определения того, какой IP-адрес из диапазона IP-адресов сопоставляется действующим хостам. Ping Sweep также известен как ICMP Sweep.
Вы можете использовать команду fping для проверки пинга. Эта команда представляет собой ping-подобную программу, которая использует эхо-запрос протокола управляющих сообщений Интернета (ICMP), чтобы определить, работает ли хост.
fping отличается от ping тем, что вы можете указать любое количество хостов в командной строке или указать файл, содержащий списки хостов для ping. Если хост не отвечает в течение определенного периода времени и / или лимита повторных попыток, он будет считаться недоступным.
Быстрая починка
Чтобы отключить пинг в сети, вы можете заблокировать запросы ICMP ECHO из внешних источников. Это можно сделать с помощью следующей команды, которая создаст правило брандмауэра в iptable .
$iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP
DNS перечисление
Сервер доменных имен (DNS) похож на карту или адресную книгу. Фактически это похоже на распределенную базу данных, которая используется для перевода IP-адреса 192.111.1.120 в имя www.example.com и наоборот.
Перечисление DNS — это процесс определения местоположения всех DNS-серверов и их соответствующих записей для организации. Идея состоит в том, чтобы собрать как можно больше интересных деталей о вашей цели перед началом атаки.
Вы можете использовать команду nslookup, доступную в Linux, чтобы получить информацию о DNS и хосте. Кроме того, вы можете использовать следующий скрипт DNSenum для получения подробной информации о домене —
Сценарий DNSenum может выполнять следующие важные операции —
-
Получить адреса хоста
-
Получить серверы имен
-
Получить запись MX
-
Выполнять запросы axfr на серверах имен
-
Получить дополнительные имена и субдомены с помощью Google Scraping
-
Субдомены грубой силы из файла также могут выполнять рекурсию на субдомене с записями NS
-
Рассчитать диапазоны сети домена класса С и выполнить к ним запросы whois
-
Выполните обратный поиск по сетям
Получить адреса хоста
Получить серверы имен
Получить запись MX
Выполнять запросы axfr на серверах имен
Получить дополнительные имена и субдомены с помощью Google Scraping
Субдомены грубой силы из файла также могут выполнять рекурсию на субдомене с записями NS
Рассчитать диапазоны сети домена класса С и выполнить к ним запросы whois
Выполните обратный поиск по сетям
Быстрая починка
Перечисление DNS не имеет быстрого решения, и оно действительно выходит за рамки этого руководства. Предотвращение перечисления DNS является большой проблемой.
Если ваш DNS не настроен безопасным способом, возможно, что много конфиденциальной информации о сети и организации может выйти наружу, и ненадежный пользователь Интернета может выполнить передачу зоны DNS.