Hack the box 靶机实战:OpenAdmin

本贴最后更新于 563 天前,其中的信息可能已经时移世改

Snipaste_2020-05-09_23-12-30.png

介绍

目标: 10.10.10.171 (Linux) 难度: 简单 Kali: 10.10.14.6

OpenAdmin 是一台标记为简单的靶机,实际上也确实偏向于简单,考验的主要还是渗透的基本能力——信息收集、细心。


信息枚举

nmap

首先请出神器 nmap 来一波,我习惯于先扫全端口再详细扫开放端口:

nmap -n -T4 -Pn --min-parallelism 10 -p- 10.10.10.171 -oN ports &&
nmap -sV -sC -T4 -Pn -p $(cat ports|grep /tcp|cut -d/ -f1|xargs |tr ' ' ',') 10.10.10.171 -oN nmap.txt

# Nmap 7.80 scan initiated Wed Apr 29 16:40:31 2020 as: nmap -sV -sC -T4 -Pn -p 22,80 -oN nmap.txt 10.10.10.171

Nmap scan report for 10.10.10.171
Host is up (0.27s latency).

PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
|   2048 4b:98:df:85:d1:7e:f0:3d:da:48:cd:bc:92:00:b7:54 (RSA)
|   256 dc:eb:3d:c9:44:d1:18:b1:22:b4:cf:bd:6c:7a:54 (ECDSA)
|_  256 dc:ad:ca:3c:11:31:5b:6f:e6:a4:89:34:7c:9b:e5:50 (ED25519)
80/tcp open  http    Apache httpd 2.4.29 ((Ubuntu))
|_http-server-header: Apache/2.4.29 (Ubuntu)
|_http-title: Apache2 Ubuntu Default Page: It works

Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .

# Nmap done at Wed Apr 29 16:40:47 2020 -- 1 IP address (1 host up) scanned in 16.33 seconds

扫描发现就开了 2 个端口,22、80 。

直接打开 80 端口的网页看看:

Snipaste_2020-05-09_23-31-51.png

gobuster

没什么有意思的内容,那就用 gobuster 爆破一波目录(没有这个工具的话,kali 可以直接安装 apt -y install gobuster):

gobuster dir -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -u http://10.10.10.171/ -l -t 30 --timeout 30s -x php -o gobuster.txt

Snipaste_2020-05-09_23-39-42.png发现一个 music 目录,打开看看:

Snipaste_2020-05-09_23-41-38.png点击登录试试,跳转到一个奇怪的页面,搜索了下发现是一个 OpenNetAdmin 系统,在这里点题了 <_< ,可以直接看到版本号 v18.1.1

Snipaste_2020-05-09_23-45-08.png


获取立足点

根据上面搜集到的信息,很明显了,直接 searchsploit :

searchsploit opennetadmin

Snipaste_2020-05-10_00-07-05.png

因为目标是 Linux 系统,就直接用 sh 脚本了:

searchsploit -m php/webapps/47691.sh

Snipaste_2020-05-10_00-07-27.png

查看代码发现是直接用 curl 请求,参数是 url:

Snipaste_2020-05-10_00-09-31.png

发现一个坑,这个脚本不是 Linux 格式的,换行符错误,要修正才能用,我干脆重新拷贝粘贴一个新脚本:

Snipaste_2020-05-10_00-15-31.png

附上 url 直接运行脚本:

bash exp.sh http://10.10.10.171/ona/

Snipaste_2020-05-10_00-23-00.png

得到 www-data 执行命令权限。

权限提升

现在这还不是一个完整的 shell 会有诸多不便 ,我习惯获取一个全交互 shell;

这里又有一个坑,因为脚本是直接用的 curl ,所以某些含有特殊字符的命令无法执行,导致反弹命令无法运行;

解决方法是将反弹命令写成脚本下载到靶机再执行,绕过复杂命令;

Snipaste_2020-05-10_13-44-09.pngSnipaste_2020-05-10_13-44-18.pngSnipaste_2020-05-10_13-46-53.png

注: 如何将简单的 Shell 转换成为完全交互式的 TTY

这样就获取了一个全交互式 shell 跟用 ssh 登录拥有几乎同样的功能了,重要的是可以用 vi 和可以执行交互式命令。

最近发现一个新的权限提升检测脚本,挺好用:

https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite

Snipaste_2020-05-10_14-00-16.png

在靶机里下载执行:

Snipaste_2020-05-10_14-03-03.png

有两个本机端口值得注意:

Snipaste_2020-05-10_14-06-55.png

还有用户信息:

Snipaste_2020-05-10_14-08-29.png

到了考验眼力和耐心的时侯了:

Snipaste_2020-05-10_14-13-11.pngSnipaste_2020-05-10_14-15-46.png

发现了数据库密码,然而数据库里没什么好东西,只有 OpenNetAdmin 系统的默认用户名和密码:

Snipaste_2020-05-10_14-20-03.png

https://hashes.com/zh/decrypt/hash

Snipaste_2020-05-10_14-22-41.png

试试直接用数据库密码( n1nj4W4rri0R! )登录上面发现的几个用户看看:

Snipaste_2020-05-10_14-24-45.png

啊哈,jimmy 就是这个密码,所以密码不重复很重要~~~!!!

但是这个用户下并没有 user.txt ,那大概率在另一个用户下,继续脚本枚举:

Snipaste_2020-05-10_14-28-05.png

又到了考验眼力的时侯了,看看这里有什么,刚刚 www-data 用户看不到的:

Snipaste_2020-05-10_14-31-22.pngSnipaste_2020-05-10_14-33-14.png

看我发现了什么!!!这个页面可以获取到 joanna 用户的密钥,那么这个页面在哪儿呢,看看 apache 配置:

Snipaste_2020-05-10_14-33-56.png

还记得前面提醒注意的本地端口吗,果然是有用的,我们直接访问看看:

Snipaste_2020-05-10_14-36-31.png

呃~~哈哈,这个页面写得不够严谨,本来 index.php 里写了鉴权的,我猜用 curl 直接绕过了:

嘤嘤嘤,我不管,反正我拿到密钥了 <_< !

注意密钥的权限一定要改成 600 不然不能正常使用:

Snipaste_2020-05-10_14-41-17.png

竟然还要密码,只好爆破一波了,用 ssh2john.py 转成 hash 再用 john 跑一下字典:

Snipaste_2020-05-10_14-44-53.png

密码到手:**==bloodninjas (id_rsa.joanna)==**

继续登录,用户的标志到手:

Snipaste_2020-05-10_14-47-16.png

接下来向 root 进攻!继续枚举:

Snipaste_2020-05-10_14-49-02.png

噢!!不愧是简单靶机,root 真是简单直接:

Snipaste_2020-05-10_14-51-31.png

nano 怎么利用?不用急,要善于借助工具:https://gtfobins.github.io/

Snipaste_2020-05-10_14-53-12.pngSnipaste_2020-05-10_14-53-22.pngSnipaste_2020-05-10_14-57-31.png

Snipaste_2020-05-10_14-55-47.png

至此 root.txt 到手,提交得分咯!!我要升级!!!

  • 安全

    安全永远都不是一个小问题。

    200 引用 • 816 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...