Как да тествате конфигурацията на вашата защитна стена с Nmap и Tcpdump
Въведение
Настройването на защитна стена за вашата инфраструктура е чудесен начин да осигурите сигурност за вашите услуги. След като разработите политика, от която сте доволни, следващата стъпка е да тествате правилата на вашата защитна стена. Важно е да добиете добра представа дали правилата на вашата защитна стена правят това, което смятате, че правят, и да добиете представа как изглежда вашата инфраструктура за външния свят.
В това ръководство ще разгледаме някои инструменти и техники, които можете да използвате, за да потвърдите правилата на вашата защитна стена. Това са някои от същите инструменти, които злонамерените потребители могат да използват, така че ще можете да видите каква информация могат да намерят, като отправят заявки към вашите сървъри.
Предпоставки
В това ръководство ще приемем, че сте конфигурирали защитна стена на поне един сървър. Можете да започнете да изграждате своята политика за защитна стена, като следвате едно или повече от тези ръководства:
- Iptables
- Iptables Essentials: Общи правила и команди на защитната стена
- Как да настроите защитна стена с UFW на Ubuntu 22.04
- UFW Essentials: Общи правила и команди на защитната стена
- Как да настроите защитна стена с помощта на FirewallD на Rocky Linux 9
Можете също така да конфигурирате облачните защитни стени на DigitalOcean, които работят като допълнителен външен слой към вашите сървъри в инфраструктурата на DigitalOcean. По този начин не е необходимо да конфигурирате защитна стена на вашите сървъри.
В това ръководство ще извикаме сървъра, съдържащ политиките на защитната стена, които искате да тествате на целта. В допълнение към вашата цел, вие също ще трябва да имате достъп до сървър, от който да тествате, разположен извън мрежата, която вашата защитна стена защитава. В това ръководство ще използвате сървър на Ubuntu 22.04 като ваша машина за одит.
След като имате сървър, от който да тествате, и целите, които искате да оцените, можете да продължите с това ръководство.
Трябва да извършвате дейностите, посочени в това ръководство, само върху инфраструктурата, която контролирате, за целите на одита на сигурността. Законите около сканирането на портове са несигурни в много юрисдикции. Известно е, че доставчиците на интернет услуги и други доставчици забраняват потребители, за които е установено, че сканират портове.
Инструментите, които ще използваме за тестване на политиките на защитната стена
Има доста различни инструменти, които можете да използвате, за да тествате нашите правила за защитна стена. Някои от тях имат припокриваща се функционалност. Няма да обхванем всеки възможен инструмент. Вместо това ще разгледаме някои общи категории инструменти за одит и ще разгледаме инструментите, които ще използваме в това ръководство.
Пакетни анализатори
Анализаторите на пакети могат да се използват за наблюдение на целия мрежов трафик, който минава през интерфейс в много детайли. Повечето анализатори на пакети имат опцията да работят в реално време, показвайки пакетите, когато са изпратени или получени, или да записват информация за пакети във файл и да я обработват по-късно. Анализът на пакетите ви дава възможност да видите на детайлно ниво какви типове отговори вашите целеви машини изпращат обратно към хостовете в отворената мрежа.
За целите на това ръководство ще използваме инструмента
tcpdump
. Това е добър вариант, защото е мощен, гъвкав и повсеместен в Linux системи. Ще го използвате за заснемане на необработените пакети, докато изпълняваме нашите тестове, в случай че се нуждаем от преписа за по-късен анализ. Някои други популярни опции са Wireshark (илиtshark
, братовчед му от командния ред) иtcpflow
, които могат да сглобяват цели TCP разговори по организиран начин.Порт скенери
За да генерирате трафика и отговорите, които вашият анализатор на пакети да улови, ще използвате скенер за портове. Порт скенерите могат да се използват за създаване и изпращане на различни типове пакети до отдалечени хостове, за да се открие типа трафик, който сървърът приема. Злонамерените потребители често използват това като инструмент за откриване, за да се опитат да намерят уязвими услуги, които да експлоатират (част от причината да използвате защитна стена на първо място), така че ще използвате това, за да се опитате да видите какво може да открие нападателят.
За това ръководство ще използвате инструмента за мрежово картографиране и сканиране на портове
nmap
. Можете да използватеnmap
, за да изпращате пакети от различни типове, за да се опитате да разберете кои услуги са на целевата ви машина и какви правила на защитната стена я защитават.Настройка на машината за одит
Преди да започнете, трябва да се уверите, че имаме инсталирани необходимите инструменти. Можете да получите
tcpdump
иnmap
от хранилищата на Ubuntu. Стартирайтеapt update
, за да актуализирате вашите локални списъци с пакети, след което ги инсталирайте сapt install
:- sudo apt update
- sudo apt install tcpdump nmap
След това създайте директория, където можете да съхранявате резултатите от сканирането:
- mkdir ~/scan_results
За да сте сигурни, че получавате чисти резултати, излезте от всички сесии, които може да имате отворени между вашата система за одит и целевата система. Това включва SSH сесии, всякакви HTTP(S) връзки, които може да сте установили в уеб браузър и др.
Сканирайте вашата цел за отворени TCP портове
След като имаме готов сървър и файлове, ще започнете със сканиране на вашия целеви хост за отворени TCP портове.
Всъщност има няколко TCP сканирания, които
nmap
знае как да прави. Най-доброто, с което обикновено започвате, е SYN сканиране, известно още като \полуотворено сканиране, тъй като всъщност никога не се договаря пълна TCP връзка. Това често се използва от нападателите, тъй като не се регистрира при откриване на проникване системи, защото никога не завършва пълно ръкостискане.Настройка на улавянето на пакети
Преди да сканирате, ще настроите
tcpdump
за улавяне на трафика, генериран от теста. Това ще ви помогне да анализирате по-задълбочено изпратените и получените пакети по-късно, ако е необходимо. Създайте директория в~/scan_results
, за да можете да съхранявате заедно файловете, свързани с вашето SYN сканиране:- mkdir ~/scan_results/syn_scan
Можете да стартирате прихващане на
tcpdump
и да запишете резултатите във файл във вашата директория~/scan_results/syn_scan
със следната команда:- sudo tcpdump host target_ip_addr -w ~/scan_results/syn_scan/packets
По подразбиране
tcpdump
ще работи на преден план. За да стартирате вашетоnmap
сканиране в същия прозорец, ще трябва да поставите на пауза процесаtcpdump
и след това да го рестартирате във фонов режим.Можем да поставим на пауза работещ процес, като натиснем
CTRL-Z
:Output^Z [1]+ Stopped sudo tcpdump host target_ip_addr -w ~/scan_results/syn_scan/packetsСега можете да рестартирате заданието във фонов режим, като напишете
bg
:- bg
Трябва да получите подобен ред на изход, този път без етикета \Stopped и с амперсанд в края, за да посочите, че процесът ще се изпълнява във фонов режим (т.е. вече няма да блокира вашия терминал):
Output[1]+ sudo tcpdump host target_ip_addr -w ~/scan_results/syn_scan/packets &Командата вече се изпълнява във фонов режим, следейки за всякакви пакети, преминаващи между вашите одитни и целевите машини. Вече можем да стартираме нашето SYN сканиране.
Стартирайте SYN Scan
С
tcpdump
, записващ вашия трафик към целевата машина, вие сте готови да стартиратеnmap
. Можете да стартиратеnmap
с тези флагове:-sS
: Това стартира SYN сканиране. Технически това е сканирането по подразбиране, коетоnmap
ще извърши, ако не е даден тип сканиране, но ние ще го включим тук, за да бъде изрично.-Pn
: Това казва наnmap
да пропусне стъпката за откриване на хост, което ще прекрати теста по-рано, ако хостът не отговори на ping. Тъй като знаете, че целта е онлайн, можете да пропуснете това.-p-
: По подразбиране SYN сканирането ще пробва само 1000-те най-често използвани порта. Това казва наnmap
да провери всеки наличен порт.-T4
: Това задава времеви профил заnmap
, като му казва да ускори теста с риск от малко по-малко точни резултати. 0 е най-бавният, а 5 е най-бързият. Тъй като сканирате всеки порт, можете да използвате това като базова линия и да проверите отново всички портове по-късно, които може да са докладвани неправилно.-vv
: Това увеличава подробността на изхода.--reason
: Това указва наnmap
да предостави причината, поради която състоянието на порт е докладвано по определен начин.-oN
: Това записва резултатите във файл, който можете да използвате за по-късен анализ.
Забележка: За да проверите IPv6, ще трябва да добавите флага
-6
към вашите команди...Заедно командата ще изглежда така:
- sudo nmap -sS -Pn -p- -T4 -vv --reason -oN ~/scan_results/syn_scan/nmap.results target_ip_addr
Дори с шаблона за време, зададен на 4, сканирането вероятно ще отнеме доста време, тъй като преминава през 65 535 порта. Ще започнат да се отпечатват резултати, които изглеждат така:
OutputStarting Nmap 6.49BETA4 ( https://nmap.org ) at 2022-12-19 16:54 EDT Initiating Parallel DNS resolution of 1 host. at 16:54 Completed Parallel DNS resolution of 1 host. at 16:54, 0.12s elapsed Initiating SYN Stealth Scan at 16:54 Scanning 198.51.100.15 [65535 ports] Discovered open port 22/tcp on 198.51.100.15 Discovered open port 80/tcp on 198.51.100.15 SYN Stealth Scan Timing: About 6.16% done; ETC: 17:02 (0:07:52 remaining) SYN Stealth Scan Timing: About 8.60% done; ETC: 17:06 (0:10:48 remaining) . . .Спрете tcpdump Packet Capture
След като сканирането приключи, можете да върнете нашия процес
tcpdump
обратно на преден план и да го спрете.Премахнете го от фона, като изпълните
fg
, за \foreground:- fg
Спрете изпълняващия се процес, като натиснете
Ctrl+C
.Анализиране на резултатите
Сега трябва да имате два файла във вашата директория
~/scan_results/syn_scan
. Един, нареченpackets
, генериран от изпълнението наtcpdump
, и един, генериран отnmap
, нареченnmap.results
.Нека първо да разгледаме файла
nmap.results
:- less ~/scan_results/syn_scan/nmap.results
# Nmap 6.49BETA4 scan initiated Mon Dec 19 17:05:13 2022 as: nmap -sS -Pn -p- -T4 -vv --reason -oN /home/user/scan_results/syn_scan/nmap.results 198.51.100.15 Increasing send delay for 198.51.100.15 from 0 to 5 due to 9226 out of 23064 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 5 to 10 due to 14 out of 34 dropped probes since last increase. Nmap scan report for 198.51.100.15 Host is up, received user-set (0.00097s latency). Scanned at 2022-12-19 17:05:13 EDT for 2337s Not shown: 65533 closed ports Reason: 65533 resets PORT STATE SERVICE REASON 22/tcp open ssh syn-ack ttl 63 80/tcp open http syn-ack ttl 63 Read data files from: /usr/local/bin/../share/nmap # Nmap done at Mon Dec 19 17:44:10 2022 -- 1 IP address (1 host up) scanned in 2336.85 seconds
Маркираната област по-горе съдържа основните резултати от сканирането. Можете да заключите, че порт 22 и порт 80 са отворени на сканирания хост, за да се позволи SSH и HTTP трафик. Можете също така да видите, че 65 533 порта са затворени. Друг възможен резултат би бил \филтриран. Филтриран означава, че тези портове са били идентифицирани като спрени от нещо по мрежовия път. Може да е защитна стена на целта, но може също да са правила за филтриране на всеки от междинните хостове между одитните и целевите машини.
За да видите действителния пакетен трафик, който е бил изпратен и получен от целта, можете да прочетете файла
packets
обратно вtcpdump
, по следния начин:- sudo tcpdump -nn -r ~/scan_results/syn_scan/packets | less
Този файл съдържа целия разговор, проведен между двамата хостове. Можете да филтрирате по няколко начина.
Например, за да видите само трафика, изпратен към целта, можете да въведете:
- sudo tcpdump -nn -r ~/scan_results/syn_scan/packets 'dst target_ip_addr' | less
По същия начин, за да видите само трафика на отговорите, можете да промените
dst
наsrc
:- sudo tcpdump -nn -r ~/scan_results/syn_scan/packets 'src target_ip_addr' | less
Отворените TCP портове биха отговорили на тези заявки със SYN пакет. Можем да търсим директно отговори за този тип с филтър като този:
- sudo tcpdump -nn -r ~/scan_results/syn_scan/packets 'src target_ip_addr and tcp[tcpflags] & tcp-syn != 0' | less
Това ще ви покаже само успешните SYN отговори и трябва да съответства на портовете, които сте видели при изпълнението на
nmap
:Outputreading from file packets, link-type EN10MB (Ethernet) 17:05:13.557597 IP 198.51.100.15.22 > 198.51.100.2.63872: Flags [S.], seq 2144564104, ack 4206039348, win 29200, options [mss 1460], length 0 17:05:13.558085 IP 198.51.100.15.80 > 198.51.100.2.63872: Flags [S.], seq 3550723926, ack 4206039348, win 29200, options [mss 1460], length 0Можете да направите повече анализи на данните, както сметнете за добре. Всичко е уловено за асинхронна обработка и анализ.
Сканирайте вашата цел за отворени UDP портове
Сега, след като вече знаете как да изпълнявате тези тестове, можете да завършите подобен процес, за да сканирате за отворени UDP портове.
Настройка на улавянето на пакети
Още веднъж създайте директория, в която да съхранявате вашите резултати:
- mkdir ~/scan_results/udp_scan
Стартирайте отново запис на
tcpdump
. Този път запишете файла в новата директория~/scan_results/udp_scan
:- sudo tcpdump host target_ip_addr -w ~/scan_results/udp_scan/packets
Поставете процеса на пауза и го поставете на заден план, като въведете
Ctrl+Z
и след това стартиратеbg
:- bg
Стартирайте UDP сканирането
Сега сте готови да стартирате UDP сканирането. Поради естеството на UDP протокола, това сканиране обикновено отнема значително повече време от SYN сканирането. Всъщност може да отнеме повече от ден, ако сканирате всеки порт на системата. UDP е протокол без връзка, така че получаването на отговор може да означава, че портът на целта е блокиран, че е приет или че пакетът е загубен. За да се опита да направи разлика между тях,
nmap
трябва да препредаде допълнителни пакети, за да се опита да получи отговор.Повечето от флаговете ще бъдат същите, които сте използвали за SYN сканирането. Всъщност единственият нов флаг е:
-sU
: Това казва наnmap
да извърши UDP сканиране.
Ускоряване на UDP теста
Ако се притеснявате за времето, което отнема този тест, може първо да искате да тествате само част от вашите UDP портове. Можете да тествате само 1000-те най-често срещани порта, като оставите флага
-p-
. Това може значително да съкрати времето за сканиране. Ако обаче искате пълна картина, ще трябва да се върнете по-късно и да сканирате целия си диапазон от портове.Тъй като сканирате собствената си инфраструктура, може би най-добрият вариант за ускоряване на UDP сканирането е временно да деактивирате ограничаването на скоростта на ICMP в целевата система. Обикновено Linux хостовете ограничават ICMP отговорите до 1 в секунда (това обикновено е нещо добро, но не и за нашия одит), което означава, че пълното UDP сканиране ще отнеме над 18 часа. Можете да проверите тази настройка на вашата целева машина, като напишете:
- sudo sysctl net.ipv4.icmp_ratelimit
Outputnet.ipv4.icmp_ratelimit = 1000\1000 е броят милисекунди между отговорите. Можете временно да деактивирате това ограничаване на честотата на целевата система, като напишете:
- sudo sysctl -w net.ipv4.icmp_ratelimit=0
Много е важно да върнете тази стойност след теста.
Изпълнение на теста
Не забравяйте да запишете резултатите в директорията
~/scan_results/udp_scan
. Всичко заедно, командата трябва да изглежда така:- sudo nmap -sU -Pn -p- -T4 -vv --reason -oN ~/scan_results/udp_scan/nmap.results target_ip_addr
След като сканирането приключи, трябва да върнете ограничението на скоростта на ICMP (ако сте го променили) на целевата машина:
- sudo sysctl -w net.ipv4.icmp_ratelimit=1000
Спрете tcpdump Packet Capture
Върнете процеса
tcpdump
обратно на преден план на вашата машина за проверка, като изпълнитеfg
:- fg
След това спрете улавянето на пакета с
Ctrl+C
.Анализиране на резултатите
Сега можете да разгледате генерираните файлове.
Полученият файл
nmap.results
трябва да бъде подобен на последния резултат:- less ~/scan_results/udp_scan/nmap.results
# Nmap 6.49BETA4 scan initiated Mon Dec 19 12:42:42 2022 as: nmap -sU -Pn -p- -T4 -vv --reason -oN /home/user/scan_results/udp_scan/nmap.results 198.51.100.15 Increasing send delay for 198.51.100.15 from 0 to 50 due to 10445 out of 26111 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 50 to 100 due to 11 out of 23 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 100 to 200 due to 3427 out of 8567 dropped probes since last increase. Nmap scan report for 198.51.100.15 Host is up, received user-set (0.0010s latency). Scanned at 2022-12-19 12:42:42 EDT for 9956s Not shown: 65532 closed ports Reason: 65532 port-unreaches PORT STATE SERVICE REASON 22/udp open|filtered ssh no-response 80/udp open|filtered http no-response 443/udp open|filtered https no-response Read data files from: /usr/local/bin/../share/nmap # Nmap done at Mon Dec 19 15:28:39 2022 -- 1 IP address (1 host up) scanned in 9956.97 seconds
Ключова разлика между този резултат и резултата от SYN по-рано вероятно ще бъде количеството портове, маркирани с
отворени|филтрирани
. Това означава, чеnmap
не може да определи дали липсата на отговор означава, че дадена услуга е приела трафика или той е бил отхвърлен от някаква защитна стена или механизъм за филтриране по пътя на доставка.Анализирането на изхода на
tcpdump
също е значително по-трудно, защото няма флагове за връзка и защото трябва да съпоставите ICMP отговорите с UDP заявките.Можете да видите колко пакета е трябвало да изпрати
nmap
до портовете, които са докладвани катоopen|filtered
, като поискате да видите UDP трафика към един от докладваните портове:- sudo tcpdump -nn -Q out -r ~/scan_results/udp_scan/packets 'udp and port 22'
Outputreading from file /home/user/scan_results/udp_scan/packets, link-type EN10MB (Ethernet) 14:57:40.801956 IP 198.51.100.2.60181 > 198.51.100.15.22: UDP, length 0 14:57:41.002364 IP 198.51.100.2.60182 > 198.51.100.15.22: UDP, length 0 14:57:41.202702 IP 198.51.100.2.60183 > 198.51.100.15.22: UDP, length 0 14:57:41.403099 IP 198.51.100.2.60184 > 198.51.100.15.22: UDP, length 0 14:57:41.603431 IP 198.51.100.2.60185 > 198.51.100.15.22: UDP, length 0 14:57:41.803885 IP 198.51.100.2.60186 > 198.51.100.15.22: UDP, length 0Сравнете това с резултатите от един от сканираните портове, който е маркиран като \затворен:
- sudo tcpdump -nn -Q out -r ~/scan_results/udp_scan/packets 'udp and port 53'
Outputreading from file /home/user/scan_results/udp_scan/packets, link-type EN10MB (Ethernet) 13:37:24.219270 IP 198.51.100.2.60181 > 198.51.100.15.53: 0 stat [0q] (12)Можете да опитате ръчно да реконструирате процеса, през който преминава
nmap
, като първо съставите списък на всички портове, към които изпращаме UDP пакети, като използвате нещо подобно:- sudo tcpdump -nn -Q out -r ~/scan_results/udp_scan/packets "udp" | awk '{print $5;}' | awk 'BEGIN { FS = "." } ; { print $5 +0}' | sort -u | tee outgoing
След това можете да видите кои ICMP пакети получихме обратно, че портът е недостъпен:
- sudo tcpdump -nn -Q in -r ~/scan_results/udp_scan/packets "icmp" | awk '{print $10,$11}' | grep unreachable | awk '{print $1}' | sort -u | tee response
След това можете да вземете тези два отговора и да видите кои UDP пакети никога не са получили обратно ICMP отговор:
- comm -3 outgoing response
Това трябва да съответства най-вече на списъка с портове, които
nmap
докладва (може да съдържа някои фалшиви положителни резултати от изгубени върнати пакети).Откриване на хост и услуга
Можете да изпълните някои допълнителни тестове на вашата цел, за да видите дали е възможно
nmap
да идентифицира работещата операционна система или някоя от версиите на услугата. Създайте директория, в която да съхранявате вашите резултати от версията:- mkdir ~/scan_results/versions
Откриване на версиите на услугите на сървъра
Можете да опитате да отгатнете версиите на услугите, изпълнявани на целта, чрез процес, известен като пръстов отпечатък. Вие извличате информация от сървъра и я сравнявате с известни версии в нашата база данни.
tcpdump
не би бил много полезен в този сценарий, така че можете да го пропуснете. Ако все пак искате да го заснемете, следвайте процеса, който сте използвали последния път.Сканирането
nmap
, което трябва да използвате, се задейства от флага-sV
. Тъй като вече сте направили SYN и UDP сканирания, можете да подадете точните портове, които трябва да разгледате с флага-p
. Тук ще разгледате 22 и 80 (портовете, които бяха показани в нашето SYN сканиране):- sudo nmap -sV -Pn -p 22,80 -vv --reason -oN ~/scan_results/versions/service_versions.nmap target_ip_addr
Ако прегледате резултатния файл, може да получите информация за работещата услуга, в зависимост от това колко \бъбрив е отговорът на услугата:
- less ~/scan_results/versions/service_versions.nmap
# Nmap 6.49BETA4 scan initiated Mon Dec 19 15:46:12 2022 as: nmap -sV -Pn -p 22,80 -vv --reason -oN /home/user/scan_results/versions/service_versions.nmap 198.51.100.15 Nmap scan report for 198.51.100.15 Host is up, received user-set (0.0011s latency). Scanned at 2022-12-19 15:46:13 EDT for 8s PORT STATE SERVICE REASON VERSION 22/tcp open ssh syn-ack ttl 63 OpenSSH 6.6.1p1 Ubuntu 2ubuntu2 (Ubuntu Linux; protocol 2.0) 80/tcp open http syn-ack ttl 63 nginx 1.4.6 (Ubuntu) Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel Read data files from: /usr/local/bin/../share/nmap Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . # Nmap done at Mon Dec 19 15:46:21 2022 -- 1 IP address (1 host up) scanned in 8.81 seconds
Тук можете да видите, че тестът успя да идентифицира версията на SSH сървъра и дистрибуцията на Linux, която го пакетира, както и приетата версия на SSH протокола. Той също така разпозна версията на Nginx и отново я идентифицира като съответстваща на пакет Ubuntu.
Откриване на хост операционната система
Можете да опитате да накарате
nmap
да познае хост операционната система въз основа на характеристиките на нейния софтуер и отговорите също. Това работи по същия начин като версията на услугата. Още веднъж ще пропуснем изпълнението наtcpdump
от този тест, но можете да го изпълните, ако желаете.Флагът, от който се нуждаете, за да извършите откриване на операционна система, е
-O
(главната буква \O). Пълната команда може да изглежда по следния начин:- sudo nmap -O -Pn -vv --reason -oN ~/scan_results/versions/os_version.nmap target_ip_addr
Ако прегледате изходния файл, може да видите нещо подобно:
- less ~/scan_results/versions/os_version.nmap
# Nmap 6.49BETA4 scan initiated Mon Dec 19 15:53:54 2022 as: nmap -O -Pn -vv --reason -oN /home/user/scan_results/versions/os_version.nmap 198.51.100.15 Increasing send delay for 198.51.100.15 from 0 to 5 due to 65 out of 215 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 5 to 10 due to 11 out of 36 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 10 to 20 due to 11 out of 35 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 20 to 40 due to 11 out of 29 dropped probes since last increase. Increasing send delay for 198.51.100.15 from 40 to 80 due to 11 out of 31 dropped probes since last increase. Nmap scan report for 198.51.100.15 Host is up, received user-set (0.0012s latency). Scanned at 2022-12-19 15:53:54 EDT for 30s Not shown: 998 closed ports Reason: 998 resets PORT STATE SERVICE REASON 22/tcp open ssh syn-ack ttl 63 80/tcp open http syn-ack ttl 63 No exact OS matches for host (If you know what OS is running on it, see https://nmap.org/submit/ ). TCP/IP fingerprint: OS:SCAN(V=6.49BETA4%E=4%D=8/27%OT=22%CT=1%CU=40800%PV=N%DS=2%DC=I%G=Y%TM=55 OS:DF6AF0%P=x86_64-unknown-linux-gnu)SEQ(SP=F5%GCD=1%ISR=106%TI=Z%CI=Z%TS=8 OS:)OPS(O1=M5B4ST11NW8%O2=M5B4ST11NW8%O3=M5B4NNT11NW8%O4=M5B4ST11NW8%O5=M5B OS:4ST11NW8%O6=M5B4ST11)WIN(W1=7120%W2=7120%W3=7120%W4=7120%W5=7120%W6=7120 OS:)ECN(R=Y%DF=Y%T=40%W=7210%O=M5B4NNSNW8%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A=S+ OS:%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%Q=) OS: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=A%A OS:=Z%F=R%O=%RD=0%Q=)T7(R=N)U1(R=Y%DF=N%T=40%IPL=164%UN=0%RIPL=G%RID=G%RIPC OS:K=G%RUCK=G%RUD=G)U1(R=N)IE(R=N) Uptime guess: 1.057 days (since Mon Dec 12 14:32:23 2022) Network Distance: 2 hops TCP Sequence Prediction: Difficulty=245 (Good luck!) IP ID Sequence Generation: All zeros Read data files from: /usr/local/bin/../share/nmap OS detection performed. Please report any incorrect results at https://nmap.org/submit/ . # Nmap done at Mon Dec 12 15:54:24 2022 -- 1 IP address (1 host up) scanned in 30.94 seconds
Виждаме, че в този случай
nmap
няма предположения за операционната система въз основа на подписа, който е видял. Ако беше получил повече информация, вероятно щеше да покаже различни проценти, които показват как подписът на целевата машина съответства на подписите на операционната система в нейните бази данни. Можете да видите подписа на пръстов отпечатък, койтоnmap
получи от целта под редаTCP/IP fingerprint:
.Идентификацията на операционната система може да помогне на атакуващия да определи кои експлойти могат да бъдат полезни в системата. Конфигурирането на вашата защитна стена да отговаря на по-малко запитвания може да попречи на точността на някои от тези методи за откриване.
Заключение
Тестването на вашата защитна стена и изграждането на информираност за това как изглежда вашата вътрешна мрежа за външен нападател може да помогне за минимизиране на риска. Информацията, която намирате от сондирането на собствената си инфраструктура, може да доведе до дискусия за това дали някое от вашите политически решения трябва да бъде преразгледано, за да се повиши сигурността. Може също така да осветли всички пропуски във вашата сигурност, които може да са възникнали поради неправилно подреждане на правила или забравени тестови политики. Препоръчително е редовно да тествате политиките си с най-новите бази данни за сканиране, за да подобрите или поне да поддържате текущото си ниво на сигурност.
За да получите представа за някои подобрения в правилата за вашата защитна стена, вижте това ръководство.