DevGuru 1
https://download.vulnhub.com/devguru/devguru.ova.7z
靶场IP:192.168.32.224
扫描对外端口服务
┌──(root💀kali)-[~/Desktop]
└─# nmap -p 1-65535 -sV 192.168.32.224
Starting Nmap 7.92 ( https://nmap.org ) at 2022-09-11 01:23 EDT
Nmap scan report for 192.168.32.224
Host is up (0.00096s latency).
Not shown: 65532 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4 (Ubuntu Linux; protocol 2.0)
80/tcp open http Apache httpd 2.4.29 ((Ubuntu))
8585/tcp open unknown访问80端口

爆破目录
访问:/.git/HEAD

使用git-dumper对整个git项目导出

访问:/adminer.php,发现需要数据库连接信息

查看数据库连接文件
登录成功

在 backend_users 表中,我在这里看到了用户"frank"的记录,我找到了bcrypt 算法加密形式的密码,并且可以使用编辑选项卡修改该记录。

因此,我尝试使用 https://www.browserling.com/tools/bcrypt生成一个新密码 :hack123
使用frank/hack123登录cms


我在 Google 上搜索并找到了一个通过执行 PHP 代码来利用 October CMS的链接。所以我执行以下代码:

在"home.htm"文件的代码选项卡中添加以下方法:

执行shell:http://192.168.32.224/?cmd=ls -la

下载反弹shell
我们得到了反向连接,让我们进一步列举。我们在 /var/backup 中找到了app.ini.bak文件

在这里,我们找到了 gitea DB 的另一个登录凭据。
因此我们以gitea:UfFPTF8C8jjxVF2m登录mysql

在用户内部的 gitea DB 中,该表包含 user:frank 并再次更改密码

现在让我们使用上面生成的用户 Frank 的密码哈希。因此,我为用户 frank 编辑了记录并更新了表格。

然后我导航到 gitea over 8585 并使用以下凭据登录

在这里,我们得到了仪表板并找到了 frank/devguru-website 的链接。

单击图像中突出显示的设置。

点击Git Hooks > pre-receive > Hook Content然后执行 python 反向 shell 和代码。


但是您需要更新存储库以执行 python 代码,因此返回存储库并打开 README.md
现在通过在文件末尾添加一些空白行来编辑文件,并在单击提交更改后立即单击提交更改,它将更新存储库,您将通过 netcat 会话获得反向连接。

因此,我们得到了反向连接,我们找到了 user.txt 文件,这是我们的第一个标志。

为了提升权限,我们检查了 Sudo 权限,发现用户 frank 可以使用 root 权限运行 sqlite3,而且安装的 sudoers 插件版本也存在漏洞。

我们从这里发现了一个漏洞。然后我执行以下命令以获取 root 权限 shell 并读取作为我们最终标志的 root.txt。

最后更新于
这有帮助吗?