从0到tfp0第二部分:voucher_swap EXP详解
# 从零到tfp0:voucher_swap漏洞利用详解
## 1. 漏洞背景
### 1.1 引用计数机制
引用计数是一种内存管理技术,通过跟踪对象被引用的次数来决定何时释放内存。在XNU内核中:
- Mach端口(`ipc_port_t`)使用`io_references`成员作为引用计数
- Voucher使用`iv_refs`成员作为引用计数
- `os_refcnt_t`类型限制最大值为`0x0fffffff`(7个f),超过会触发内核panic
### 1.2 漏洞根源