我是如何利用隐藏输入入侵德保大学的
我是如何利用隐藏输入入侵德保大学的
原文:https://medium.com/hackernoon/how-i-hacked-depauw-university-using-hidden-inputs-79377c3dca7e
以及如何不处理报告的漏洞
在过去的一个月里,我和我的大学 DePauw 发生了冲突,因为我发现了一个涉及大学提供的学生邮箱的漏洞。我受到了威胁,同时也被告知他们对我的所作所为心存感激。

在这篇文章中,我将解释漏洞的技术细节,大学的反应,造成现在这种情况的一系列事件,以及我对整个事情的看法。
八月底,我在德保大学的学生电子服务网站上发现了一个隐藏输入的表单。该链接用于将学生引导至包含其大学邮箱号码和密码的网页。
注:如果你对黑客的技术细节不感兴趣,请跳到下面的“ 大学反应 ”
这个链接不同于所有其他链接,因为它不是一个[<a>](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a)标签(通常用于 HTML 链接对象),而是一个带有被设置为隐藏的输入的[<form>](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form)标签。此外,该表单有一个设置为sqlform的类型字段(对此的研究没有返回任何结果,这可能表明它被最初的开发人员用作表单如何工作的文档)。然而,这里的隐藏输入有一个有趣的名字:学生 ID。
利用隐藏的形式
隐藏输入有时在假设没有人会打开检查器并提交除格式化网页中的数据之外的数据的情况下使用。Mozilla 的隐藏输入页面(上面也有链接)甚至添加了一个用例,即安全数据,比如一个令牌,如果表单被更改,它将使表单无效。因为这个假设,输入净化可能被忽略或完全忘记。
我找到的表格正是如此。可以使用 Chrome Web Inspector 编辑的学生 ID 字段未被清理。
我向一个朋友要了他们的学生证来测试这个潜在的漏洞。果然,提交带有修改数据的表单就足以让系统给出相关的邮箱号码和组合。
这太可怕了。这个洞可能已经存在并被开发了很多年,没有人知道。HTML 2.0(1995)规范包含隐藏输入,但这个网页不太可能已经存在 22 年了。话虽如此,这仍然是一种可能性。
存在可以追溯性地跟踪漏洞利用的日志,但是搜索它们需要非常长的时间和精力,通过修补漏洞(修复漏洞)和改变组合(清理混乱)可以更好地利用这些时间和精力。

我向服务台(大学 IT 部门)和一些高层管理人员提交了一份报告,详细说明了漏洞和重现步骤。
然而,我怀疑这个问题比我最初发现的更糟糕。如果输入数据没有经过清理,并且表单是类型sqlform的,那么它是否容易受到 SQL 注入的攻击?
有许多 SQL 注入会对系统产生毁灭性的、不可逆转的影响,所以在选择注入时,我需要小心。我们可以插入OR 1=1,而不是尝试执行 DROP TABLE 攻击,这可能会永久删除数据库。我假设提交表单将执行:
SELECT (mailbox, combination) FROM s_mailboxes WHERE student_id = {input};
其中,如果输入是表单中的学生 ID,则计算结果为:
SELECT (mailbox, combination) FROM s_mailboxes WHERE student_id = 510984 or 1=1;
因为1=1始终为真,所以该语句对表中的每一行都计算TRUE。随后,每个邮箱号码和相关的组合都被返回,可以在 Chrome 上查看。
我立即提交了这个问题,希望向大学表明,他们的问题比我最初的电子邮件所显示的要糟糕得多。问题在当天结束前迅速得到了解决。
大学的反应
为了保护他们,所有大学教师的名字和职位头衔都经过了审查。
因为发现了一个泄露了数千条个人信息的漏洞,我期望得到完全的感激。我准备请求允许写一篇关于所发生的事情的文章,这是我当时唯一想要的奖励。
我们安排在 8 月 28 日星期一与一名系统管理员会面,这样他们可以确保从我这里获得所有的技术细节。由于漏洞被修复,我问我是否可以在网上发表一篇关于泄漏的文章。我被告知系统管理员没有权限,我必须等到下一次会议,届时上级会详细说明将要发生的事情。
我与高层的会面安排在 8 月 30 日星期三,讨论并希望结束关于将要发生的事情的讨论。我面临着一系列问题,包括我为什么这么做,以及我的意图是什么。我还被告知,由于该漏洞,每个邮箱组合都需要更改,并表示这是我的行为的直接后果,这一声明将在以后明确表达。有人问我是否可以发表一篇详细描述泄密事件的文章,我被告知,他们希望我不要发布任何信息,但他们不能阻止我,因为他们不是警察。
第三次会议是在 8 月 31 日星期四,在要求的会议时间前几个小时,通过上级秘书的短信安排的。我遇到了与上次会议类似的另一系列问题,但针对的是另一位希望从我这里获得第一手信息的大学代表。然后我被告知大学不会透露我的身份,并要求我不要透露自己的身份,原因如下:
- 未来的雇主可能会看到这一点,并没有兴趣雇用我,因为我可能会“戳周围”他们的系统。
- 愤怒的董事会成员可能会要求对我的行为进行惩罚。
- 学生可能会生我的气,做出报复行为。
- 公开这方面的细节会让我的母校 DePauw 看起来很糟糕。我为什么要这么做?
- 我滥用大学信息系统,违反了学生行为准则,但他们不打算采取任何行动。然而,如果我要发表一篇博文/文章详细描述所发生的事情,那么“我们可能需要对此进行调查。”
然后我被提醒我的行为的后果(下周所有的邮箱都将被更换),并被问及我对此的看法。
在这一点上,我告诉他们,这不是我的错,这些变化必须发生,但事实是,他们的系统是脆弱的,在第一时间,这可能已被利用了无数次,邮件可能已被盗过去的结果。这一时刻意义重大,因为这是我所有会议中第一次,我选择在谈话中插入我的观点,这也不会是最后一次。
然后我被告知,大学可能有责任向警方举报我,因为我访问的信息非常敏感,我可能已经违反了法律。
后来,我父亲联系了一名律师,因为我的母校暗示他们可能会让我从事执法工作。
上市
9 月 4 日上午 7 点 23 分,一封电子邮件发出,向学生详细说明了发生的事情:

一周后,DePauw 大学的学生办报纸 DePauw 得到了关于我在邮箱中的角色的消息。我接到通知,我有机会坐下来接受采访,并透露我在邮箱中的角色。经过深思熟虑,我同意进行一次简短的坐下来面谈。
关于这种情况的文章可以在这里阅读。我强烈建议您在继续之前阅读这篇文章。
这篇文章在 9 月 12 日发表后,我多次被老师和学生找到,说大学的所作所为是令人难以置信的错误,我是对的。一些教职员工甚至找到我,说他们愿意尽一切努力纠正这一错误,包括给管理层写信和发电子邮件。
其他漏洞
现在有了学生和教师的支持,我可以放心地在系统中发现更多的漏洞。我天真地以为大学会承认他们的错误,接受我的帮助。
使用与上述相同的方法获得了两个漏洞,但是来源不同:
- 尚未正式公布的春季课程时间表。
- 一个编辑我当前秋季时间表的门户网站,它应该在几周前就关闭了,使用它需要额外付费。
我提交了这些,它们在一天之内就被修补好了。
后续会议
一周后,9 月 22 日,我与第二位高层进行了最后一次会面,总结了整个情况,并了解了校方是否会对我采取行动。
我首先被告知不会对我采取任何行动(唷!).我还被告知,大学对我报告他们的行为感到“不快”感到惊讶,他们认为他们是在履行自己的职责。我们接着通过下面的信进行了交谈:


作为回应,我试图说明的要点之一是服务器上的身份验证是如何工作的,以及系统上数据的权限。我被授权以学生级别访问数据,数据(邮箱组合)被意外地视为学生可以访问,这就是我能够访问数据的方式。这是不被接受的,我被告知我通过篡改和/或“拨弄”大学信息系统访问了未经授权的数据。
除了信中提到的一切,我还被告知,该大学正在雇用“外部人员来修复系统”,这可能意味着一次全面的安全审计,这是应该在第一份报告中完成并宣布的事情。我还被告知,由于这些受薪的专业人士,我的工作将不再受欢迎,并将受到惩罚。
结论
我试图讲述所发生事件的一个线性故事,而不表达我的观点,这样你,读者,就有机会对这个问题形成自己的观点。也就是说,我对发生的一切都有自己的看法,我觉得需要被倾听。
首先,在发现漏洞后,改变代码的反应花了超过 12 天的时间。这意味着以下任何一种情况都可能是真的:
- 该大学确切知道该漏洞在系统存在的所有时间内被使用了多少次,因为他们没有刷新日志并搜索所有日志。
- 该大学没有考虑到这些数据可能已经被恶意使用,他们应该尽快更换锁。
- 学校认为我是唯一的攻击者,我不会恶意使用它。
我认为大学有机会鼓励学生让自己的信息更加安全。值得注意的是,这一切都发生在同一个月 Equifax 被黑客攻击,泄露了 1.43 亿条个人信息记录和一名白帽黑客发现了一个影响太多公司的漏洞,他无法咨询所有公司。他们以这种方式做出回应,阻止了未来的学生通知他们自己的安全漏洞,也阻止了科技行业普遍欢迎的活动。现在是二十一世纪,信息时代有一套新的规则,可以让每个人受益,但前提是你允许。
我认为所发生的事情的最大问题是,大学太专注于让我保持沉默,以至于他们威胁要采取法律行动,同时引用诸如“为了我的保护”之类的理由,并且这将损害最初威胁我的同一件事。在信息泄露的情况下,透明度非常重要,当电子邮件显示“有限数量的信息被访问”而不是“所有信息都被泄露”时,我认为必须采取措施通知那些受影响的人。
上面有五个理由,大学引用我保持沉默。我想在这里解决这五个问题:
- 对未来雇主的负面印象:自从 DePauw 的文章发表后,已经有几家不同的公司联系我,询问就业机会。还有,大部分公司都会奖励这种行为。
- 愤怒的董事会成员:这个问题是德堡大学存在的更多问题的一个标志,我不会在这里深入探讨。
- 怀恨在心的学生:没有一个学生向我提出反对意见,我也只听说过一个学生为大学的决定辩护。
- 我的母校的形象:我相当肯定,如果学校决定奖励一名学生,让他们利用在 DePauw 获得的知识帮助他们建立一个更安全的系统,那么学校的形象目前会更糟。现在它看起来像一个不赞成用自己的知识为大学谋福利的机构。
- 公开信息可能会给我带来麻烦:使用审查制度来确保某个叙述是大众所相信的叙述,这样做可以吗?
这整个过程给了我启发,但也让我失望。在某一点上,我意识到我能够比一个大学工程师更聪明,这是对我个人技能的验证。其后果是,大学试图掩盖这一点,让我保持沉默,让我失望的是,我认为这所大学是多么超前。