0%

《Kali攻防》 — 6、hping3(定制发送TCPIP协议数据包)

>> 基本使用

hping3是用于生成和解析TCPIP协议数据包的开源工具。是安全审计、防火墙测试等工作的标配工具。它的优势在于能够定制数据包的各个部分,因此用户可以灵活对目标机进行细致地探测。相比前面的fping,功能更加强大。

下面是命令的帮助

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
usage: hping3 host [options]
-h --help 显示帮助
-v --version 显示版本号
-c --count 发送包的次数
-i --interval 包发送间隔时间(单位是ms)缺省时间是1s
--fast 等效于-i u10000
--faster 等效于-i u1000
--flood 尽可能快的发送包,不显示回复结果。可用于洪水攻击
-n --numeric 数字化输出
-q --quiet 安静模式
-I --interface 使用哪个网卡
-V --verbose 显示更多信息
-D --debug debugging info
-z --bind bind ctrl+z to ttl (default to dst port)
-Z --unbind unbind ctrl+z
--beep beep for every matching packet received
Mode
default mode 默认TCP模式
-0 --rawip RAW IP 模式。发送IP协议中负载为空的包。
-1 --icmp ICMP 模式。发送ICMP包,就是普通的ping了。
-2 --udp UDP 模式。发送UDP包。
-8 --scan SCAN 模式。扫描端口。
Example: hping --scan 1-30,70-90 -S www.target.host
-9 --listen 监听模式
IP
-a --spoof 伪造源IP,可以隐藏真实IP,回应的包也接收不到了。
--rand-dest 随机目标IP模式
--rand-source 随机源IP模式
-t --ttl 指定IP协议中的TTL生命周期 (default 64)
-N --id id (default random)
-W --winid UNIX ,WINDIWS的id回应不同的,这选项可以让你的ID回应和WINDOWS一样
-r --rel relativize id field (to estimate host traffic)
-f --frag 启用分片,这可以测试对方对于包碎片的处理能力
-x --morefrag 设置为更多分片标志。可以发送碎片使主机忙于恢复碎片而造成主机的拒绝服务
-y --dontfrag 设置IP协议中的DF标志
-g --fragoff 设置分片偏移
-m --mtu 设置虚拟MTU值
-o --tos 设置IP协议中的服务类型
-G --rroute 记录路由,可以看到详细的数据等等,最多可以经过9个路由,即使主机屏蔽了ICMP报文。buffer
--lsrr loose source routing and record route
--ssrr strict source routing and record route
-H --ipproto set the IP protocol field, only in RAW IP mode
ICMP
-C --icmptype 设置icmp type,默认是echo请求
-K --icmpcode 设置icmp code (default 0)
--force-icmp 发送所有ICMP类型的包
--icmp-gw set gateway address for ICMP redirect (default 0.0.0.0)
--icmp-ts Alias for --icmp --icmptype 13 (ICMP timestamp)
--icmp-addr Alias for --icmp --icmptype 17 (ICMP address subnet mask)
--icmp-help display help for others icmp options
UDP/TCP
-s --baseport 设置源端口,默认是随机
-p --destport 设置目标端口。默认是0
-k --keep keep still source port
-w --win 设置数据窗口大小 (default 64)
-O --tcpoff set fake tcp data offset (instead of tcphdrlen / 4)
-Q --seqnum 只显示TCP序列号
-b --badcksum (try to) send packets with a bad IP checksum
many systems will fix the IP checksum sending the packet
so you'll get bad UDP/TCP checksum instead.
-M --setseq 设置TCP序列号
-L --setack 设置TCP ACK标志
-F --fin 设置TCP FIN标志
-S --syn 设置TCP协议中的 SYN 标志
-R --rst 设置TCP RST标志
-P --push 设置TCP PUSH标志
-A --ack 设置TCP ACK标志
-U --urg 设置TCP URG标志
-X --xmas 设置 X unused flag (0x40)
-Y --ymas 设置 Y unused flag (0x80)
--tcpexitcode use last tcp->th_flags as exit code
--tcp-mss enable the TCP MSS option with the given value
--tcp-timestamp enable the TCP timestamp option to guess the HZ/uptime
Common
-d --data data size (default is 0)
-E --file data from file
-e --sign add 'signature'
-j --dump dump packets in hex
-J --print dump printable characters
-B --safe enable 'safe' protocol
-u --end tell you when --file reached EOF and prevent rewind
-T --traceroute traceroute mode (implies --bind and --ttl 1)
--tr-stop Exit when receive the first not ICMP in traceroute mode
--tr-keep-ttl Keep the source TTL fixed, useful to monitor just one hop
--tr-no-rtt Don't calculate/show RTT information in traceroute mode
ARS packet description (new, unstable)
--apd-send Send the packet described with APD (see docs/APD.txt)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[email protected]:~$ sudo hping3 -8 1-30,70-90 pefish.club -S > scan_result.txt  // 扫描 pefish.club 端口,结果存入 scan_result.txt
Scanning pefish.club (104.18.33.51), port 0-65535
65536 ports to scan, use -V to see all the replies
+----+-----------+---------+---+-----+-----+-----+
|port| serv name | flags |ttl| id | win | len |
+----+-----------+---------+---+-----+-----+-----+
All replies received. Done.


[email protected]:~$ sudo hping3 192.168.0.105 -1 // ping
HPING 192.168.0.105 (eth0 192.168.0.105): icmp mode set, 28 headers + 0 data bytes
len=46 ip=192.168.0.105 ttl=64 id=3777 icmp_seq=0 rtt=3.3 ms
len=46 ip=192.168.0.105 ttl=64 id=3778 icmp_seq=1 rtt=3.3 ms
len=46 ip=192.168.0.105 ttl=64 id=3779 icmp_seq=2 rtt=3.1 ms
len=46 ip=192.168.0.105 ttl=64 id=3780 icmp_seq=3 rtt=3.0 ms
len=46 ip=192.168.0.105 ttl=64 id=3781 icmp_seq=4 rtt=2.9 ms


[email protected]:~$ sudo hping3 -a 192.168.10.99 -S pefish.club -p 80 -i u1000 // SYN连接攻击
HPING pefish.club (eth0 35.236.165.216): S set, 40 headers + 0 data bytes

>> 涉及到的理论知识

TCP协议

UDP协议

>> 下篇预告

masscan 一个快速端口扫描器




微信关注我,及时接收最新技术文章