第一部分,hping3的安装
0x01 首先是libpcap的安装
如果安装bison依赖包
运行如下命令
apt-get install bison
需要安装flex-2.6.0安装包,版本其他应该可以
下载地址 http://flex.sourceforge.net/
执行命令如下
tar -xvf flex-2.6.0.tar.bz2
进入flex-2.6.0目录下,执行命令
./configure
make
sudo make install
在安装libpcap-1.7.4安装包,其他版本应该也可以,具体没有测试
下载地址 http://www.tcpdump.org/
tar -zxvf libpcap-1.7.4.tar.gz
进入libpcap-1.7.4目录下,执行命令
./configure
make
sudo make install
Ps:编译的过程中出现,会出现缺少bluetooth.h和mgmt.h文件
安装bluetooth包sudo apt-get install bluetooth,仍然提示错误则
find / -name bluetooth.h找到拷贝过去就行了,如果没有就到网上下载这两个文件放到/usr/include/bluetooth即可
0x02 安装成功之后
去github上下载hping
链接如下
https://github.com/antirez/hping
unzip hping-master.zip
安装的过程中会出现error: net/bpf.h: No such file or directory
作个如下链接
ln -s /usr/local/include/pcap.h /usr/include/net/bpf.h
有时pcap.h可能不在这个文件夹,可以用find查找后更改下路径即可。
又会出现/usr/bin/ld: cannot find -ltcl错误
需要安装tcl包
sudo apt-get install tcl
然后就是make strip
执行make install
然后hping3 -h 出现提示信息安装成功。
第一部分,hping3的使用
具体参数和使用如下
TCP/IP数据包组装/分析工具
支持多种协议(ICMP、TCP、UPD、RAW-IP等)
运行多种操作系统上(Linux,FreeBSD,NetBSD,OpenBSD,Solaris,MacOs X,Windows)
可用于防火墙测试、端口扫描、操作系统探测、网络检查等
Usage:
-h --help 显示帮助信息
-v --version 显示Hping的版本信息
-c --count 指定数据包的次数
-i --interval 指定发包间隔为多少毫秒,如-i m10:表示发包间隔为10毫秒
--fast 与 -i m100等同,即每秒钟发送10个数据包
-n --numeric 指定以数字形式输出
-q --quiet 退出Hping
-I --interface 指定IP,如本机有两块网卡,可通过此参数指定发送数据包的IP地址。如果不指定则默认使用网关IP
-V --verbose 冗余模式
-D --debug 调试信息
-z --bind 将ctrl+z 绑定到ttl,默认使用DST端口
-Z --unbind 解除ctrl+z的绑定 指定所用的模式: 默认模式 TCP模式
-0 --rawip RAW IP 模式
-1 --icmp ICMP 模式
-2 --udp UDP 模式
-8 --scan 扫描模式. 例: hping --scan 1-30,70-90 -S www.target.host
-9 --listen 监听模式
IP选项: -a --spoof 伪造源地址欺骗
--rand-dest 随机目的地址模式
--rand-source 随机源目的地址模式
-t --ttl ttl值,默认为64
-N --id 指定id,默认是随机的
-W --winid 使用win*的id 字节顺序
-r --rel 相对的id区域
-f --frag 将数据包分片后传输(可以通过薄弱的acl(访问控制列表))
-x --morefrag 设置更多的分片标记
-y --dontfrag 设置不加分片标记
-g --fragoff 设置分片偏移
-m --mtu 设置虚拟MTU, 当数据包>MTU时要使用--frag 进行分片
-o --tos 指定服务类型,默认是0x00,,可以使用
--tos help查看帮助
-G --rroute 包含RECORD_ROUTE选项并且显示路由缓存
--lsrr 释放源路记录
--ssrr 严格的源路由记录
-H --ipproto 设置协议范围,仅在RAW IP模式下使用 ICMP选项
-C --icmptype 指定icmp类型(默认类型为回显请求)
-K --icmpcode 指定icmp编码(默认为0)
--force-icmp 发送所有ICMP数据包类型(默认只发送可以支持的类型)
--icmp-gw 针对ICMP数据包重定向设定网关地址(默认是0.0.0.0)
--icmp-ts 相当于--icmp --icmptype 13(ICMP时间戳)
--icmp-addr 相当于--icmp --icmptype 17(ICMP地址掩码)
--icmp-help 显示ICMP的其它帮助选项
UDP/TCP选项
-s --baseport 基本源端口(默认是随机的)
-p --destport 目的端口(默认为0),可同时指定多个端口
-k --keep 仍然保持源端口
-w --win 指定数据包大小,默认为64 -O
--tcpoff 设置假的TCP数据偏移
-Q --seqnum 仅显示TCP序列号
-b --badcksum 尝试发送不正确IP校验和的数据包 许多系统在发送数据包时使用固定的IP校验和,因此你会得到不正确的UDP/TCP校验和.
-M --setseq 设置TCP序列号
-L --setack 使用TCP的ACK(访问控制列表)
-F --fin 使用FIN标记set FIN flag
-S --syn 使用SNY标记
-R --rst 使用RST标记
-P --push 使用PUSH标记
-A --ack 使用 ACK 标记
-U --urg 使用URG标记
-X --xmas 使用 X 未用标记 (0x40)
-Y --ymas 使用 Y 未用标记 (0x80)
--tcpexitcode 最后使用 tcp->th_flags 作为退出代码
--tcp-timestamp 启动TCP时间戳选项来猜测运行时间 常规选项
-d --data 数据大小,默认为0 -E
--file 从指定文件中读取数据
-e --sign 增加签名
-j --dump 以十六进行形式转存数据包
-J --print 转存可输出的字符
-B --safe 启用安全协议
-u --end 当通过- -file指定的文件结束时停止并显示,防止文件再从头开始
-T --traceroute 路由跟踪模式
--tr-stop 在路由跟踪模式下当收到第一个非ICMP数据包时退出
--tr-keep-ttl 保持源TTL,对监测一个hop有用
--tr-no-rtt 使用路由跟踪模式时不计算或显示RTT信息 ARS 数据包描述(新增加的内容,暂时还不稳定)
--apd-send 发送用描述APD的数据包
Ps:
deb文件安装
dpkg -i 安装包名字