Hping 手冊

HPING參數,可以用HPING -H來看
-H    --HELP 顯示幫助
-v    -VERSION 版本信息
-c    --count count 發送數據包的次數 關於countreached_timeout 可以在hping2.h裏編輯
-i     --interval 包發送間隔時間(單位是毫秒) 缺省時間是1秒,此功能在增加傳輸率上很重要,在idle/spoofing掃描時此功能也會被用到,可以參考hping-howto獲得更多信息
-fast    每秒發10個數據包,似乎可用作dos***
-n     -nmeric 數字輸出,象徵性輸出主機地址
-q     -quiet 退出.什麼都不會輸出,除了開始結訴時間
-I     --interface interface name 指定藉口
-v    --verbose 顯示很多信息,TCP迴應一般如下:
len=46 ip=192.168.1.1 flags=RADF seq=0 ttl=255 id=0 win=0 rtt=0.4ms tos=0 iplen=40 seq=0 ack=1380893504 sum=2010 urp=0
-D    --debug 進入debug模式 遇到麻煩時,比如用HPING遇到一些不合習慣的時候,你可以用此模式修改HPING,(INTERFACE DETECTION,DATA LINK LAYER ACCESS,INTERFACE SETTINGS,.......)
-z     --BIND 快捷鍵的使用
-Z    --unbind 消除快捷鍵
 
以下是協議選擇項
-O    --rawip RAWIP模式,在此模式下,HPING會發送帶數據的IP頭,....原文如下:RAW IP mode, in this mode hping2 will send IP header with data appended with --signature and/or --file, see also --ipproto that allows you to set the ip protocol field.
-1    --icmp ICMP模式,此模式下,HPING會發送IGMP應答報文,可以用--ICMPTYPE --ICMPCODE選項發送其他類型/模式的ICMP報文
-2    --udp UDP 模式,缺省下,HPING會發送UDP報文到主機的0端口,可以用--baseport --destport --keep選項指定其模式
-9    --listen signatuer hping的listen模式,用此模式,HPING會接收指定的數據,比如:命令如下:hping --listen TEST 接收數據如下時:234-5488-TESThello_word,會顯示
hello_word
 
以下是有關IP的選項
-a    --spoof hostname 僞造IP***,防火牆就不會記錄真實IP,迴應的包也接收不到了,比如,你是192.168.3.1 僞裝成192.168.3.2發包給192.168.3.3, 192.168.3.3的防火牆會記錄192.168.3.2發包記錄,但是192.168.3.3的迴應也會發回192.168.3.2,而你卻接收不到192.168.3.3的回答包的,具體可以參見HPING2-HOWTO
-t    --ttl time to live 本選項可以指定發出包的TTL值,這選項一般和--traceroute 或--bind一起用,比如:hping 1.1.1.1 -t 1 --traceroute,(這選項數值大了,和PING沒區別,數值小了,包似乎到不了主機,只停留在到達路由主機上)
-H    --ipproto 在RAW IP模式裏選擇IP協議
-W    --WINID UNIX ,WINDIWS的id迴應不同的 ,這選項可以讓ID迴應和WINDOWS一樣
-r    --rel 更改ID的,可以讓ID曾遞減輸出,詳見HPING-HOWTO
-F    --FRAG 更改包的FRAG ,這可以測試對方對於包碎片的處理能力,缺省的'virtual mtu'是16字節,
-x    --morefrag 此功能可以發送碎片使主機忙於恢復碎片而造成主機的拒絕服務
-y    -dontfrag 發送不可恢復的IP碎片,這可以瞭解更多的MTU PATH DISCOVERY
-G    --fragoff fragment offset value set the fragment offset
-m    --mtu mtu value 用此項後 ID數值變得很大 50000沒指定此項時3000-20000左右
-o    --tos hex tos TOS=TYPE OF SERVICE
-G    --rroute 記錄路由,可以看到詳悉的數據等等,最多可以經過9個路由,即使主機屏蔽了ICMP報文,路由只涉及IP,所以任可以記錄,在TCP UDP下,也可以記錄路由的
 
ICMP選項
-C    --ICMPTYPE TYPE 指定ICMP類型,缺省是ICMP ECHO REQUEST
-K    --ICMPCODE CODE 指定ICMP代號,缺省0
--icmp-ipver 把IP版本也插入IP頭,
--icmp-iphlen 設置IP頭的長度,缺省爲5 (32字節)
--icmp-iplen 設置IP包長度
--icmp-ipid 設置ICMP報文IP頭的ID,缺省是RANDOM
--icmp-ipproto 設置協議的,缺省是TCP
-icmp-cksum 設置校驗和的,沒什麼的
-icmp-ts Alias for --icmptype 13 (to send ICMP timestamp requests)
--icmp-addr Alias for --icmptype 17 (to send ICMP address mask requests)
 
TCP/UDP 選項
-s    --baseport source port hping用源端口猜測迴應的包,它從一個基本端口計數,每收一個包,端口也加1,這規則可以自己定義,如用-K --KEEP可以使端口不會增加,每次的基本端口是隨意的
-p    --deskport [+][+]desk port 設置目標端口,缺省爲0,一個加號設置爲:每發送一個請求包到達後,端口加1,兩個加號爲:每發一個包,端口數加1,
--keep
-w    --win 發的大小和windows一樣大,64BYTE
-O    --tcpoff Set fake tcp data offset. Normal data offset is tcphdrlen / 4.
-m    --tcpseq 設置TCP序列數,
-l      --tcpck 設置TCP ack的
-Q    --seqnum 蒐集序列號的,這對於分析TCP序列號有很大作用,例如:

#hping2 win98 --seqnum -p 139 -S -i u1 -I eth0
HPING uaz (eth0 192.168.4.41): S set, 40 headers + 0 data bytes
2361294848 +2361294848
2411626496 +50331648
2545844224 +134217728
2713616384 +167772160
2881388544 +167772160
3049160704 +167772160
3216932864 +167772160
3384705024 +167772160
3552477184 +167772160
3720249344 +167772160
3888021504 +167772160
4055793664 +167772160
4223565824 +167772160
第一排是序列號,第2排是應答的序列號,可以預見主機的序列號(三次握手後,數值基本不再變,定在167772160了)
-b    --badcksum 發出一個錯誤校驗和的UDP/TCP包
-tcp-timestamp
-b    --badcksum 發出一個錯誤校驗和的UDP/TCP包
-tcp-timestamp
-F    -fin set FIN tcp flag
-S    --syn set SYN tcp flag.
-R    --rst set RST tcp flag.
-P    --push set PUSH tcp flag.
-A   --ack set ACK tcp flag.
-U   --urg set URG tcp flag.
-X   --xmas set Xmas tcp flag.
-Y   --ymas set Ymas tcp flag.
 
其他:
-d   --data data size 設置包大小,指定DATA爲40時,輸出如下:
HPING www.site.com (ppp0 204.71.200.67): NO FLAGS are set, 40 headers + 40 data bytes
-E   --file filename 指定包內容如FILENAME裏的一樣
-e   --sign signature 指定包頭的內容
-j    --dump Dump received packets in hex.
-J   --print Dump received packets's printable characters. -B --safe
-B  --safe 確保數據完整發出 例如:要發送A的/etc/passwd給B
[host_a]# hping2 host_b --udp -p 53 -d 100 --sign signature --safe --file /etc/passwd
[host_b]# hping2 host_a --listen signature --safe --icmp
-U    --END 如果用了--FILE項,當EOF到達後,此項可以幫助自動停止接收無用的數據,
-T    --traceroute 路由模式
--tr-keep-ttl 一個和路由有關的項,舉例: hping2 host --traceroute --ttl 5 --tr-keep-ttl.
--tr-stop 當ICMP一旦不可到達時,自動停止發送
--tr-no-rrt 在路由模式裏不顯示RTT信息,
--tcpexitcode 在某些規則下可探知主機是否存活
-F -fin set FIN tcp flag
-S --syn set SYN tcp flag.
-R --rst set RST tcp flag.
-P --push set PUSH tcp flag.
-A --ack set ACK tcp flag.
-U --urg set URG tcp flag.
-X --xmas set Xmas tcp flag.
-Y --ymas set Ymas tcp flag.
 
其他:
-d --data data size 設置包大小,注意:指定DATA爲40時,輸出如下:
HPING www.yahoo.com (ppp0 204.71.200.67): NO FLAGS are set, 40 headers + 40 data bytes
-E --file filename 指定包內容如FILENAME裏的一樣
-e --sign signature 指定包頭的內容
-j --dump Dump received packets in hex.
-J --print Dump received packets's printable characters. -B --safe
-B --safe 確保數據完整發出 例如:要發送A的/etc/passwd給B
[host_a]# hping2 host_b --udp -p 53 -d 100 --sign signature --safe --file /etc/passwd

另外:
標準TCP輸出格式: len=46 ip=192.168.1.1 flags=RA DF seq=0 ttl=255 id=0 win=0 rtt=0.4 ms
用HPING -V測試時,結果如下: len=46 ip=192.168.1.1 flags=RA DF seq=0 ttl=255 id=0 win=0 rtt=0.4 ms tos=0 iplen=40 seq=0 ack=1223672061 sum=e61d urp=0
標準UDP輸出 len=46 ip=192.168.1.1 seq=0 ttl=64 id=0 rtt=6.0 ms
ICMP輸出格式: 主機可達時: ICMP Port Unreachable from ip=192.168.1.1 name=nano.marmoc.net
主機不可到達時:TTL 0 during transit from ip=192.168.1.1 name=nano.marmoc.net
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章