Gibbon学校管理系统,比XSS到RCE

渗透技巧 2年前 (2022) admin
482 0 0

    作为一名安全从业者,我被问过一百万次,我是否可以测试他们的学校系统帮助修改他们的成绩。

Gibbon学校管理系统,比XSS到RCE

    所以我测试下,尝试研究学校管理系统。我选择了最著名的免费学校管理系统之一,Gibbon。Gibbon 是一个免费和开源的学校管理系统,在世界各地都在使用。

CSRF

    Gibbon,几乎所有功能都缺乏 csrf 保护。缺少 csrf 检查的一个非常有趣的功能是密码更改。


Gibbon学校管理系统,比XSS到RCE

    你可能认为这很容易受到 csrf 的影响,但事实并非如此对此尝试 csrf 不起作用,只会将我们注销。

Gibbon学校管理系统,比XSS到RCE

    经过一番研究,我发现由于 HttpOnly 和 SameSite,csrf poc 无法正常工作。因此,即使它没有保护功能的 csrf 令牌,它仍然无法被简单的 csrf 方法利用。我发现有一个xss,它可以被绕过。

https://security.stackexchange.com/questions/121971/will-same-site-cookies-be-sufficient-protection-against-csrf-and-xss 

跨站脚本



Gibbon学校管理系统,比XSS到RCE

Gibbon学校管理系统,比XSS到RCE

现在我们有了一个反射的 xss,我们可以将它与上面的 csrf 一起使用。

账户接管

在 xss 和 csrf 都可用的情况下,我现在可以通过更改用户 id 1 的密码来继续帐户接管。用户 id 1 通常是站点的超级管理员,因此接管他的帐户将使我们能够完全访问系统。

我想出了这个有效载荷


Gibbon学校管理系统,比XSS到RCE

然后,我对有效负载进行 url 编码并将其添加到我的 xss 中。触发 xss 有效载荷后


Gibbon学校管理系统,比XSS到RCE

我们可以看到我们的有效负载有效,它发出了一个 post 请求,将用户 id 1 的用户名和密码更改为 admin:Password123!。现在我们可以以管理员身份登录并拥有经过身份验证的访问权限。

认证的RCE

作为经过身份验证的用户,我们可以访问制作课程计划者的功能,并且可以在其中上传文件。


Gibbon学校管理系统,比XSS到RCE

文件上传正确实现,它只允许某些文件扩展名,其中之一是 txt 文件。请记住此功能,因为我们稍后将使用它。

我发现的一个有趣的文件是 export.php。此端点只能由经过身份验证的用户访问。


Gibbon学校管理系统,比XSS到RCE

在这里,您可以看到它接受一个参数 q,并在下面的 include 语句中使用它。它还检查 .. 所以它不容易受到 lfi 的影响。我发现,如果我们包含的文件中有php代码,即使我们包含的文件不是php,它也会被执行。结合上面的文件上传功能,我们可以实现一个rce。

所以我制作了一个名为 poc.txt 的 txt 文件,里面是一个简单的文件<?php system(whoami); ?>,我上传了上面提到的功能。


Gibbon学校管理系统,比XSS到RCE

文件名和目录显示在响应中。然后,我将它的路径传递给 export.php 中的 q 参数

http://localhost/gibon/export.php?q=/uploads/2022/01/poc_ckxsuyxkrm4pehkd.txt.

测试访问了链接,然后……


Gibbon学校管理系统,比XSS到RCE


漏洞已同步给官方修复完成

原文始发于微信公众号(军机故阁):Gibbon学校管理系统,比XSS到RCE

版权声明:admin 发表于 2022年2月9日 上午7:05。
转载请注明:Gibbon学校管理系统,比XSS到RCE | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...