dirty_sock: Linux 提权漏洞利用教程
本文档旨在帮助用户了解和使用 dirty_sock 项目,该项目是一个用于 Linux 系统提权的开源工具。dirty_sock 利用了 Ubuntu Linux 系统中 snapd API 的漏洞,使得本地用户能够提升权限,获取 root 访问权限。
1. 项目介绍
dirty_sock 项目包含两个版本的提权利用工具,分别命名为 dirty_sockv1 和 dirty_sockv2。
- dirty_sockv1: 使用 'create-user' API 来创建一个本地用户,该用户基于从 Ubuntu SSO 查询到的用户名和公钥信息。此版本需要 Internet 连接和运行中的 SSH 服务。
- dirty_sockv2: 通过 sideload(侧加载)一个包含安装钩子的 snap 包,在安装时创建一个新的本地用户。此版本无需 Internet 连接或 SSH 服务,但可能触发 snapd 升级。
2. 项目快速启动
快速启动 - dirty_sockv1
- 创建一个 Ubuntu SSO 账户,并在账户中上传一个 SSH 公钥。
- 克隆 dirty_sock 仓库:
git clone https://github.com/initstring/dirty_sock.git
cd dirty_sock
- 运行 dirty_sockv1 利用工具,使用
-u
参数指定您的 Ubuntu SSO 邮箱地址,使用-k
参数指定您的 SSH 私钥文件路径:
python3 dirty_sockv1.py -u you@yourmail.com -k /path/to/id_rsa
快速启动 - dirty_sockv2
- 克隆 dirty_sock 仓库:
git clone https://github.com/initstring/dirty_sock.git
cd dirty_sock
- 运行 dirty_sockv2 利用工具:
python3 dirty_sockv2.py
3. 应用案例和最佳实践
dirty_sock 项目主要用于研究和教育目的,帮助用户了解 Linux 系统中的提权漏洞。请勿将此工具用于非法目的。
- 最佳实践:在使用 dirty_sock 工具前,请确保您已经理解了项目的工作原理和可能的风险。请确保您的系统已经安装了 snapd,并且系统版本不受 dirty_sock 漏洞的影响。
4. 典型生态项目
dirty_sock 项目可以与其他安全研究和渗透测试工具结合使用,例如:
- Metasploit:一个开源的安全漏洞利用框架,可以与其他工具一起使用,以发现和利用系统漏洞。
- Nmap:一个网络扫描工具,可以用于发现系统中的开放端口和服务,以便进行进一步的渗透测试。
希望这份教程能够帮助您了解和使用 dirty_sock 项目。请确保您遵守法律法规,不要将此工具用于非法目的。