HTB-BountyHunter

Posted 永远是深夜有多好。

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTB-BountyHunter相关的知识,希望对你有一定的参考价值。

HTB-BountyHunter

信息收集

80端口的网页如下。

注意有一个db.php,虽然现在打不开,估计后面会用上。

还有resources里面的readme文件。

  • 完成了tracker提交编写和developer组权限。
  • 没有完成portal的test用户禁用、选择哈希加密的密码以及禁用空密码。
  • 并没有将tracker提交脚本连接上数据库。

进入portal门户界面,没test用户的用武之地,只有一个提交漏洞的简易脚本。

查看源码知道使用的脚本。

用的xml。

抓包看看。末尾有两个%3D也就是两个等号。

先进行url解码,再base64解码。完成后能看到xml格式代码。

试试简单的XXE。

能够读取/etc/passwd。


再去看看db.php。

还是没有显示。

使用php://filter试试。



得到了数据库登录凭证。

开机

存在db密码和用户密码重用,使用 development:m19RoAU0hP41A1sTsq6K登录ssh。

提权

来看看这个py文件是个什么功能。
main函数用来获取输入的路径,并且给load_file函数。

load_file函数用来判断是否为md后缀名。

检测函数有四个if,
第一个if检查读取文件第一行是不是# Skytrain Inc
第二个if检查读取文件第二行是不是## Ticket to ,然后将## Ticket to 后面的东西打印出来。
第三个if检查第三行是不是__Ticket Code:__,是的话行数加一跳到第四行。
第四个if检查第四行是否为**开头;并且还要有一个+号,+号之前的东西会被用来取模,余数还要是4;接着执行**后面的东西,执行结果还要大于100。

前三行直接复制,第四行 11模7余4后满足条件,加上100满足大于100条件。
试试推测是否正确。


好的,下一步就是让eval执行命令。因为eval不能直接执行系统命令,所以需要应用os模块。


使用动态加载模块__import__('os').system('id')

在目标上跑一遍。能够实现。

修改命令即可。

以上是关于HTB-BountyHunter的主要内容,如果未能解决你的问题,请参考以下文章

网络安全怎么学?

--网络安全体系与网络安全模型

1.网络安全发展的三个阶段,每个阶段对网络安全发展的具体内容包括啥?网络安全体系组成的三个主要部

网络安全培训课程表

网络安全主要做啥?

古典密码和网络安全之间的关系