Hvernig á að nota Nmap Script Engine (NSE) forskriftir í Linux
skanna opnar hafnir og þjónustur sem keyra á þessum vélum og svo margt fleira.
Einn af áhugaverðum eiginleikum Nmap er Nmap Script Engine (NSE), sem færir henni enn meiri sveigjanleika og skilvirkni. Það gerir þér kleift að skrifa eigin forskriftir á Lua forritunarmáli og hugsanlega deila þessum forskriftum með öðrum Nmap notendum þarna úti.
Það eru fjórar gerðir af NSE skriftum, þ.e.
- Forskriftarforskriftir – eru forskriftir sem keyra fyrir einhverjar skannaaðgerðir Nmap, þær eru keyrðar þegar Nmap hefur enn ekki safnað upplýsingum um markmið.
- Hýsingarforskriftir – eru forskriftir sem keyrðar eru eftir að Nmap hefur framkvæmt venjulegar aðgerðir eins og hýsiluppgötvun, gáttaskönnun, útgáfugreiningu og stýrikerfisgreiningu gegn markhýsil.
- Þjónustuforskriftir – eru forskriftir sem keyrðar eru á móti tiltekinni þjónustu sem hlustar á miðhýsil.
- Postrule scripts – eru skriftur keyrðar eftir að Nmap hefur skannað alla markhýsinga sína.
Síðan eru þessar forskriftir flokkaðar undir ýmsa flokka, þar á meðal þá sem eru til auðkenningar (auth), uppgötvunar á gestgjöfum (útsending), brute force árásir til að giska á auðkenningarskilríki (brute), uppgötva meira um netkerfi (uppgötvun), valda afneitun á þjónustu (dos). ), að nýta sér einhverja veikleika (nýtingu) o.s.frv. Fjöldi forskrifta tilheyra sjálfgefna flokknum.
Athugið: Áður en lengra er haldið ættirðu að taka eftir þessum lykilatriðum:
- Ekki framkvæma handrit frá þriðja aðila án þess að skoða þau með gagnrýnum hætti eða aðeins ef þú treystir höfundunum. Þetta er vegna þess að þessar forskriftir eru ekki keyrðar í sandkassa og gætu því óvænt eða illgjarn skemmt kerfið þitt eða ráðist inn í friðhelgi þína.
- Í öðru lagi gætu mörg þessara skrifta hugsanlega keyrt annað hvort sem forskrift eða eftirreglu. Með hliðsjón af þessu er mælt með því að nota forreglu til að tryggja samræmi.
- Nmap notar scripts/script.db gagnagrunninn til að finna út tiltæk sjálfgefna forskriftir og flokka.
Til að sjá staðsetningu allra tiltækra NSE forskrifta skaltu keyra staðsetningarforritið á flugstöðinni, svona:
$ locate *.nse /usr/share/nmap/scripts/acarsd-info.nse /usr/share/nmap/scripts/address-info.nse /usr/share/nmap/scripts/afp-brute.nse /usr/share/nmap/scripts/afp-ls.nse /usr/share/nmap/scripts/afp-path-vuln.nse /usr/share/nmap/scripts/afp-serverinfo.nse /usr/share/nmap/scripts/afp-showmount.nse /usr/share/nmap/scripts/ajp-auth.nse /usr/share/nmap/scripts/ajp-brute.nse /usr/share/nmap/scripts/ajp-headers.nse /usr/share/nmap/scripts/ajp-methods.nse /usr/share/nmap/scripts/ajp-request.nse /usr/share/nmap/scripts/allseeingeye-info.nse /usr/share/nmap/scripts/amqp-info.nse /usr/share/nmap/scripts/asn-query.nse ...
NSE forskriftir eru hlaðnar með því að nota --script
fánann, sem gerir þér einnig kleift að keyra eigin forskriftir með því að gefa upp flokka, skriftuskráarheiti eða heiti á möppum þar sem forskriftirnar þínar eru staðsettar.
Setningafræðin til að virkja forskriftir er sem hér segir:
$ nmap -sC target #load default scripts OR $ nmap --script filename|category|directory|expression,... target
Þú getur skoðað lýsingu á handriti með --script-help
valkostinum. Að auki geturðu sent rök til sumra forskrifta með --script-args
og --script-args-file
valmöguleikunum, það seinna er notað til að gefa upp skráarnafn frekar en skipanalínu arg.
Til að framkvæma skönnun með flestum sjálfgefnum forskriftum, notaðu -sC
fánann eða notaðu að öðrum kosti --script=default
eins og sýnt er.
$ nmap -sC scanme.nmap.org OR $ nmap --script=default scanme.nmap.org OR $ nmap --script default scanme.nmap.org
Starting Nmap 7.01 ( https://nmap.org ) at 2017-11-15 10:36 IST Nmap scan report for scanme.nmap.org (45.33.32.156) Host is up (0.0027s latency). Not shown: 999 filtered ports PORT STATE SERVICE 80/tcp open http |_http-title: Go ahead and ScanMe! Nmap done: 1 IP address (1 host up) scanned in 11.74 seconds
Til að nota handrit í viðeigandi tilgangi geturðu fyrst og fremst fengið stutta lýsingu á því hvað það gerir í raun og veru, til dæmis http-hausa.
$ nmap --script-help http-headers scanme.nmap.org
Starting Nmap 7.01 ( https://nmap.org ) at 2017-11-15 10:37 IST http-headers Categories: discovery safe https://nmap.org/nsedoc/scripts/http-headers.html Performs a HEAD request for the root folder ("/") of a web server and displays the HTTP headers returned.
Hleður NSE forskriftir til að framkvæma Nmap skannar
Þú getur valið eða hlaðið forskriftir til að framkvæma skönnun með mismunandi aðferðum sem lýst er hér að neðan.
Þegar þú veist hvað handrit gerir geturðu framkvæmt skönnun með því að nota það. Þú getur notað eina skriftu eða slegið inn lista yfir skriftarheiti aðskilinn með kommum. Skipunin hér að neðan mun gera þér kleift að skoða HTTP hausana sem eru stilltir á vefþjóninum hjá markhýslinum.
$ nmap --script http-headers scanme.nmap.org
Starting Nmap 7.01 ( https://nmap.org ) at 2017-11-15 10:39 IST Nmap scan report for scanme.nmap.org (45.33.32.156) Host is up (0.27s latency). Not shown: 996 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http | http-headers: | Date: Wed, 15 Nov 2017 05:10:04 GMT | Server: Apache/2.4.7 (Ubuntu) | Accept-Ranges: bytes | Vary: Accept-Encoding | Connection: close | Content-Type: text/html | |_ (Request type: HEAD) 179/tcp filtered bgp 31337/tcp open Elite Nmap done: 1 IP address (1 host up) scanned in 20.96 seconds
Þú getur líka hlaðið skriftum úr einum flokki eða úr lista yfir flokka sem eru aðskilin með kommum. Í þessu dæmi erum við að nota öll forskriftir í sjálfgefnu og útsendingarflokki til að framkvæma skönnun á hýsilinn 192.168.56.1.
$ nmap --script default,broadcast 192.168.56.1
Þetta er gagnlegt þegar þú vilt velja forskriftir með tilteknu nafnamynstri. Til dæmis til að hlaða öllum forskriftum með nöfnum sem byrja á ssh skaltu keyra skipunina hér að neðan á flugstöðinni:
$ nmap --script "ssh-*" 192.168.56.1
Þú getur líka valið forskriftir með Boolean tjáningum sem þú getur smíðað með og, eða, en ekki aðgerðunum. Og nöfn í Boolean tjáningu geta verið flokkur, skráarheiti frá script.db, eða allt.
Eftirfarandi skipun mun hlaða forskriftum úr sjálfgefnum eða útsendingarflokkum.
$ nmap --script "default or broadcast" 192.168.56.10
Sem jafngildir:
$ nmap --script default,broadcast 192.168.56.10
Til að hlaða öllum forskriftum sem sleppa þeim sem eru í óvirkum flokki skaltu keyra þessa skipun á flugstöðinni.
$ nmap --script "not vuln" 192.168.56.10
Næsta skipun lítur svolítið flókið út en hún er auðskilin, hún velur forskriftir í sjálfgefnu eða útsendingarflokkum og sleppir þeim sem heita sem byrja á ssh-:
$ nmap --script "(default or broadcast) and not ssh-*" 192.168.56.10
Mikilvægt er að það er hægt að sameina flokka, forskriftanöfn, möppu sem inniheldur sérsniðin forskriftir eða boolean tjáningu til að hlaða forskriftum, eins og þetta:
$ nmap --script broadcast,vuln,ssh-auth-methods,/path/to/custom/scripts 192.168.56.10
Hér að neðan er dæmi sem sýnir hvernig á að senda rök til forskrifta með –script-args valkostinum:
$ nmap --script mysql-audit --script-args "mysql-audit.username='root', \ mysql-audit.password='password_here', mysql-audit.filename='nselib/data/mysql-cis.audit'"
Til að senda gáttarnúmer skaltu nota -p nmap valkostinn:
$ nmap -p 3306 --script mysql-audit --script-args "mysql-audit.username='root', \ mysql-audit.password='password_here' , mysql-audit.filename='nselib/data/mysql-cis.audit'"
Ofangreind skipun keyrir úttekt á öryggisstillingum MySQL gagnagrunnsþjónsins gegn hlutum af CIS MySQL v1.0.2 viðmiðinu. Þú getur líka búið til þínar eigin gagnlegu sérsniðnu endurskoðunarskrár fyrir aðrar MySQL úttektir.
Það er það í bili. Þú getur fundið frekari upplýsingar á Nmap mannasíðunni eða skoðað NSE notkun.
Til að byrja að skrifa eigin NSE forskriftir skaltu skoða þessa handbók: https://nmap.org/book/nse-tutorial.html
Nmap er virkilega öflugt og gagnlegt tól sem sérhver kerfis- eða netkerfisstjóri þarf í öryggisvopnabúrinu sínu - NSE bætir einfaldlega meiri skilvirkni við það.
Í þessari grein kynntum við þér Nmap Script Engine og skoðuðum hvernig á að finna og nota hinar ýmsu tiltæku forskriftir undir mismunandi flokkum. Ef þú hefur einhverjar spurningar skaltu ekki hika við að skrifa aftur til okkar í gegnum athugasemdareyðublaðið hér að neðan.