Як выкарыстоўваць Nmap для пошуку ўразлівасцяў?

Nmap, або network mapper, – гэта набор інструментаў для функцыянальнасці і тэсціравання пранікнення ў сетцы, уключаючы сканіраванне партоў і выяўленне ўразлівасцяў.

Скрыпт рухавіка сцэнарыяў Nmap (NSE) – адна з самых папулярных і магутных магчымасцей Nmap. Гэтыя скрыпты сканавання ўразлівасцяў Nmap выкарыстоўваюцца тэсціроўшчыкамі пранікнення і хакерамі для вывучэння распаўсюджаных вядомых уразлівасцей.

Common Vulnerabilities and Exposures (CVE) – гэта база дадзеных публічна раскрытых праблем бяспекі даных. Ён служыць эталоннай мадэллю для выяўлення ўразлівасцяў і пагроз, звязаных з бяспекай інфармацыйных сістэм.

У гэтым артыкуле мы разгледзім, як выкарыстоўваць Nmap для пошуку ўразлівасцяў.

Давайце пачнем!

Ўстаноўка Nmap

Nmap папярэдне ўсталяваны практычна ў кожным дыстрыбутыве Linux. У выпадку, калі ён адсутнічае, вам трэба ўсталяваць яго ўручную. Яго можна лёгка ўсталяваць з дапамогай наступнай каманды.

apt-get install nmap

І вы таксама можаце ўсталяваць яго, кланаваўшы афіцыйны рэпазітар git.

git clone https://github.com/nmap/nmap.git

Затым перайдзіце ў гэты каталог і ўсталюйце патрабаванні з дапамогай прыведзеных ніжэй каманд.

./configure
make
make install

Даступна апошняя версія гэтага праграмнага забеспячэння, а таксама двайковыя ўсталёўшчыкі для Windows, macOS і Linux (RPM). тут.

Пошук уразлівасцяў з дапамогай Nmap

Nmap-vulners, vulscan і vuln – гэта распаўсюджаныя і найбольш папулярныя сцэнарыі выяўлення CVE у пошукавай сістэме Nmap. Гэтыя скрыпты дазваляюць выяўляць важную інфармацыю аб недахопах бяспекі сістэмы.

Nmap-ўразлівасці

Адным з самых вядомых сканараў уразлівасцяў з’яўляецца Nmap-ўразлівасці. Давайце паглядзім, як наладзіць гэты інструмент, а таксама як запусціць базавае сканаванне CVE. Механізм сцэнарыяў Nmap шукае адказы HTTP, каб вызначыць CPE для дадзенага сцэнарыя.

Праверце гэта:  Выпраўце няправільны параметр

Ўстаноўка

Каб усталяваць скрыпт Nmap-vulners, перайдзіце ў каталог скрыптоў Nmap з дапамогай наступнай каманды.

cd /usr/share/nmap/scripts/

Наступны крок – кланаванне рэпазітара git.

git clone https://github.com/vulnersCom/nmap-vulners.git

Пасля кланавання рэпазітара git вам не трэба будзе нічога рабіць для канфігурацыі. Інструмент будзе ўсталяваны аўтаматычна.

І калі вы хочаце бачыць скрыпты NSE, якія прысутнічаюць у базе дадзеных Nmap-vulners, выкарыстоўвайце каманду ls. Ён адлюструе ўсе скрыпты пашырэння .nse на тэрмінале.

Выкарыстанне

Выкарыстоўваць скрыпты NSE проста. Проста перадайце аргумент -script нашай камандзе Nmap, каб указаць, які скрыпт NSE выкарыстоўваць.

nmap -sV --script vulners [--script-args mincvss=<arg_val>] <target>

Не забывайце перадаваць аргумент «-sV» пры выкарыстанні сцэнарыяў NSE. Уразлівасці Nmap не змогуць атрымаць доступ да базы дадзеных эксплойтаў Vulners, калі яна не атрымае ніякай інфармацыі аб версіі ад Nmap. Такім чынам, параметр -sV патрабуецца ўвесь час.

Прыклад каманды

Сінтаксіс даволі просты. Проста выклічце скрыпт з опцыяй «–script» і ўкажыце механізм уразлівасцяў і мэта, каб пачаць сканаванне.

nmap -sV --script nmap-vulners/ <target>

Калі вы жадаеце сканаваць якія-небудзь пэўныя парты, проста дадайце опцыю «-p» у канцы каманды і перадайце нумар порта, які вы хочаце сканаваць.

nmap -sV --script nmap-vulners/ <target> -p80,223

Nmap – вул

Скрыпты NSE класіфікуюцца ў адпаведнасці з наборам загадзя вызначаных катэгорый, да якіх належыць кожны скрыпт. Аўтэнтыфікацыя, трансляцыя, грубая сіла, інтрузійныя, шкоднасныя праграмы, бяспечныя, версіі і vuln – вось некаторыя з катэгорый. Вы можаце знайсці ўсе катэгорыі тыпаў сцэнарыяў NSE і іх фазы тут.

Скрыпты, якія ўваходзяць у катэгорыю «вульнаў», шукаюць пэўныя вядомыя ўразлівасці і паведамляюць, толькі калі яны выяўлены ў мэтавай сістэме.

nmap -sV --script vuln <target>

Nmap-vulscan

Вулкан гэта скрыпт NSE, які дапамагае Nmap выяўляць уразлівасці на мэтах на аснове сэрвісаў і выяўлення версій. vulscan падобны на модуль для Nmap, які ператварае яго ў сканер уразлівасцяў. Параметр Nmap -sV дазваляе вызначаць версіі кожнай службы, што выкарыстоўваецца для ідэнтыфікацыі магчымых эксплойтаў для выяўленых уразлівасцяў у сістэме.

Праверце гэта:  Што такое USB Gen 1, Gen 2 і Gen 2×2?

У цяперашні час даступныя наступныя прадусталяваныя базы дадзеных:

  • exploitdb.csv
  • osvdb.csv
  • securitytracker.csv
  • openvas.csv
  • scipvuldb.csv
  • xforce.csv
  • securityfocus.csv
  • cve.csv

Ўстаноўка

Каб усталяваць Vulscan, спачатку перайдзіце ў каталог скрыптоў Nmap з дапамогай наступнай каманды.

cd /usr/share/nmap/scripts/

Наступны крок – кланаванне рэпазітара git і ўстаноўка ўсіх патрабаванняў.

git clone https://github.com/scipag/vulscan.git

ln -s `pwd`/scipag_vulscan /usr/share/nmap/scripts/vulscan 

Vulscan выкарыстоўвае папярэдне сканфігураваныя базы дадзеных, захаваныя лакальна на нашай машыне. Каб абнавіць базу дадзеных, перайдзіце ў каталог праграмы абнаўлення. Увядзіце наступную каманду ў тэрмінал, каб перайсці ў каталог праграмы абнаўлення.

cd vulscan/utilities/updater/

Далей зменіце правы доступу файла, які трэба запусціць у сістэме.

chmod +x updateFiles.sh

І, нарэшце, абнавіце базы дадзеных эксплойтаў з дапамогай наступнай каманды.

 ./updateFiles.sh

Выкарыстанне

Давайце выкарыстаем vulscan для сканавання ўразлівасцяў Nmap. Скрыпт vulscan NSE можна выкарыстоўваць гэтак жа, як і nmap-vulners.

nmap -sV --script vulscan <target>

Па змаўчанні Vulscan будзе шукаць усе базы дадзеных адначасова. Запыт інфармацыі па ўсіх базах даных займае шмат часу. Выкарыстоўваючы параметр vulscandb, вы можаце перадаць толькі адну базу дадзеных CVE адначасова.

--script-args vulscandb=database_name

Прыклад каманды

nmap -sV --script vulscan --script-args vulscandb=exploit.csv <target> -p 80,233

Сканаванне індывідуальнай уразлівасці

Асобнае сканаванне ўразлівасцяў таксама можа быць выканана з выкарыстаннем пэўных сцэнарыяў у кожнай катэгорыі. Вось спіс з усіх 600+ Скрыпты NSE і 139 Бібліятэкі NSE.

Прыклады

  • http-csrf: Гэты скрыпт выяўляе ўразлівасці міжсайтавай падробкі запытаў (CSRF).
nmap -sV --script http-csrf <target>
  • http-sherlock: Мае намер выкарыстоўваць уразлівасць «shellshock» у вэб-праграмах.
nmap -sV --script http-sherlock <target>
  • http-slowloris-attack: не запускаючы DoS-атаку, гэты скрыпт правярае вэб-сервер або мэтавую сістэму на наяўнасць уразлівасцей для правядзення DoS-атакі Slowloris.
nmap -sV --script http-slowloris-check <target>
  • http-vmware-path-vuln: VMWare ESX, ESXi і Server пратэставаны на наяўнасць уразлівасці пры праходжанні шляху
nmap -sV --script http-vmware-path-vuln <target>
  • http-passwd: Спроба атрымаць /etc/passwd або boot.ini, каб даведацца, ці ўразлівы вэб-сервер для абыходу каталога.
nmap -sV --script http-passwd <target>
  • http-internal-ip-disclosure: Пры адпраўцы запыту HTTP/1.0 без загалоўка Host гэтая праверка вызначае, ці не выдае вэб-сервер свой унутраны IP-адрас.
nmap -sV --script http-internal-ip-disclosure <target>
  • http-vuln-cve2013-0156: Выяўляе серверы Ruby on Rails, якія ўразлівыя да нападаў DOS і ўвядзення каманд.
nmap -sV --script http-vuln-cve2013-0156 <target-address>

І, нарэшце, вось спіс усіх скрыптоў NSE, якія ўваходзяць у раздзел «вульн” катэгорыя.

Праверце гэта:  Кароткае кіраўніцтва па Python у кібербяспецы

Ці здольная ваша сістэма выяўляць сканаванне Nmap?

Разведка – гэта першая фаза этычнага ўзлому і тэсціравання на пранікненне. Хакеры выкарыстоўваюць фазу разведкі, каб знайсці недахопы і шчыліны ў сістэме для атакі. Таму сістэмы абароны павінны мець магчымасць іх выяўляць.

Вы будзеце атрымліваць абвесткі, калі будзеце выкарыстоўваць інструменты SIEM (Інфармацыя аб бяспецы і кіраванне падзеямі), брандмаўэры і іншыя меры абароны. А вось спіс лепшых інструментаў SIEM для абароны вашага бізнесу і арганізацыі ад кібератак. Гэтыя інструменты нават дапамагаюць рэгістраваць сканы Nmap. Сканіраванне ўразлівасцяў варта таго, бо ранняе выяўленне можа прадухіліць пашкоджанне сістэм у будучыні.

Заключэнне

Спадзяюся, вы знайшлі гэты артыкул вельмі карысным для вывучэння выкарыстання Nmap для пошуку ўразлівасцяў.

Вам таксама можа быць цікава даведацца пра спіс сканараў вэб-бяспекі з адкрытым зыходным кодам, каб знайсці слабыя месцы.