NMAP Scripting Engine (NSE) inneholder et sett med skript klassifisert etter kategori, og brukere kan skrive sine egne skript med tilpassede funksjoner.
Denne opplæringen forklarer NSE -grunnleggende, inkludert praktiske eksempler som viser hvordan du bruker NMAP -skriptmotor for å hacke WordPress -nettsteder og SSH -legitimasjon eller utføre flere ekstra sikkerhetskontroller.
NSE (NMAP Scripting Engine) Skriptkategorier og typer
Skriptene som er inkludert i NSE er klassifisert i henhold til forskjellige kriterier basert på utførelsesøyeblikket, skriptformålet og metodene.
Den første klassifiseringen som hovedsakelig er basert på utførelsesøyeblikket inkluderer 4 skripttyper:
Den andre klassifiseringen er basert på skriptets formål og sikkerhet. Kategorier bestiller skript i henhold til kriteriene. Kategoriene er:
Autorisasjon: Skript under denne kategorien er nyttige å håndtere autentisering. Under denne kategorien kan du finne skript for å omgå autentiseringsprosesser, for eksempel HTTP-metod-tamper for å omgå passordbeskyttede ressurser ved å utføre HTTP-verb-tukling. Hvis en rekke baner for å sjekke ikke er angitt, vil den krype webserveren og utføre sjekken mot enhver passordbeskyttet ressurs som er funnet.
Kategorien autoritoren inkluderer ikke brute force -skript som er lagret i brute -kategorien. Likevel, under Auth, kan du finne lignende funksjoner som skriptet HTTP-default-Accounts for å teste for tilgang med standardopplysninger på forskjellige webapplikasjoner og enheter.
Kringkaste: Disse skriptene tillater å oppdage verter ved å kringkaste det lokale nettverket.
Brute: Denne kategorien inneholder skript for å utføre brute force-angrep som HTTP-WordPress-Brute-skriptet for å angripe WordPress-nettsteder eller Rsync-Brute for å utføre angrep mot Rsync-protokollen.
Misligholde: Denne kategorien inkluderer skriptmøtekrav basert på hastighet, nytteverdi, verbositet, pålitelighet, påtrengende og personvern og personvern. Skript under denne kategorien må fullføre raskt og må rapportere verdifull informasjon om målet. Utgangen må være lesbar og begrenset til nøyaktig informasjon. Påtrengende skript som sannsynligvis krasjer målsystemet eller tjenesten er mindre egnet for denne kategorien.
Oppdagelse: Skript under denne kategorien prøver å oppdage mer om målet ved å spørre om offentlige kilder, SNMP-aktiverte enheter, kataloger og lignende. Skriptet http-tilknyttede-id-griper tilknyttede nettverks-ID-er som Google Adsense eller Analytics, Amazon, etc., fra en webside og kan brukes til å identifisere sider med samme eier.
Dos: Disse skriptene er nyttige for å teste mål for sårbarheter før DOS -angrep; Disse skriptene er utsatt for å krasje et sårbart system eller en tjeneste.
Utnytt: Skript i denne kategorien brukes til å utnytte sårbarheter på mål.
Utvendig: Denne kategorien inneholder skriptene som involverer eksterne ressurser under skanneprosessen, for eksempel databaseinformasjonsforespørsler på målet. Skript som deler informasjon om skanneprosessen med tredjepartsdatabaser er plassert i denne kategorien. IP-geolocation-geoplugin, for eksempel, prøver å bestemme det fysiske målstedet ved hjelp av http: // www.Geoplugin.com/.
Fuzzer: Denne kategorien inneholder skript for å sende randomiserte felt massivt for å oppdage sårbarheter for å utnytte en bufferoverløp, DOS (fornektelse av service), skripting på tvers av sted eller SQL-injeksjon.
Påtrengende: Skript i denne kategorien vil sannsynligvis krasje målet ved å bruke en betydelig mengde ressurser eller å bli oppdaget som ondsinnet aktivitet.
Skadevare: Malware -skript er designet for å oppdage mulig tilstedeværelse av skadelig programvare eller bakdører på målet.
Sikker: I motsetning til påtrengende skript, er det usannsynlig at trygge skript vil krasje målet, som ikke trenger en betydelig mengde ressurser og vil neppe bli oppdaget som ondsinnet av målet kan plasseres her. Skript under denne kategorien omhandler hovedsakelig oppdagelsesoppgaver.
Versjon: Versjonsskript utvider versjonen NMAP -funksjonen; Et eksempel er skriptdocker-versjonen som brukes til å oppdage en tjenestedockerversjon.
Vuln: Vuln skript er nyttige for å teste sårbarheter på mål nøyaktig.
NSE -skript er lokalisert på /usr/share/nmap/skript, og ethvert nytt manus du vil legge til (e.g., Vulscan) bør plasseres der.
Hvordan bruke Nmap Scripting Engine (NSE)
NSE er inkludert i NMAP, for å begynne å installere NMAP i tilfelle du ikke har det ennå, ved å løpe (på Debian og Debian -baserte Linux -distribusjonene):
sudo apt install nmapMerk: På Redhat -baserte Linux -distribusjoner kan du kjøre:
Yum installer NMAPEtter installasjonen, eller hvis du allerede har installert NMAP, kjører du følgende kommando for å oppdatere NMAP Scripting Engine -databasen:
NMAP--Script-upDatedBNMAP tillater ulik syntaks å kjøre skanninger; Følgende eksempel viser en NMAP-skanning med versjonsdeteksjon, og kaller skriptet HTTP-WordPress-Brute og passerer som et argument plasseringen av ordbøker. Dette er en mulig syntaks når du vet hvilket skript du vil kjøre.
I det første eksemplet vil jeg vise hvordan NMAP NSE kan hacke et WordPress-nettsted med Brute Force ved å bruke skriptet HTTP-WordPress-Brute.nse. I dette eksemplet er det hacket nettstedet Noticias Mercedes som jeg eier.
NMAP -SV-Script HTTP-WordPress-Brute-Script-Args 'UserDB = Brukere.txt, passdb = pass.txt 'Noticiasmercedes.comHvor:
NMAP -SV: Ringer NMAP og aktiverer versjonsdeteksjon.
-Script http-wordpress-brute: Ringer HTTP-WordPress-Brute-skriptet til Brute Force WordPress-nettsteder.
-Script-Args 'UserDB = brukere.txt, passdb = pass.tekst': Angir bruker- og passordordbøker, i dette tilfellet opprettet jeg filene brukere.txt og pass.TXT som inneholder dummy -data og de riktige legitimasjonene, filene var lokalisert i samme katalog som NMAP ble utført, kan du også spesifisere banen: -Script-Args 'UserDB =/Path/To/Dicionaty/brukere.TXT, PASSDB =/PATH/TO/DICIONATY/PASS.tekst'
Som du kan se i utdataene, ble passordet vellykket hacket:
For følgende eksempel, la oss anta at du er usikker på skriptet du vil kjøre mot målet ditt, men du vil begrense skanningen til sikkerhetskontroller. I dette tilfellet kan du instruere NMAP om å kjøre alle skript som tilhører trygge- eller standardkategoriene, eller begge av dem.
Følgende eksempel viser hvordan du kjører alle skript som tilhører standard og trygge kategorier med en brukervennlig syntaks:
NMAP -Script "Standard og Safe" Noticiasmercedes.comDet siste eksemplet viser hvordan du knekker SSH -legitimasjon ved bruk av NSE:
NMAP-Script SSH-Brute.NSE LocalhostSom med HTTP-WordPress-Brute, med dette skriptet, kan du også spesifisere ordbøker som omgår argumentet:
--Script-Args userDB = brukere.txt, passdb = pass.tekstHvor brukere.txt og pass.TXT må erstattes av ordbøkene dine (og banen om nødvendig),
Følgende artikler inkluderer flere NSE -eksempler:
Jeg håper du fant denne artikkelen om NSE nyttig; Fortsett å følge Linuxhint for flere Linux -tips og opplæringsprogrammer.