Innehållsförteckning:
- Steg 1: Hur börjar vi?
- Steg 2: Låt oss börja
- Steg 3: Skapa en anslutning
- Steg 4: Låt oss skicka lite innehåll
- Steg 5: Låt oss ha en öppen anslutning
- Steg 6: Slutsats
Video: Netcat i Python: 6 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Vad är netcat? Den manuella sidan för netcat säger följande: "verktyget nc (eller netcat) används för nästan allt under solen som involverar TCP-, UDP- eller UNIX-domänuttag. Det kan öppna TCP-anslutningar, skicka UDP-paket, lyssna på godtyckligt TCP- och UDP -portar, gör portskanning och hanterar både IPv4 och IPv6. Till skillnad från telnet (1), nc -skript snyggt och separerar felmeddelanden till standardfel istället för att skicka dem till standardutgång, som telnet (1) gör med vissa"
I huvudsak låter netcat dig ansluta till andra servrar med TCP- eller UDP -protokollet. TCP står för Transmission Control Protocol och är anslutningsorienterat. UDP står för Universal Datagram Protocol och är anslutningsfritt. TCP används vanligtvis för internetapplikationer, medan UDP används för mediestreaming eller VPN.
Steg 1: Hur börjar vi?
Ovan är hur netcat kallas. Du kan se att det finns två argument i slutet som kallas "destination" och "port". Destinationen avser ett värdnamn eller ip -adress för servern vi försöker ansluta till, medan porten hänvisar till porten på servern vi försöker ansluta till.
Steg 2: Låt oss börja
Ovan är en början pythonkod. Som du kan se vill vi bearbeta argumenten till programmet på samma sätt som det faktiska verktyget gör. Värdnamnet är det första argumentet efter den körbara namnet, medan porten är det andra argumentet efter den körbara namnet på kommandoraden.
Steg 3: Skapa en anslutning
Låt oss skapa en netcat -funktion som vi kan använda. Vad vi i princip gör här är att skapa ett uttag och ansluta till servern med de angivna parametrarna. För kommandot netcat är de aktuella parametrarna värdnamn och port på servern som vi försöker ansluta till. Socket innehåller parametrarna "socket. AF_INET" och "socket. SOCK_STREAM" eftersom vi som standard använder en TCP -anslutning för den här självstudien.
Steg 4: Låt oss skicka lite innehåll
Vi utökade vår netcat -funktion till att ta en tredje parameter, "innehåll". Det finns mycket innehåll här så låt oss bryta ner det efter radnummer.
Rad 14-16: vi skickar allt innehåll över uttaget, vi väntar lite och stänger sedan uttaget för utgående data så att uttaget vet att det inte kommer mer data.
Rad 18-26: vi skapar en buffert för att lagra serversvaret, och medan sockeln tar emot data lägger vi upp till 1024 byte med data till resultatet så länge det finns data att läsa.
Rad 28-29: vi vill att denna netcat-anslutning ska vara en engångsanslutning, så vi förklarar anslutningen avslutad och stänger sedan anslutningen.
Rad 31: Detta är en standard HTTP -begäran. Om du kör koden med kommandoradsargumenten "google.com" och "80" ser du ett korrekt HTTP -svar
Steg 5: Låt oss ha en öppen anslutning
Ovanstående kod (som ligger under koden från föregående avsnitt) låter oss helt enkelt köra flera nätcat-kommandon över en pseudo-öppen anslutning. (I verkligheten, varje gång du kör ett kommando, öppnas det och stängs sedan en ny TCP -anslutning, så det efterliknar inte riktigt netcats beteende, vi gör det helt enkelt för inlärningsändamål). Låt oss bryta ner denna rad för rad också:
Rad 31: Vi vill läsa kommandon på obestämd tid för att behålla "interaktivitet"
Rad 32: Detta är vår buffert som lagrar innehållet i vår begäran
Rad 36-45: Vi kommer att läsa in i bufferten tills vi läser en tom rad
Rad 48: vi kallar helt enkelt vår netcat -funktion med värdnamn, port och nyskapat innehåll (som är korrekt kodat)
Rad 50: om innehållet i vår buffert någonsin innehåller "Anslutning: Stäng" (indikerar att vi vill stänga anslutningen), bryter vi helt enkelt ur slingan
Steg 6: Slutsats
I slutet av denna handledning bör du ha en minimal fungerande netcat -implementering. Jag lämnar det som en övning för användaren att implementera funktioner som:
1. stödja andra protokoll
2. fixa koden för att inte stänga anslutningen varje gång
3. lägga till flaggor som netcat redan måste ändra beteendet
Rekommenderad:
Arduino Car Reverse Parking Alert System - Steg för steg: 4 steg
Arduino Car Reverse Parking Alert System | Steg för steg: I det här projektet kommer jag att utforma en enkel Arduino Car Reverse Parking Sensor Circuit med Arduino UNO och HC-SR04 Ultrasonic Sensor. Detta Arduino -baserade bilomvändningsvarningssystem kan användas för autonom navigering, robotavstånd och andra
Steg för steg PC -byggnad: 9 steg
Steg för steg PC -byggnad: Tillbehör: Hårdvara: ModerkortCPU & CPU -kylarePSU (strömförsörjningsenhet) Lagring (HDD/SSD) RAMGPU (krävs inte) CaseTools: Skruvmejsel ESD -armband/mathermisk pasta med applikator
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): 8 steg
Akustisk levitation med Arduino Uno Steg-för-steg (8-steg): ultraljudsgivare L298N Dc kvinnlig adapter strömförsörjning med en manlig DC-pin Arduino UNOBreadboardHur det fungerar: Först laddar du upp kod till Arduino Uno (det är en mikrokontroller utrustad med digital och analoga portar för att konvertera kod (C ++)
Netcat Fun !: 5 steg
Netcat Fun !: Denna instruerbara visar dig hur du skapar en bakdörr på en dator med netcat! Jag kommer att visa dig två sätt att göra detta, med och utan min batchfil som automatiserar den åt dig. Denna instruerbara förutsätter redan att du redan har rottillstånd
Mer kul med Netcat !!: 4 steg
Mer kul med Netcat !!: Om du inte har läst Duct -tejpens guide till Netcat Backdoors, läs det sedan, kom hit. Denna instruktionsbok går igenom de grundläggande netcat -kommandona och hur man använder dem. Det går också över några grundläggande batchkommandon också