安全路透社
当前位置:安全路透社 > 网络转载 > 正文

记一次挖洞之旅所引发的撕X大战

在上个月,我一直都在跟我的本科学校(迪堡大学)做“斗争”。在对学校网站进行漏洞挖掘的过程中,我发现并上报了一个安全漏洞,这个漏洞还涉及到学校给学生所提供的电子邮箱。在这篇文章中,我将跟大家讨论这个漏洞的技术细节以及我个人对整个事件的看法。

记一次挖洞之旅所引发的撕X大战

在今年八月份,我在迪堡大学的学生电子服务网站上发现了一个带有隐藏输入点(Hidden Inputs,即<input type=”hidden”>)的表单。这个链接可以将学生重定向到一个包含学生学校邮箱以及相关信息的网页。这条链接与该网站中其他所有的链接都不同,因为它没有<a>标签,它使用的是一个带有隐藏<input>的<form>标签。除此之外,这个表格的类型域为sqlform。不过这个隐藏输入点的名字非常有意思:Student ID。

隐藏表单

一般我们在使用隐藏输入点时,我们会假设没人会去打开审查器并检查你的网页源码,然后用它来提交某种格式化的数据。在Mozilla给出的使用场景中,甚至还会用它来发送类似令牌和凭证之类的安全数据。基于这种假设,开发人员几乎不会对隐藏输入点的数据进行过滤。

我所发现的表单正好就是这种情况,这个Student ID域可以直接使用Chrome Web检查工具来直接编辑修改,而且网站不会对其进行任何的过滤。

我向我朋友要了一个Student ID来测试这个漏洞,结果发现通过向系统提交经过修改后的数据便能够让系统输出该学生的邮箱号以及相关信息。

这就非常可怕了,因为这个漏洞可能已经存在多年,而且还可能已经被利用过无数次了。自从1995年的HTML2.0规范发布之后,就有了Hidden Inputs,但是这个网页明显没有22年那么久,可是…谁知道呢?

随后,我向HelpDesk(学校的IT部门)提交了这个漏洞的详细信息以及复现方法。并得到了如下图所示的回复:

记一次挖洞之旅所引发的撕X大战

考虑到SQL注入漏洞很可能会对学校的网站系统产生不可逆的影响,因此我得谨慎选择一个注入Payload。我没有选择使用“DROP TABLE”命令,因为这会将数据库中的表信息永久删除。首先,我假设提交的表单将会执行下列命令:

SELECT (mailbox, combination) FROMs_mailboxes WHERE student_id = {input};

如果input的内容是表单中的Student ID,那么就相当于(插入了“OR =1”):

SELECT (mailbox, combination) FROMs_mailboxes WHERE student_id = 510984 or 1=1;

因为”1=1″永远为真,这条语句也就永远为真了。接下来,系统便会范围每一条邮箱号以及相关组合数据,我们可以在Chrome中直接查看到。

于是我又跟学校的有关部门取得了联系,告诉他们这个漏洞可能比我们想象的更加严重,而学校也在当天修复了这个漏洞。

学校的回应

由于我发现了这样一个可能会泄露上千名学生个人信息的漏洞,所以我觉得我应该可以得到学校的“重视”。因此,我打算在得到学校许可的情况下写一篇文章来记录这一次的挖洞过程,而这也是我当时所能得到的唯一奖励了。

学校给我和其中一名系统管理员安排了一次会面,并希望从我这里了解到完整的漏洞技术细节,会面时间是8月28日。由于该漏洞已经被修复了,所以我也询问他们我是否可以写一篇相关的文章。但这名管理员却表示他们没有权限答应我这件事情,所以我可能要等到下次跟学校高层见面才能知道结果了。

跟学校高层的会面安排在8月30号,他们想从我这里了解整个事情的经过。当时我被问到了一大堆的问题,例如我做这件事情(挖洞)的意图?而且他们还表示,由于这个漏洞,现在所有的学生邮箱以及个人信息都得要修改。更加莫名其妙的是,我感觉他们说话的语气就像这一切都是拜我所赐一样。当我说到我打算发表一篇文章来记录此次事件详情时,他们却让我不要对外发表任何信息。不过他们根本拦不住我,反正他们又不是警察。

第三次会面发生在8月31日,当时他们又问了一堆之前已经问过的问题,因为另一名学校高层领导希望直接从我这里得到第一手信息。接下来学校表示,他们不会泄露我的个人身份,并希望我考虑一下几个因素:

1.      之后的老板知道之后可能不会再聘请我了,因为我有可能会对他们的系统“乱来”。

2.      脾气不好的高层可能会对我的行为予以惩罚。

3.      学生们会很生气,还有可能会报复我。

4.      将细节公布出来将会影响迪堡大学(我的母校)的名声,我为何要这样做?

5.      我“入侵”了学校的信息系统,但学校并不会惩罚我。但如果我坚持要公布细节的话,那他们就要好好考虑一下了。

但我告诉他们,你们系统有漏洞这是板上钉钉的事实,这并不是我的错,而且你们的系统此前可能已经被入侵多次了,而学生们的信息可能也早就泄露出去了。学校则表示,如果我一定要公开的话,他们就会报警,因为我非法访问了学校的敏感信息,而这是一种违法行为。

之后,我的父亲联系了一名律师,因为我的母校准备将我交给执法部门来处理。

公开信息

迪堡大学在9月4日的早上7点23分给所有的学生发了一封邮件:

记一次挖洞之旅所引发的撕X大战

大概在一周之后,迪堡大学学生会创办的校报The Depauw对此次事件进行了报道,点击【这里】查看报道原文,强烈建议大家阅读。

该报道一经发表,便引起了学生们的一片哗然。他们认为学校的做法完全是不可理喻的,而我的做法才是正确的。除此之外,也有不少学生联系我说他们愿意帮助我,例如向学校管理层写信或发邮件等等。

随后的会面

在9月22日,我跟学校的高层进行了最后一次会谈,并希望在此次会面时将所有的事情一次性解决。

学校首先表示他们不会对我的行为予以惩罚(我呸!),随后他们对校报那篇文章所引起的“一片哗然”进行了解释,他们认为他们在按规定办事…之后的对话大致内容如下所示:

记一次挖洞之旅所引发的撕X大战

记一次挖洞之旅所引发的撕X大战

学校还表示,他们已经聘请了第三方安全团队来对学校的系统进行完整的安全审计,查找并修复系统中的安全漏洞,无论我再报告什么他们都不再欢迎了,而我将面临他们给予的惩罚…

后话

整个过程的确让我感到非常的失望,虽然我也能理解学校为什么让我“闭好嘴巴”,但他们的态度确实让我非常不爽。最大的问题在于,学校根本不关心漏洞的严重性,他们的第一反应就是要让我“闭嘴”,不仅用法律来“威胁”我,还打着“保护我,为我好”的名义来让我保持沉默。但在我看来,我在学校的系统中发现了安全漏洞,并且负责任地将漏洞上报给了学校的有关部门,我并不认为自己做错了什么,学校也许应该把注意力放在如何保证学生信息安全上吧!

* 参考来源:hackernoon,FB小编Alpha_h4ck编译

未经允许不得转载:安全路透社 » 记一次挖洞之旅所引发的撕X大战

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册