HTB打靶日记:BroScience
在本文中,我们将深入探讨一个名为“BroScience”的HackTheBox靶场机器的渗透测试过程。这个场景主要涉及Web安全、Linux系统以及多种攻击技术。我们从信息收集开始,使用Nmap对目标IP(10.129.125.159)进行扫描,分别使用TCP(-sT)和UDP(-sU)扫描所有端口,以确定哪些服务是开放的。扫描结果显示80和443端口开放,其中80端口的HTTP服务会重定向到443端口的HTTPS服务。 在访问网页时,我们发现了一个有趣的URL参数`user.php?id=`,这暗示可能存在用户列表。通过编写脚本,我们枚举出了五个不同的用户名。接着,我们注意到一个可能的文件包含漏洞,但系统有防护措施,仅允许包含当前目录下的文件。我们尝试通过URL编码来绕过过滤,最终成功绕过了防御机制,尽管未实际包含任何有效内容,但证明了过滤器已被绕过。 进一步的目录扫描和子域名扫描并未发现有价值的信息,于是我们将注意力重新放回到之前发现的`?page=`参数上。通过双重URL编码,我们成功触发了文件包含漏洞,并成功包含了`/etc/passwd`文件,这揭示了服务器上的用户和权限信息。 在页面中,我们找到了一个注册功能,注册过程需要激活码,而激活码是基于时间戳生成的。通过修改`time()`函数为`strtotime()`,我们可以自定义生成激活码,从而注册新用户并激活。注册完成后,我们发现了一个cookie反序列化漏洞,利用此漏洞可以远程加载`wen.php`,成功反弹shell。 机器上5342端口运行着PostgreSQL数据库服务,利用之前从`/etc/passwd`中获取的数据库账户和密码,我们成功登录了数据库,并从中获得了存储的用户密码。通过John the Ripper工具,我们解密了这些哈希值,这让我们能够使用SSH以bill用户身份登录。 为了获取更高的权限,我们利用监控工具pspy监视进程,发现系统以root权限运行一个脚本`/bin/bash -c /opt/renew_cert.sh /home/bill/Certs/broscience.crt`。这里的关键在于创建一个自签名的证书,并将用户名作为命令参数。这样,当我们上传证书时,系统执行了命令,使我们获得了SUID权限,最终通过提权操作成为root用户,完成了对目标系统的完全控制。 总结来说,“BroScience”靶场机器展示了多种常见的安全漏洞和攻击手段,包括但不限于信息收集、端口扫描、文件包含漏洞利用、反序列化攻击、数据库渗透、密码破解、权限提升等。这些技巧对于提升网络安全意识和防御能力至关重要,同时也是任何IT安全专业人员或渗透测试者必须掌握的基本技能。
剩余12页未读,继续阅读
- 粉丝: 139
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助