Innholdsfortegnelse:
- Trinn 1: Hvordan begynner vi?
- Trinn 2: La oss begynne
- Trinn 3: Opprette en tilkobling
- Trinn 4: La oss sende noe innhold
- Trinn 5: La oss ha en åpen forbindelse
- Trinn 6: Konklusjon
Video: Netcat i Python: 6 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:24
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:
Arduino bilvarslingssystem for omvendt parkering - Trinn for trinn: 4 trinn
Arduino Car Reverse Parking Alert System | Trinn for trinn: I dette prosjektet skal jeg designe en enkel Arduino Car Reverse Parking Sensor Circuit ved hjelp av Arduino UNO og HC-SR04 Ultrasonic Sensor. Dette Arduino -baserte bilreverseringssystemet kan brukes til autonom navigasjon, robotavstand og andre områder
Trinn for trinn PC -bygging: 9 trinn
Steg for trinn PC -bygging: Rekvisita: Maskinvare: HovedkortCPU & CPU -kjøler PSU (strømforsyningsenhet) Lagring (HDD/SSD) RAMGPU (ikke nødvendig) CaseTools: Skrutrekker ESD -armbånd/mathermal pasta m/applikator
Tre høyttalerkretser -- Trinn-for-trinn opplæring: 3 trinn
Tre høyttalerkretser || Trinn-for-trinn opplæring: Høyttalerkretsen styrker lydsignalene som mottas fra miljøet til MIC og sender den til høyttaleren der forsterket lyd produseres. Her vil jeg vise deg tre forskjellige måter å lage denne høyttalerkretsen på:
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å