Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-23 15:02
Hva er netcat? Den manuelle siden for netcat sier følgende: "verktøyet nc (eller netcat) brukes til omtrent alt under solen som involverer TCP-, UDP- eller UNIX-domenekontakter. Det kan åpne TCP-tilkoblinger, sende UDP-pakker, lytte på vilkårlig TCP- og UDP -porter, gjør portskanning og håndterer både IPv4 og IPv6. I motsetning til telnet (1), skaper nc -skript pent, og skiller feilmeldinger til standardfeil i stedet for å sende dem til standardutgang, slik telnet (1) gjør med noen"
I hovedsak lar netcat deg koble til andre servere ved hjelp av TCP- eller UDP -protokollen. TCP står for Transmission Control Protocol, og er tilkoblingsorientert. UDP står for Universal Datagram Protocol, og er uten tilkobling. TCP brukes ofte for internettprogrammer, mens UDP brukes for mediestreaming eller VPN -er.
Trinn 1: Hvordan begynner vi?
Over er hvordan netcat kalles. Du kan se at det er to argumenter på slutten som kalles "destinasjon" og "port". Destinasjonen refererer til et vertsnavn eller ip -adresse til serveren vi prøver å koble til, mens porten refererer til porten til serveren vi prøver å koble til.
Trinn 2: La oss begynne
Over er en begynnende pythonkode. Som du kan se, ønsker vi å behandle argumentene til programmet på samme måte som det faktiske verktøyet gjør. Vertsnavnet vil være det første argumentet etter kjørbarhetens navn, mens porten vil være det andre argumentet etter kjørbart navn på kommandolinjen.
Trinn 3: Opprette en tilkobling
La oss lage en netcat -funksjon vi kan bruke. Det vi i utgangspunktet gjør her, er å opprette en sokkel og koble til serveren ved hjelp av de angitte parameterne. For netcat -kommandoen er gjeldende parametere vertsnavnet og porten til serveren vi prøver å koble til. Stikkontakten inneholder parameterne "socket. AF_INET" og "socket. SOCK_STREAM" fordi vi som standard bruker en TCP -tilkobling for denne opplæringen.
Trinn 4: La oss sende noe innhold
Vi utvidet vår netcat -funksjon til å ta en tredje parameter, "innhold". Det er mye innhold her, så la oss dele det etter linjenummer.
Linje 14-16: vi sender alt innholdet over kontakten, vi venter litt, og så lukker vi kontakten for alle utgående data slik at kontakten vet at det ikke kommer flere data.
Linje 18-26: vi oppretter en buffer for å lagre serverresponsen, og mens kontakten mottar data, legger vi opp til 1024 byte med data til resultatet så lenge det er data å lese.
Linje 28-29: vi vil at denne nettcat-tilkoblingen skal være en engangstilkobling, så vi erklærer forbindelsen for stengt og lukker deretter forbindelsen.
Linje 31: Dette er en standard HTTP -forespørsel. Hvis du kjører koden med kommandolinjeargumentene "google.com" og "80", vil du se et skikkelig HTTP -svar
Trinn 5: La oss ha en åpen forbindelse
Koden ovenfor (som ligger under koden fra forrige seksjon) lar oss ganske enkelt kjøre flere netcat-kommandoer over en pseudo-åpen forbindelse. (I virkeligheten, hver gang du kjører en kommando, åpnes den og lukker deretter en ny TCP -tilkobling, så det etterligner ikke virkeligheten til netcat, vi gjør dette ganske enkelt for læringsformål). La oss også bryte ned denne linjen for linje:
Linje 31: Vi ønsker å lese kommandoer på ubestemt tid for å opprettholde "interaktivitet"
Linje 32: Dette er vår buffer som lagrer innholdet i forespørselen vår
Linje 36-45: Vi leser inn i bufferen til vi leser en tom linje
Linje 48: vi kaller ganske enkelt vår netcat -funksjon med vertsnavn, port og nyopprettet innhold (som er riktig kodet)
Linje 50: hvis innholdet i bufferen vår noen gang inneholder "Tilkobling: Lukk" (indikerer at vi ønsker å lukke tilkoblingen), bryter vi ganske enkelt ut av løkken
Trinn 6: Konklusjon
På slutten av denne opplæringen bør du ha en minimal fungerende netcat -implementering. Jeg vil overlate det som en øvelse for brukeren å implementere funksjoner som:
1. støtte andre protokoller
2. fikse koden for ikke å stenge tilkoblingen hver gang
3. legge til flagg som netcat allerede må endre oppførselen
Anbefalt:
Synkronisering av mapper med Python: 5 trinn
Synkronisere mapper med Python: Denne instruksjonen viser deg hvordan du holder to mapper (og alle mappene i dem) synkronisert, så den ene er en direkte kopi av den andre. Ideell for sikkerhetskopiering av arbeid både lokalt, til en sky-/nettverksserver eller en USB -stasjon. Ingen erfaring med programmering er
Python Tic Tac Toe -spill: 4 trinn
Python Tic Tac Toe Game: python tic tac toe game dette spillet er laget i python som er et dataspråk jeg har brukt en python editor som heter: pycharm du kan også bruke vanlig python code editor også
Python Introduction - Katsuhiko Matsuda & Edwin Cijo - Grunnleggende: 7 trinn
Python Introduction - Katsuhiko Matsuda & Edwin Cijo - Grunnleggende: Hei, vi er 2 studenter i MYP 2. Vi vil lære deg grunnleggende om hvordan du koder Python. Det ble opprettet på slutten av 1980 -tallet av Guido van Rossum i Nederland. Det ble laget som en etterfølger av ABC -språket. Navnet er " Python " fordi når
Netcat Fun !: 5 trinn
Netcat Fun!: Denne instruksjonsfilen viser deg hvordan du lager en bakdør på en datamaskin med netcat! Jeg vil vise deg to måter å gjøre dette på, med og uten min batchfil som automatiserer den for deg. Denne instruksen forutsetter allerede at du allerede har root -tillatelser
Mer moro med Netcat !!: 4 trinn
Mer moro med Netcat !!: Hvis du ikke har lest Duct tape's guide to Netcat Backdoors, så les det, så kom hit. Denne instruksen går over de grunnleggende netcat -kommandoene og hvordan du bruker dem. Det går også over noen grunnleggende batchkommandoer også