HTB-Heal

HTB-Heal

信息收集

扫描端口信息 22和80端口开放。

将域名和对应ip添加到/etc/hosts中

image-20250207205220894

扫下后台

1
2
3
/index.html
/robots.txt
/manifest.json

没什么有用的信息。

进行子域名爆破,看是否存在子域名。

1
ffuf -w subdomains-top1million-110000.txt -u http://heal.htb/ -H "Host:FUZZ.heal.htb" -mc 200 

image-20250207224720029

同样加到/etc/hosts中

这个子域名扫后台也没得到什么有用的信息 再次回到heal,htb中

进行一个用户的注册,然后就会跳转到下面的一个地方。

image-20250207232710488

点击survey会跳转到一个新的子域名信息。

image-20250209202838222

加到hosts里面

添加完成之后能得到一个用户名

image-20250209212818278

扫后台 扫到了登录地址 /admin/ 用户名知道,但是密码不知道

之前 注册完成之后 登录进去还有一个地方

image-20250209213314094

抓包之后 再放几次包之后能测出来一个任意文件读取

image-20250209213452120

漏洞利用

上面的host地址是api.heal.htb 这个网站是一个Ruby on Rails 网上找一下数据库存放的位置 读取一下数据库的内容

image-20250209213725492

image-20250209213907673

读取一下storage/development.sqlite3

能读到ralph账户的hash

1
$2a$12$dUZ/O7KJT3.zE4TOK8p4RuxH3t.Bz45DSr7A94VLvY9SWx1GCSZnG

是一种bcrypt生成的哈希值 然后利用john进行破解一下。

1
john 1.txt --wordlist=/usr/share/wordlists/rockyou.txt --format=bcrypt

image-20250209220146047

得到密码是147258369

尝试ssh登录进去,密码不对 那就试一下之前的后台地址,成功登录。

https://github.com/Y1LD1R1M-1337/Limesurvey-RCE 这有一个可以使用

得修改一些东西

image-20250209223537457

这个地方加一个6.0 因为登录进去的就是6.6.4版本的。

然后重新生成一个zip文件 将原来的删除 创建一个同文件名的zip压缩包

1
zip -r Y1LD1R1M.zip config.xml php-rev.php

image-20250209223745867

然后上传那个zip文件

image-20250209225355613

打开activate

image-20250209225455003

然后访问

1
http://take-survey.heal.htb/upload/plugins/Y1LD1R1M/php-rev.php

即可得到shell

再/var/www/limesurvey/application/config下找到数据库的密码

1
2
'username' => 'db_user',
'password' => 'AdmiDi0_pA$$w0rd',

mysql服务没有 那这个密码可能是ssh的密码,再home目录下存在两个用户 另外一个是ron 尝试了一下,这个密码就是ron的

image-20250209231242744

提权

上传一个fscan看一下是否有内网的其他服务。

image-20250209234121258

有一个内网的服务 ssh映射出来。

1
ssh -L 8500:127.0.0.1:8500 ron@10.10.11.46 

image-20250209235716122

下面存在服务和版本信息

http://exploit-db.com/exploits/51117 利用这个来打。

image-20250210000500102

image-20250210000511244

提权成功。


HTB-Heal
http://example.com/2025/02/07/HTB-Heal/
作者
FSRM
发布于
2025年2月7日
更新于
2025年2月10日
许可协议