⓬⁄₆ ⟦ OSCP ⬖ 研记 ⟧ Linux权限提升 ➱ 从“守护进程”和“网络流量”中捕获敏感信息

**郑重声明:**本文所涉安全技术仅限用于合法研究与学习目的,严禁任何形式的非法利用。因不当使用所导致的一切法律与经济责任,本人概不负责。任何形式的转载均须明确标注原文出处,且不得用于商业目的。

🔋 点赞 | 能量注入 ❤️ 关注 | 信号锁定 🔔 收藏 | 数据归档 ⭐️ 评论| 保持连接💬

🌌 立即前往 👉晖度丨安全视界🚀​

​​​​

▶ 信息收集

▶ 漏洞检测
初始立足点

权限提升 ➢ Linux权限提升 ➢ 从"守护进程"和"网络流量"中捕获敏感信息 🔥🔥🔥
横向移动

▶ 报告/分析

▶ 教训/修复

目录

1.Linux权限提升

[1.1 寻觅暴露的机密信息实现提权](#1.1 寻觅暴露的机密信息实现提权)

[1.1.1 检查运行的"守护进程"获取敏感信息](#1.1.1 检查运行的“守护进程”获取敏感信息)

[1.1.1.1 什么是系统守护进程](#1.1.1.1 什么是系统守护进程)

[1.1.1.2 枚举技巧:监控进程中的敏感信息](#1.1.1.2 枚举技巧:监控进程中的敏感信息)

[1.1.2 捕获"网络流量"获取敏感信息](#1.1.2 捕获“网络流量”获取敏感信息)

[1.1.2.1 关键工具:tcpdump(网络嗅探器)](#1.1.2.1 关键工具:tcpdump(网络嗅探器))

[1.1.2.2 监听本地流量中的密码](#1.1.2.2 监听本地流量中的密码)

[1.1.2.3 发现成果:root 用户的明文密码](#1.1.2.3 发现成果:root 用户的明文密码)

[1.1.2.4 提权入口](#1.1.2.4 提权入口)

[1.1.3 Linux 中其他可探测的敏感信息源](#1.1.3 Linux 中其他可探测的敏感信息源)

[1.1.3.1 文件系统中的敏感文件](#1.1.3.1 文件系统中的敏感文件)

[1.1.3.2 环境变量泄露](#1.1.3.2 环境变量泄露)

[1.1.3.3 日志文件中的敏感痕迹](#1.1.3.3 日志文件中的敏感痕迹)

[1.1.3.4 SSH 密钥与配置](#1.1.3.4 SSH 密钥与配置)

[1.1.3.5 数据库与 Web 应用配置文件](#1.1.3.5 数据库与 Web 应用配置文件)

[1.1.3.6 计划任务中的敏感信息](#1.1.3.6 计划任务中的敏感信息)

[1.1.3.7 具有 SUID/SGID 权限的二进制文件](#1.1.3.7 具有 SUID/SGID 权限的二进制文件)

[欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论](#欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论)


1.Linux权限提升

本系列内容围绕以下四大部分展开,本文是第二部分:++从"守护进程"和"网络流量"中捕获敏感信息实现提权++。

攻击向量 核心概念 典型检查/利用方法 关键风险点
1. 系统枚举 全面侦查,像侦探一样收集一切可能指向弱点的线索。 - 检查系统配置、用户与组、历史命令。 - 枚举运行服务、网络连接、进程。 - 列出安装软件、内核版本、计划任务。 信息收集不全面,导致错过关键漏洞入口。
2. 暴露的机密信息 系统或应用中意外留存的可直接利用的敏感数据。 - 查找配置文件中的硬编码密码。 - 搜索日志文件中的敏感数据或错误信息。 - 检查环境变量中的密钥、令牌或密码。 访问凭证直接泄露,提供最直接的攻击突破口。
3. 不安全的文件权限 文件或目录的权限设置不当,允许低权限用户进行越权操作。 - 全局可写文件/目录 :任何用户可修改,用于注入恶意代码或替换文件。 - 不当所有权 :低权限用户拥有关键系统文件,可直接修改。 - SUID/SGID滥用:高权限程序存在漏洞或配置错误,可被利用来获取其权限。 通过文件系统层面的配置错误,绕过权限限制。
4. 利用系统组件 利用操作系统内核、系统服务或第三方应用程序中存在的漏洞。 - 脆弱服务 :攻击以高权限(如root)运行的未更新或配置不当的服务。 - 内核漏洞 :利用操作系统内核本身的漏洞直接提权。 - 软件漏洞:利用第三方应用(如编辑器、数据库)的漏洞执行高权限代码。 利用代码层面的漏洞,实现权限的实质性提升。

1.1 寻觅暴露的机密信息实现提权

在渗透测试中,时间宝贵,应优先关注那些容易获取成果的目标和漏洞------也就是 "低悬的果实"(Low‑Hanging Fruit) 🍎。其中一个重点目标就是用户历史文件 ,这些文件常常包含:明文用户信息 ,甚至可能直接泄露密码或其他身份验证材料。

本文检查 运行的++"守护进程"++获取敏感信息捕获++"网络流量"++获取敏感信息。

1.1.1 检查运行的"守护进程"获取敏感信息

1.1.1.1 什么是系统守护进程

系统守护进程是Linux启动时自动运行的后台服务 ,用于执行特定任务而无需用户交互 。常见的有 SSHWeb服务器数据库等。

系统管理员有时会编写++自定义守护进程++ 来处理临时任务,但往往忽视安全最佳实践,为攻击者留下可乘之机。


1.1.1.2 枚举技巧:监控进程中的敏感信息

作为权限提升枚举的一部分,检查运行进程 可能发现管理员留下的异常行为,尤其是以 root 权限运行的进程中暴露的敏感数据(如明文密码)。

系统对比 说明
🪟 Windows 通常无法列出高权限进程的详细信息
🐧 Linux 可以查看所有进程(包括 root 进程)的命令行参数,是信息收集的突破口

⌨️ 实用命令示例:

bash 复制代码
$ watch -n 1 'ps -aux | grep pass'
  • watch -n 1:每隔 1 秒 刷新一次命令输出,直到手动停止(使用 Ctrl + C)。

  • ps -aux:列出所有当前运行的进程。

  • grep pass:过滤出进程信息中包含 pass 字符串的行。

💡 作用:持续监控进程,捕捉瞬间出现的明文密码或凭证。

🎯 发现成果:明文凭证与提权路径

通过上述命令,我们观察到管理员配置一个自定义守护进程 ,它以 root 身份运行 ,并且命令行中明文 包含了用户 eve 的密码:

👤 用户名eve

🔑 密码Lab123

该进程的存在印证了管理员因忽视安全最佳实践,在守护进程中硬编码了凭证 。接下来,攻击者可利用此密码登录 eve 用户,而该用户具有 sudo 权限 (可提权至 root),从而完全控制服务器。(详见前一篇文章1.1.2.3节)

⚠️ 总结:

  • 守护进程 虽然是 Linux 的常见组件,但自定义脚本中硬编码敏感信息是重大安全隐患。

  • 通过监控进程(如 watch + ps)可以实时捕获这些暴露的凭证。

  • 本例中,发现 root 进程中的明文密码 eve:Lab123,直接打通从普通用户到 root 的提权路径。


1.1.2 捕获"网络流量"获取敏感信息

在权限提升的枚举阶段,除了检查进程,我们还需验证自己是否有权捕获网络流量 。网络中的数据包就像公开的信件,如果未加密,里面的内容(如密码)就可能被任何人偷看。

1.1.2.1 关键工具:tcpdump(网络嗅探器)

tcpdump 是Linux 的一款强大的网络抓包工具,能捕获网卡上流过的所有数据包。它广泛应用于网络故障排查、性能监控和渗透测试。

🔐 权限要求tcpdump 需要 root 权限 ,因为它操作的是原始套接字 (直接读取网卡数据)。

打个比方:普通用户只能看到自己的信件,而 root 用户可以监听整条线路上的所有通话。

然而,IT 管理员有时会被授予 sudo 权限 来运行 tcpdump,以便快速排查网络问题。这意味着某些非 root 用户也可能具备抓包能力,这正是攻击者可以利用的入口。

可能拥有抓包权限的用户 原因
👨‍💻 IT 管理员账号 被赋予特定 sudo 权限用于故障排查
🔧 运维人员账号 需要监控网络流量
🧪 测试账号 临时调试需求

1.1.2.2 监听本地流量中的密码

假设我们已获得一个普通用户 joe 的 shell,并发现他可以通过 sudo 执行 tcpdump(例如通过 sudo -l 查看)。于是我们运行:

bash 复制代码
$ sudo tcpdump -i lo -A | grep "pass"
  • -i lo:监听 本地回环接口lo),即本机内部通信的虚拟网卡。很多服务(如数据库、Web 应用)会在本地通信中暴露敏感信息。

  • -A:将数据包内容以 ASCII 格式 打印出来,方便直接读取字符串。

  • | grep "pass":实时过滤并输出包含 "pass" 的行,精准定位密码。


1.1.2.3 发现成果:root 用户的明文密码

几秒钟后,屏幕上出现了惊喜------我们捕获到了 root 用户的明文凭证!这可能是某个服务(如未加密的 FTP、HTTP 登录)在本地回环接口上发送了登录请求,密码直接暴露在网络流量中。如上图所示。


1.1.2.4 提权入口

这个明文密码直接让我们获得 root 用户权限的钥匙 。通过 su rootssh root@localhost,我们即可登录为 root,彻底控制服务器。

💡 总结与启发

  • 网络流量是敏感信息的富矿:未加密的通信(尤其是本地回环)经常泄露密码、令牌等。

  • 检查抓包权限至关重要sudo -l 查看是否有 tcpdump 或类似工具的 sudo 权限。

  • 不安全配置的代价 :授予普通用户抓包权限,相当于把监听整栋大楼电话线的钥匙交给了可疑人员。


1.1.3 Linux 中其他可探测的敏感信息源

除了守护进程网络流量 ,Linux 系统中还存在大量配置不当或疏忽留下的敏感信息,它们同样是权限提升的"金矿"。下面列出几种常见的枚举方向,帮助你在渗透测试或 CTF 中快速定位突破口。这里做简单列举,不一一详细展开。

1.1.3.1 文件系统中的敏感文件

Linux 系统中许多文件以明文存储敏感数据,若权限配置不当,普通用户即可读取。

文件路径 作用 探测命令 风险说明
/etc/passwd 用户账户信息(可读) cat /etc/passwd 可能泄露用户列表,早期系统可写入(提权)
/etc/shadow 密码哈希(仅 root 可读) ls -l /etc/shadow 若权限为 644,普通用户可读哈希,用于破解
.bash_history 用户命令历史 cat ~/.bash_history 可能包含密码、敏感操作
.mysql_history MySQL 命令历史 cat ~/.mysql_history 可能暴露数据库密码
备份文件(.bak.old 各种配置文件备份 find / -name "*.bak" 2>/dev/null 可能包含未加密的密码、密钥

💡 例子 :若发现 /etc/shadow 权限为 -rw-r--r--,可直接读取所有用户的密码哈希,用 John 或 Hashcat 破解。


1.1.3.2 环境变量泄露

某些程序会将敏感信息(如:API 密钥、密码)存储在环境变量中,若未正确保护,可通过 envprintenv 查看,这在前文有具体内容。

bash 复制代码
$ env | grep -i "pass\|key\|secret"
  • 若发现类似 AWS_SECRET_ACCESS_KEY=xxxxxxxx 的变量,可直接用于云服务提权。

1.1.3.3 日志文件中的敏感痕迹

日志文件(如 /var/log/ 下的文件)可能记录错误信息或调试输出,其中可能包含明文密码。

日志文件 关注内容 命令示例
/var/log/auth.log 认证日志 `sudo cat /var/log/auth.log
/var/log/messages 系统日志 `cat /var/log/messages
/var/log/apache2/access.log Web 访问日志 可能记录 GET 请求中的密码参数

1.1.3.4 SSH 密钥与配置
  • 私钥泄露 :若用户目录下的 .ssh/id_rsa.ssh/id_dsa 权限为 644(应 600),可被其他用户读取,直接用于 SSH 登录。

  • authorized_keys 可写 :若 ~/.ssh/authorized_keys 可写,可添加自己的公钥实现无密码登录。

bash 复制代码
find /home -name "id_rsa" -o -name "id_dsa" 2>/dev/null
find / -name "authorized_keys" -writable 2>/dev/null

1.1.3.5 数据库与 Web 应用配置文件

Web 应用(如 WordPress、Django)的配置文件 中常包含++数据库连接密码++,若文件权限设置不当(如 644),可被读取文件中的信息。

常见路径:

  • /var/www/html/wp-config.php

  • /var/www/html/config.php

  • /etc/mysql/debian.cnf(Debian 系统 MySQL 自动登录凭证)

bash 复制代码
grep -r "password" /var/www/ 2>/dev/null

1.1.3.6 计划任务中的敏感信息

查看 /etc/crontab/etc/cron.d/ 或用户计划任务(crontab -l),可能发现以明文写入的密码(如 echo "password" | command)。这个在前文有详细内容。

bash 复制代码
cat /etc/crontab
ls -la /etc/cron.d/
grep -r "pass" /etc/cron* 2>/dev/null

1.1.3.7 具有 SUID/SGID 权限的二进制文件

虽然这不直接泄露敏感信息,但通过运行具有特殊权限的程序,可借助其漏洞或功能读取敏感文件(如 cat /etc/shadow)。在前文也有详细内容。例如:

bash 复制代码
find / -perm -4000 -type f 2>/dev/null   # SUID 文件
find / -perm -2000 -type f 2>/dev/null   # SGID 文件

例如,若 find 命令具有 SUID 权限,可用 find /etc/shadow -exec cat {} \; 读取 shadow 文件。
🛡️ 安全建议:始终遵循最小权限原则,严格配置文件权限,避免在命令行或脚本中硬编码密码,并定期审计敏感信息的存储方式。


欢迎❤️ 点赞 | 🔔 关注 | ⭐️ 收藏 | 💬 评论

每一份支持,都是我持续输出的光。

相关推荐
郝学胜-神的一滴3 小时前
深入理解TCP连接的优雅关闭:半关闭状态与四次挥手的艺术
linux·服务器·开发语言·网络·tcp/ip·程序人生
漠月瑾-西安10 小时前
微隔离技术深度解析:从“物理边界”到“逻辑细胞”的安全革命
网络安全·零信任·微隔离·最小权限·东西向流量
CCPC不拿奖不改名10 小时前
虚拟机基础:在VMware WorkStation上安装Linux为容器化部署打基础
linux·运维·服务器·人工智能·milvus·知识库搭建·容器化部署
unable code12 小时前
内存取证-卡比卡比卡比
网络安全·ctf·misc·1024程序员节·内存取证
一只自律的鸡13 小时前
【Linux系统编程】文件IO 函数篇
linux·linux系统编程
dinga1985102614 小时前
linux上redis升级
linux·运维·redis
hzc098765432114 小时前
Linux系统下安装配置 Nginx 超详细图文教程_linux安装nginx
linux·服务器·nginx
RisunJan15 小时前
Linux命令-ltrace(用来跟踪进程调用库函数的情况)
linux·运维·服务器
阿乐艾官15 小时前
【 LVM 创建逻辑卷】
linux