Nmap er en forkortelse for Network Mapper. Det er et open source-sikkerhedsværktøj til netværksudforskning, sikkerhedsscanning og auditering. Nmap-kommandoen leveres dog med masser af muligheder, der kan gøre værktøjet mere robust og svært at følge for nye brugere. Formålet med denne vejledning er at introducere en bruger til Nmap-kommandolinjeværktøjet til at scanne en vært eller et netværk for at finde ud af de mulige sårbare punkter i værterne. Du vil også lære, hvordan du bruger Nmap til offensive og defensive formål. Lad os se nogle almindelige eksempler på Nmap-kommandoer, der kører på Linux eller Unix-lignende systemer.
- Hvad er Nmap, og hvad bruges det til?
- Nmap Command Examples in Linux and Unix – Sample setup (LAB) for
- Hvordan installerer jeg nmap på Linux?
- Scan en enkelt vært eller en IP-adresse (IPv4) ved hjælp af nmap
- Scan flere IP-adresser eller undernet (IPv4)
- Læs liste over værter/netværk fra en fil (IPv4)
- Udelukkelse af værter/netværk (IPv4) fra nmap-scanning eksempler
- Tænd for scriptet til scanning af OS- og versionsdetektion (IPv4) med nmap
- Find ud af, om en vært/et netværk er beskyttet af en firewall ved hjælp af kommandoen namp
- Scan en vært, når den er beskyttet af firewall
- Scan en IPv6-vært/adresse eksempler
- Scan et netværk og find ud af, hvilke servere og enheder der er oppe og kører
- Hvordan udfører jeg en hurtig scanning med namp?
- Vis årsagen til, at en port er i en bestemt tilstand
- Vis kun åbne (eller muligvis åbne) porte ved hjælp af nmap-kommandoen i Linux
- Vis alle sendte og modtagne pakker
- Vis værtsgrænseflader og ruter
- Hvordan scanner jeg specifikke porte ved hjælp af nmap?
- 16: Den hurtigste måde at scanne alle dine enheder/computere for åbne porte nogensinde
- Hvordan registrerer jeg fjernstyresystemet ved hjælp af nmap?
- Hvordan kan jeg registrere fjerntjenesternes (server/daemon) versionsnumre?
- Scan en vært ved hjælp af TCP ACK (PA) og TCP Syn (PS) ping
- Søg en vært ved hjælp af IP-protokol ping
- Søg en vært ved hjælp af UDP ping
- Find ud af de mest almindeligt anvendte TCP-porte ved hjælp af TCP SYN Scan
- Scan en vært for UDP-tjenester (UDP-scanning)
- Scanning efter IP-protokol
- Scan en firewall for svagheder i sikkerheden
- Scan en firewall efter pakkefragmenter
- Skjul en scanning med lokkeduer
- Scan en firewall for MAC-adressespoofing
- Hvordan kan jeg gemme output til en tekstfil?
- Søg efter webservere og rør til Nikto til scanning
- Speed up nmap
- Er du ikke fan af namp-kommandolinjeværktøjer?
- Hvordan registrerer og blokerer jeg portscanning på Linux- og Unix/BSD-servere?
- Conclusion
Hvad er Nmap, og hvad bruges det til?
nmap i aktion
Fra man-siden:
Nmap (“Network Mapper”) er et open source-værktøj til udforskning af netværk og sikkerhedsauditering. Det blev designet til hurtigt at scanne store netværk, selv om det fungerer fint mod enkelte værter. Nmap bruger rå IP-pakker på nye måder til at bestemme, hvilke værter der er tilgængelige på netværket, hvilke tjenester (programnavn og version) disse værter tilbyder, hvilke operativsystemer (og OS-versioner) de kører, hvilken type pakkefiltre/firewalls der er i brug, og snesevis af andre karakteristika. Mens Nmap almindeligvis bruges til sikkerhedsrevisioner, finder mange system- og netværksadministratorer det nyttigt til rutineopgaver som f.eks. netværksopgørelse, styring af tidsplaner for opgradering af tjenester og overvågning af værter eller tjenesters oppetid.
Det blev oprindeligt skrevet af Gordon Lyon, og det kan nemt besvare følgende spørgsmål:
- Find kørende computere på det lokale netværk
- Hvilke IP-adresser fandt du, der kører på det lokale netværk?
- Opdag styresystemet på din målmaskine
- Find ud af, hvilke porte der er åbne på den maskine, som du lige har scannet?
- Se, om systemet er inficeret med malware eller virus.
- Søg efter uautoriserede servere eller netværkstjeneste på dit netværk.
- Lokaliser og fjern computere, der ikke opfylder organisationens minimumssikkerhedsniveau.
Nmap Command Examples in Linux and Unix – Sample setup (LAB) for
Port scanning kan være ulovligt i nogle jurisdiktioner. Så opstil et laboratorium som følger:
+---------+ +---------+ | Network | +--------+ | server1 |-----------+ swtich +---------|server2 | +---------+ | (sw0) | +--------+ +----+----+ | | +---------+----------------+ | wks01 Linux/macOS/Win | +--------------------------+
Hvor,
- wks01 er din computer, der enten kører Linux/macOS (OS X) eller et Unix-lignende operativsystem. Den bruges til at scanne dit lokale netværk. Kommandoen nmap skal være installeret på denne computer.
- Server1 kan være drevet af Linux / Unix / MS-Windows-operativsystemer. Der er tale om en server, der ikke er patchet. Du er velkommen til at installere et par tjenester som f.eks. en web-server, en filserver osv.
- server2 kan drives af Linux / Unix / MS-Windows-operativsystemer. Der er tale om en fuldt patchet server med firewall. Igen er du velkommen til at installere få tjenester såsom en web-server, filserver og så videre.
- Alle tre systemer er forbundet via switch.
Hvordan installerer jeg nmap på Linux?
See:
- Debian / Ubuntu Linux: Installer nmap-software til scanning af netværk
- CentOS / RHEL: Installer nmap Network Security Scanner
- OpenBSD: Installer nmap Network Security Scanner
Scan en enkelt vært eller en IP-adresse (IPv4) ved hjælp af nmap
Fig.01: nmap output
Scan flere IP-adresser eller undernet (IPv4)
nmap 192.168.1.1 192.168.1.2 192.168.1.3## works with same subnet i.e. 192.168.1.0/24 nmap 192.168.1.1,2,3
Du kan også scanne et interval af IP-adresser:
nmap 192.168.1.1-20
Du kan scanne et interval af IP-adresser ved hjælp af et wildcard:
nmap 192.168.1.*
Endeligt kan du scanne et helt undernet:
nmap 192.168.1.0/24
Læs liste over værter/netværk fra en fil (IPv4)
Med -iL-indstillingen kan du læse listen over målsystemer ved hjælp af en tekstfil. Dette er nyttigt til at scanne et stort antal værter/netværk. Opret en tekstfil som følger:cat > /tmp/test.txt
Føj navne til som følger:
server1.cyberciti.biz192.168.1.0/24192.168.1.1/2410.1.2.3localhost
Syntaksen er som følger:
nmap -iL /tmp/test.txt
Udelukkelse af værter/netværk (IPv4) fra nmap-scanning eksempler
Når du scanner et stort antal værter/netværk, kan du udelukke værter fra en scanning:
nmap 192.168.1.0/24 --exclude 192.168.1.5nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.254
eller udelukke listen fra en fil kaldet /tmp/exclude.txt
nmap -iL /tmp/scanlist.txt --excludefile /tmp/exclude.txt
Tænd for scriptet til scanning af OS- og versionsdetektion (IPv4) med nmap
nmap -A 192.168.1.254nmap -v -A 192.168.1.1nmap -A -iL /tmp/scanlist.txt
Find ud af, om en vært/et netværk er beskyttet af en firewall ved hjælp af kommandoen namp
## nmap command examples for your host ##nmap -sA 192.168.1.254nmap -sA server1.cyberciti.biz
Scan en vært, når den er beskyttet af firewall
I disse eksempler på Nmap-kommandoer vil vi scanne en router/wifi-enhed, der har 192.168.1.1.1 som IP:
nmap -PN 192.168.1.1nmap -PN server1.cyberciti.biz
Scan en IPv6-vært/adresse eksempler
Med indstillingen -6 aktiveres IPv6-scanning med namp-kommandoen. Syntaksen er:
nmap -6 IPv6-Address-Herenmap -6 server1.cyberciti.biznmap -6 2607:f0d0:1002:51::4nmap -v A -6 2607:f0d0:1002:51::4
Scan et netværk og find ud af, hvilke servere og enheder der er oppe og kører
Dette er kendt som værtsopdagelse eller ping-scanning:
nmap -sP 192.168.1.0/24
Sådan ser det ud:
Hvordan udfører jeg en hurtig scanning med namp?
nmap -F 192.168.1.1nmap -6 -F IPv6_Address_Here
Vis årsagen til, at en port er i en bestemt tilstand
nmap --reason 192.168.1.1nmap --reason server1.cyberciti.biz
Output:
Vis kun åbne (eller muligvis åbne) porte ved hjælp af nmap-kommandoen i Linux
Kør:
nmap --open 192.168.1.1nmap --open server1.cyberciti.biznmap --open 192.168.2.18
Scanoutput fra min CentOS 7 Linux-server:
Vis alle sendte og modtagne pakker
nmap --packet-trace 192.168.1.1nmap --packet-trace server1.cyberciti.biz
Vis værtsgrænseflader og ruter
Dette er nyttigt til fejlfinding (ip-kommando eller rutekommando eller netstat-kommando som output ved hjælp af nmap-kommandoen i Linux)
nmap --iflist
Detaljeret rapport oprettet af Namp-kommandoen:
Hvordan scanner jeg specifikke porte ved hjælp af nmap?
Eksempler på output:
16: Den hurtigste måde at scanne alle dine enheder/computere for åbne porte nogensinde
nmap -T5 192.168.1.0/24nmap -T5 {sub/net}
Hvordan registrerer jeg fjernstyresystemet ved hjælp af nmap?
Du kan identificere en fjernværts værts apps og OS ved hjælp af -O-indstillingen:
nmap -O 192.168.1.1nmap -O --osscan-guess 192.168.1.1nmap -v -O --osscan-guess 192.168.1.1
Eksempler på output:
Se også Fingerprinting a web-server and a dns server command line tools for more information.
Hvordan kan jeg registrere fjerntjenesternes (server/daemon) versionsnumre?
Åbn terminalen, og skriv derefter følgende nmap-kommando:
nmap -sV 192.168.1.1
Eksempel på output:
Scan en vært ved hjælp af TCP ACK (PA) og TCP Syn (PS) ping
Hvis firewall blokerer standard ICMP-pings, skal du prøve følgende metoder til værtsopdagelse:
nmap -PS 192.168.1.1nmap -PS 80,21,443 192.168.1.1nmap -PA 192.168.1.1nmap -PA 80,21,200-512 192.168.1.1
Søg en vært ved hjælp af IP-protokol ping
nmap -PO 192.168.1.1
Søg en vært ved hjælp af UDP ping
Denne scanning omgår firewalls og filtre, der kun filtrerer TCP:
nmap -PU 192.168.1.1nmap -PU 2000.2001 192.168.1.1
Find ud af de mest almindeligt anvendte TCP-porte ved hjælp af TCP SYN Scan
Scan en vært for UDP-tjenester (UDP-scanning)
De fleste populære tjenester på internettet kører over TCP-protokollen. DNS, SNMP og DHCP er tre af de mest almindelige UDP-tjenester. Brug følgende syntaks til at finde ud af UDP-tjenester:
nmap -sU nas03nmap -sU 192.168.1.1
Eksempel på output:
Scanning efter IP-protokol
Denne type scanning giver dig mulighed for at bestemme, hvilke IP-protokoller (TCP, ICMP, IGMP osv.) understøttes af målmaskinerne:
nmap -sO 192.168.1.1
Scan en firewall for svagheder i sikkerheden
De følgende scanningstyper udnytter et subtilt smuthul i TCP og er gode til at teste sikkerheden for almindelige angreb:
Se, hvordan du blokerer Xmas packkets, syn-floods og andre conman-angreb med iptables.
Scan en firewall efter pakkefragmenter
Optionen -f får den ønskede scanning (herunder ping-scanninger) til at bruge små fragmenterede IP-pakker. Ideen er at dele TCP-headeren op over
flere pakker for at gøre det sværere for pakkefiltre, indtrængningsdetekteringssystemer og andre irritationsmomenter at opdage, hvad du laver.
Skjul en scanning med lokkeduer
Med indstillingen -D ser det ud for fjernværten, som om den eller de værter, du angiver som lokkeduer, også scanner målnetværket. Således kan deres IDS rapportere 5-10 portscanninger fra unikke IP-adresser, men de vil ikke vide, hvilken IP der scannede dem, og hvilke der var uskyldige lokomotiver:
nmap -n -Ddecoy-ip1,decoy-ip2,your-own-ip,decoy-ip3,decoy-ip4 remote-host-ipnmap -n -D192.168.1.5,10.5.1.2,172.1.2.4,3.4.2.1 192.168.1.5
Scan en firewall for MAC-adressespoofing
Hvordan kan jeg gemme output til en tekstfil?
Syntaksen er:
nmap 192.168.1.1 > output.txtnmap -oN /path/to/filename 192.168.1.1nmap -oN output.txt 192.168.1.1
Søg efter webservere og rør til Nikto til scanning
nmap -p80 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
nmap -p80,443 192.168.1.2/24 -oG - | /path/to/nikto.pl -h -
Speed up nmap
Giv nmap-indstillingen -T til nmap-kommandoen:nmap -v -sS -A -T4 192.168.2.5
Eksempler på output:
Er du ikke fan af namp-kommandolinjeværktøjer?
Så langt har vi set eksempler på Nmap-kommandoer ved hjælp af Linux- og Unix-kommandolinjeindstillingerne. Det er dog ikke alle, der er super behagelige med CLI. Derfor kan vi bruge GUI-appen ved navn Zenmap, som er det officielle network mapper front end/GUI-værktøj:
Zenmap er den officielle Nmap Security Scanner GUI. Det er et gratis og open source-program til flere platforme (Linux, Windows, Mac OS X, BSD osv.), som har til formål at gøre Nmap let at bruge for begyndere, samtidig med at det giver avancerede funktioner til erfarne Nmap-brugere. Hyppigt anvendte scanninger kan gemmes som profiler for at gøre det let at køre dem gentagne gange. En kommandoskaber giver mulighed for interaktiv oprettelse af Nmap-kommandolinjer. Scanningsresultater kan gemmes og ses senere. Gemte scanningsresultater kan sammenlignes med hinanden for at se, hvordan de adskiller sig fra hinanden. Resultaterne af de seneste scanninger gemmes i en søgbar database.
Du kan installere zenmap ved hjælp af følgende apt-get-kommando eller apt-kommando:$ sudo apt-get install zenmap
Stikprøveudgange:
Typ følgende kommando for at starte zenmap:$ sudo zenmap
Stikprøveudgange
Fig.02: zenmap i aktion
Hvordan registrerer og blokerer jeg portscanning på Linux- og Unix/BSD-servere?
Forsøg følgende ressourcer:
- Sådan bruger du psad-værktøjet til at registrere og blokere portscanangreb i realtid.
- Debian / Ubuntu Linux: Install and Configure Shoreline Firewall (Shorewall).
- CentOS / Redhat Iptables Firewall Configuration Tutorial.
- Linux: 20 Iptables Examples For New SysAdmins.
- 20 Linux Server Hardening Security Tips.
Conclusion
I denne vejledning har du lært om Nmap-kommandoen med mange eksempler til Linux og brug med forskellige eksempler. Se venligst følgende ressourcer for yderligere oplysninger:
- Den officielle hjemmeside for Nmap-projektet her.
Nmap-kommandoen har mange flere muligheder, og du bedes gennemgå man-siden eller dokumentationen for at få flere oplysninger. Hvad er nogle af dine foretrukne Nmap-kommandolinjetricks? Del dine yndlingstips, tricks og råd i kommentarerne nedenfor.
🐧 Få de seneste tutorials om Linux, Open Source & DevOps via RSS feed eller ugentligt email nyhedsbrev.
🐧 25 kommentarer so far… tilføj en ↓
Kategori | Liste over Unix- og Linux-kommandoer | |
---|---|---|
Fil Management | cat | |
Firewall | Alpine Awall – CentOS 8 – OpenSUSE – RHEL 8 – Ubuntu 16.04 – Ubuntu 18.04 – Ubuntu 20.04 | |
Netværkstjenester | dig – host – ip – nmap | |
OpenVPN | CentOS 7 – CentOS 8 – Debian 10 – Debian 8/9 – Ubuntu 18.04 – Ubuntu 20.04 | |
Pakkehåndtering | apk – apt | |
Proceshåndtering | bg – chroot – cron – disown – fg – jobs – killall – kill – kill – pidof – pstree – pwdx – time | |
Searching | grep – whereis – which | |
User Information | groups – id – lastcomm – last – lid/libuser-lid – logname – members – users – whoami – who – who – w | |
WireGuard VPN | Alpine – CentOS 8 – Debian 10 – Firewall – Ubuntu 20.04 |