Skapa TCP / IP-paket och utför DoS-attacker på Linux –

huvuddrag

Hping3 är en terminalapplikation för Linux som gör att vi enkelt kan analysera och samla in TCP/IP-paket. Till skillnad från en vanlig ekoförfrågan, som används för att skicka ICMP-paket, låter denna applikation dig skicka TCP-, UDP- och RAW-IP-paket. Tillsammans med paketsniffning kan denna applikation också användas för andra säkerhetsändamål, som att kontrollera effektiviteten av en brandvägg med hjälp av olika protokoll, upptäcka misstänkta eller ändrade paket och till och med skydda mot attacker. DoS-attack på ett system eller en brandvägg.

Det här verktyget har använts tidigare för att ta itu med cybersäkerhetsproblem, men vi kan också använda det för att testa nätverk och värdar. Här är några av de viktigaste applikationerna vi kan göra med det här verktyget:

  • Kontrollera säkerheten och driften av brandväggar.
  • Använd den som en avancerad portskanning, även om det är bättre att använda Nmap för den här uppgiften.
  • Nätverkstester med olika protokoll, ToS, fragmentering, etc.
  • Ta reda på MTU på rutten manuellt.
  • Avancerad spårning med alla protokoll som stöds
  • Fjärravtryck från operativsystemet
  • Kontrollera tiden långt borta
  • TCP / IP stack granskning

På grund av det stora antalet möjligheter med detta verktyg kommer vi i den här artikeln att visa dig de viktigaste sätten att använda och hur du använder det.

Installera Hping3

Hping3 är tillgängligt i de officiella arkiven för Ubuntu, Debian och andra Linux-distributioner, så för att installera det behöver vi bara öppna en terminal (eller en pakethanterare som Synaptic) och ange:

sudo apt installera hping3

Verktyget kommer att ta upp cirka 3 600 KB, varefter vi kan börja använda det.

Lista över hping3-kommandon

Funktionerna som detta program stöder är enorma. Från att utföra en enkel ping till att skicka paket på en specifik port, till och med dölja den ursprungliga IP-adressen. Om vi ​​vill veta i detalj alla alternativ som detta program erbjuder oss kan vi hänvisa till hjälpen som ingår i verktyget genom att helt enkelt skriva i terminalen:

hping3 –hjälp

Grundläggande användning av verktyget:

  • v –version visar den aktuella versionen av hping3
  • -c – paketräknare
  • -i – intervall timeout (uX för X mikrosekunder, till exempel -i u1000)
    • – Snabba alias för -i u10000 (10 paket per sekund)
    • –Snabbare alias för -i u1000 (100 paket per sekund)
    • –Flood skickar paket så snabbt som möjligt, visar inga svar.
  • -n – numerisk utdata med siffror
  • -q – tyst tyst kommando utan att visas på skärmen
  • -I – gränssnittsnamnet på gränssnittet, om inget anges, är detta som standard gränssnittet för standardgatewayen.
  • -V – verbose läge för felsökning
  • -D – felsökningsinformation om felsökning
  • -z –bind bind ctrl + za ttl (standard destinationsport)
  • -Z –unbind inaktiverar ctrl + z
  • – Ljud för varje mottaget paket som matchar

Driftlägen:

  • Standardläget är TCP
  • -0 –rawip RAW IP-läge
  • -1 –icmp ICMP-läge
  • -2 –udp UDP-läge
  • -8 – skanningsläge Skanningsläge.
  • -9 – redo lyssningsläge

Exempel: hping –scan 1-30,70-90 -S www.target.com

IP:

  • -a –spoof spoof original IP-adress
    • –Rand-dest är en slumpmässig destinations-IP-adress.
    • – Slumpmässig källa IP-adress.
  • -t –ttl ttl (standard 64)
  • -N –id id (slumpmässigt som standard)
  • -W –winid använd win * id byte-ordning
  • -r –rel tilldelar id-fältet (för att uppskatta värdtrafik)
  • -f -frag fragmenterar paket i mer än ett fragment, kan passera svaga ACL:er
  • -x –morefrag fragmenterar fler detaljer
  • -y –dontfrag fragmenterar inte paket.
  • -g –fragoff ställer in fragmentoffset
  • -m –mtu ställer in den virtuella MTU:n, vilket betyder att paketfragmentet är större än MTU:n.
  • -o –tos tjänsttyp (standard 0x00), försök –tos hjälp
  • -G –rroute aktiverar alternativet RECORD_ROUTE och visar sökvägsbufferten
    • –Lsrr lös källdirigering och ruttlogg
    • –Ssrr strikt källdirigering och ruttlogg
  • -H –ipproto installerar IP-protokollet, endast för RAW IP-läge.

ICMP:

  • -C –icmptype ICMP-typ (standard – ICMP Echo request)
  • -K –icmpcode ICMP-kod (standard 0)
    • –Force-icmp skickar alla ICMP-typer (som standard skickar endast de typer som stöds)
    • –Icmp-gw ställer in standardgatewayadressen för ICMP-omdirigering (standard 0.0.0.0)
    • –Icmp-ts alias för –icmp –icmptype 13 (ICMP tidsstämpel)
    • –Icmp-addr alias för –icmp –icmptype 17 (ICMP subnät mask adress)
    • –Icmp-help Visar hjälp för andra icmp-alternativ.

ICMP-koder

Det är mycket användbart att känna till några ICMP-koder som hping3 kan visa oss, nedan har du alla de mest använda:

TCP / UDP

  • -s –baseport baskällport, standard är slumpmässig
  • -p –destport [+] [+] destinationsposition (standard 0) ctrl + z add / sub
  • -k – behåll den ursprungliga porten
  • -w – Win-fönsterstorlek, standard 64
  • -O –tcpoff falsk tcp-dataförskjutning (istället för tcphdrlen / 4)
  • -Q –seqnum visar endast sekvensnumret
  • -b –badcksum (försök att) skicka paket med en falsk IP-kontrollsumma, många system kommer att korrigera denna kontrollsumma när de skickar paketet, så du kommer att ha en felaktig kontrollsumma i UDP/TCP-lagret.
  • -M –setseq ställer in TCP-sekvensnumret
  • -L –setack sätter TCP-handskakning
  • -F –fin sätter FIN-flaggan
  • -S –syn sätter SYN-flaggan
  • -R –rst sätter RST-flaggan
  • -P –push ställer in PUSH-flaggan
  • -A –ack sätter ACK-flaggan
  • -U –urg sätter URG-flaggan
  • -X –xmas sätter oanvänd X-flagga (0x40)
  • -Y –ymas ställer in Y-flaggan till oanvänd (0x80)
    • –Tcpexitcode använder den senaste tcp-> th_flags som utgångskod.
    • –Tcp-mss aktiverar TCP MSS-alternativ med specificerat värde
    • –Tcp-timestamp aktiverar TCP-tidsstämpelparametern för att bestämma drifttid.

Gemensamma alternativ för alla

  • d – datastorlek, standard 0.
  • -E – fildata från fil.
  • -e –sign lägger till signatur
  • -j – dump paketdump i hexadecimalt format
  • -J –print skriver ut utskrivbara tecken
  • -B –safe möjliggör “säkert” protokoll
  • -u –end talar om när filen har nått slutet
  • -T –traceroute traceroute-läge (implicerar –bind och –ttl 1)
    • –Tr-stop Avsluta när det första icke-ICMP-paketet tas emot i traceroute-läge
    • –Tr-keep-ttl Håll käll-TTL fast, användbart för att övervaka endast ett hopp
    • –Tr-no-rtt Beräknar eller visar inte RTT-information i traceroute-läge.
  • ARS-paketbeskrivning (ny och instabil)
    • –Apd-send Skicka paket som beskrivs med APD

Exempel på användning av Hping3

Enkelt pingtest

Vi kan använda det här verktyget som ett vanligt ping-kommando, och vi får ungefär samma resultat. För att göra detta behöver vi bara skriva:

hping3 www.google.es

Och vi ska se hur detta enkla anslutningstest utförs. (Vi kan ändra Googles domän till någon annan, eller använda IP-adressen direkt för att pinga).

Anslutningsväg till webbplatsen

I likhet med alternativet “tracert” i Windows eller “traceroute” i Linux, med detta verktyg kan vi också spåra alla övergångar mellan ett pakets nätverk, från det ögonblick det lämnar vår dator tills det når sin destination, med förmågan att ta reda på när som helst om det finns några anslutningsproblem.

För att göra detta behöver vi bara skriva:

hping3 redeszone.net -t 1 –traceroute

Portskanning med TCP SYN-flagga

Detta verktyg låter oss också skicka paket över TCP i sin renaste form. Nmap stil. För att skanna med denna metod går vi in ​​i terminalen “hping3 -S [IP-адрес назначения] –P [Порт]”, Och resultatet blir ungefär så här:

hping3 -S www.google.es –sid 80

Resultatet av detta test kommer att återkomma SA flagga, vilket betyder att den matchar SYN / ACK , det vill säga meddelandet tas emot eller, vilket är detsamma, porten är öppen … Annars, om värdet är RA är motsvarar RST / ACK eller vad är detsamma, att meddelandet inte kördes korrekt pga hamnen är stängd eller filtreras.

På så sätt kan vi till exempel ta reda på om en anslutning är tillåten på en specifik port eller om en brandvägg filtrerar den.

Signera paket med en anpassad textfil

Det här verktyget kan användas för att ändra paketen vi skickar och infoga ett personligt meddelande som ser ut som en signatur i dem. För att göra detta behöver vi bara skriva:

hping3 redeszone.net -d 50 -E firmaredeszone.txt

Detta kommando kommer att injicera innehållet i den angivna textfilen i Ping-paketen. Om vi ​​analyserar dessa paket med lämplig programvara som WireShark kan vi se att innehållet i filen i fråga finns inuti dem.

De angivna parametrarna betyder:

  • -d: Längden på meddelandet vi ska skriva in, i det här fallet 50.
  • -E: filen från vilken vi ska hämta meddelandesignaturen som vi vill presentera för paketen.

Vi kan också använda andra alternativ, som -p för att specificera porten vi vill skicka dessa paket till, eller -2 för att skicka paket över UDP.

Generera flera frågor för att testa DoS- och DDoS-skydd

Detta verktyg kommer också att tillåta oss att testa stabiliteten hos vårt system mot nätverksattacker som DoS och DDoS genom att generera riktiga tester mot antingen localhost eller en annan server på (eller utanför) nätverket.

Vi kan göra en serie unika ekoförfrågningar genom att ändra den ursprungliga IP-adressen för samma i TCP/IP-paketen genom att helt enkelt skriva:

hping3 –rand-source 192.168.1.1

På samma sätt kan vi lägga till parametern –flood för att skicka paket i realtid i stora partier. På så sätt kommer vi för det första att kunna kontrollera om vår brandvägg fungerar och för det andra hur väl vårt system reagerar på hotet om en DDoS-attack.

För att göra detta skriver vi:

hping3 –rand-source –flood 192.168.1.1

Vi genererade över 25 000 paket på bara ett par sekunder, så vi måste vara försiktiga eftersom vårt nätverk kan vara blockerat och oanvändbart.

Detta kommer att börja generera ett stort antal falskt ursprungspaket (tack vare randkällparametern), som kommer att skickas kontinuerligt till destinationsservern (i det här fallet 192.168.1.1). På så sätt kan vi testa vårt systems motståndskraft mot DDoS-attacker, för om systemet slutar fungera eller kraschar kan ett konfigurationsfel inträffa och vi måste vidta lämpliga åtgärder för att förhindra att detta händer i en verklig miljö.

Det här verktyget är mycket användbart, även om det alltid bör användas i slutna och kontrollerade miljöer, eftersom vi när vi går ut kan sluta med att vi utför en överbelastningsattack på laget, vilket vi inte borde, det är olagligt och kan så småningom bli föremål för till sanktioner för detta.

Vi rekommenderar dig gå till den officiella sidan för hping person för att ta reda på alla möjliga alternativ.

Relaterade artiklar

Back to top button