亚当斯州立大学。 如何入侵网站。 第一部分

主持人:我感谢大家参加“午餐休息时间的科学和数学对话”系列的第一讲。 此外,您还收到了电子邮件,在此校园大楼周围粘贴了本学期将举行的七次讲座的时间表。 我想向您介绍计算机科学系的Susan Loveland博士,他将讨论如何入侵网站。



苏珊·洛夫兰(Susan Loveland):在演讲开始时,我想提到黑客以各种黑白相间的方式出现。 今天,我将在Black Hat中扮演黑客的角色,并在hack的阴暗面中扮演角色,因为变坏比好多有趣。 白帽内部有一些黑客在计算机安全公司工作,并调查计算机取证。 他们试图在恶意分子出于自己的目的利用它们之前找到安全漏洞。

此类黑客的任务是在不损害应用程序的情况下找到漏洞,在安全漏洞上编制报告并将其发送给公司。 我本人从未想过要对该网站进行黑客攻击,所以我请来了一位共同报告员,他准备了我们演示文稿的幻灯片(戴黑帽)。

我是Eve Hacker(Eve Hacker),是Loveland博士的另一种自我,它将向您展示如何入侵网站。 我忘了提到黑帽作为黑客的象征,这是来自西方人的旧时代,坏人通常戴着这样的帽子。 我决定为了成为一名有效的黑客,我需要为自己选择合适的长袍。 因此,我可以为自己营造一种合适的心情,并且您可能会对观看此演示文稿感兴趣。 因此,我请洛夫兰德博士(摘下他的帽子)。

苏珊·洛夫兰(Susan Loveland):谢谢夏娃。 在开始之前,我想告诉您为什么Internet对黑客如此有吸引力。 首先,应用程序的广泛性和可访问性-根据2009年白帽协会的一份报告,大约80%的网站存在严重漏洞。

其次,它是有利可图的-攻击自动化可以最大程度地降低黑客的成本,同时将利润扩大到巨大规模。 第三,易用性-聪明,有创意的黑客喜欢吹嘘自己的漏洞利用,任何坏人都可以利用与Google的合作成果找到数百种工具来破解合适的应用程序。 第四,通过匿名-您可以放心地违法,因为很难找出Web应用程序何时被黑客入侵并追踪到该人是谁。 当您实际抢劫银行时,您必须在银行的领土内,但是当您入侵Web应用程序时,您可以在没有引渡法律的情况下在国外工作,并且从黑客的角度来看是相对安全的。

那么,当您尝试入侵应用程序时首先要做什么? 第一步是最困难的,因为您需要了解此应用程序是什么,它如何工作,在何处具有“输入和输出”。



应用程序基础结构的检查包括服务器标识和端口扫描。 然后,您需要了解应用程序的组成:URL请求的字符串和参数,身份验证机制,使用TLS / SSL,应用程序中使用的软件(PHP,Java),目录结构和会话管理。

因此,我只向您介绍将被黑客入侵的应用程序,并引导您逐步了解该应用程序可能存在的所有漏洞。 我们今天正在黑客入侵的应用程序称为“大学页面”。 大约一年半以前,这个项目是在我的CS245网络编程课程的教室中开发的。



他的想法是让校园中的每个人都为每个教职员工使用一组网页,因为它看起来比各个教职员工的不同设计的页面更具专业性。 我与Mark Schoneher进行了交谈,以帮助我和我的学生解决此问题。 马克向所有人发送了电子邮件,询问他们希望在教职员工的网页上看到什么样的内容,我的班级开发了“教职员工的页面”,这些内容都显示在此幻灯片上。

如您所见,这里有一个主页,其内容适用于该学院的学生,“培训”选项卡,教师可以在其中张贴指向个别培训课程的链接,“奖学金”选项卡,您可以在其中放置科学活动的结果,“教育”和“咨询”选项卡。 。

我的学生试图使教职工易于维护这些页面,因此他们将用户授权链接到该页面。 单击页面左上角的链接后,将打开一个注册表,您需要在其中输入园区网络上的用户名和密码标识符。 授权后,将打开相同的主页,但是“编辑”按钮将显示在“信息”字样下。 单击此按钮后,教师可以进入编辑器面板并在页面上添加或更正信息。 这些是我们今天要尝试破解的应用程序的主要特征。



让我们回到我们的演示。 与其他职业一样,在黑客活动中,您需要设备,否则工作将无效。 为了破解,我们需要一个代理服务器。



代理服务器通过拦截客户端计算机和服务器之间的所有消息来加快访问网页的速度。 您可以查看所有消息,这非常有用,因为从外部看不到客户端和服务器之间的大量通信。 代理服务器使您不仅可以检查流量的内容,还可以对其进行更改。 实际上,对于在教室里学习编程的学生,您可以完全确定将哪些内容发送到服务器。

我想指出的是,对于任何人来说,如何在客户端上管理代码都没有关系,因为一个好的黑客总是可以通过与连接到浏览器的服务器联系来绕过您的控制。 因此,要破解我们的应用程序,我们需要一个代理服务器。 获得它并不难-您只需从Internet下载一些代理即可。



在幻灯片上,您可以看到三种流行的代理:WebScarab,BurpSuite和Paros。 您可以免费下载其中的任何一个,像安装其他任何应用程序一样安装它们,并在几分钟之内配置您的浏览器以使用代理。

我们今天使用的第一类攻击是字典攻击或字典搜索。 所有此类攻击都试图通过使用一组密码词典对最受欢迎的密码和默认密码列表进行排序来获取某人的密码。 如果您需要这样的词典,那么它也可以从Internet下载,这是一种公共资源。
在发起字典攻击之前,您需要仔细研究要攻击的应用程序的密码策略。 在我们的案例中,“教师页面”与亚当斯大学的密码相关联,因此我们需要找出为黑客入侵该应用程序选择的密码。



找出密码外观的最佳方法是使用密码恢复功能,因为它会提示您。 看看我做了什么-刚输入了错误的密码,这些家伙太好了,以至于他们在页面顶部发布了一条消息,描述了我可以尝试的密码类型。 因此,我了解到在进行字典攻击时使用的字典中,我应该尝试任何长度至少为8个字符的单词,并使用大小写字母和数字。

我必须承认,自从我上次访问该网站以来,他们使服务质量下降。 现在,您不能只检查其密码的功能,因为他们已将有关黑客的政策更改为一种不太友好的政策,而且,如您所见,现在,他们在尝试重设密码时没有任何提示。

幸运的是,我保存了之前的屏幕截图,因此我们知道要选择哪个密码。 我认为我们已经准备好请夏娃发言,以便她展示如何使用字典搜索方法进行攻击。

Eve Hacker:谢谢Loveland博士! 我要做的第一件事是进入授权窗口,我们需要向服务器发送密码,并稍微更改URL字符串。 完成此操作后,我将在屏幕上看到一个授权表单,需要在其中输入用户名和密码。 我应该能够将正确的密码与错误的密码区分开,即查看输入错误密码时应用程序将报告的错误。

由于我要获取Loveland博士的密码,因此我在用户名行中输入她的用户名sloveland,输入错误的3个字符的密码,然后单击“登录”按钮。 之后,出现消息“无效登录”。 查看应用程序如何响应错误的密码非常重要。

接下来,我需要将浏览器配置为使用代理服务器,因此我更改了Firefox的设置。 打开“高级设置”选项卡,取消选中“使用系统代理设置”框,然后选中“使用手动代理配置”框。 我的代理将“监听”端口8080,以便它可以拦截所有发往服务器的请求。



我需要做的下一件事是安装下载的代理服务器,在我的情况下是Burp Suite。 现在您将看到该代理窗口的外观,这是我在攻击过程中使用的窗口。 但是我必须返回到授权页面,然后将其重新提交给服务器。 事实是,由于我是在不重新加载页面的情况下首先启动代理的,因此可能会出现问题。 如果您注意到,我们的应用程序使用安全的HTTPS连接,并且代理服务器没有适当的安全证书。 因此,我必须首先确认该应用程序可以与代理使用不安全的连接,并将其URL放入安全策略例外中。



如果我不纠正此错误会发生什么? 让我回头给你看看。 我返回浏览器设置,这次我不会急于安装拦截请求的手动代理设置。 我将再次激活“使用系统代理设置”复选框,因为我确实确实需要首先获得原始授权页面,并且在该页面上,我将输入浏览器设置并切换回手动代理设置。

因此,现在我们有了一个授权页面,它将与代理服务器“对话”。 我重新输入了Loveland博士的用户名和相同的无效密码-fff,这些密码已发送到我的代理服务器。

接下来,我转到服务器管理页面,然后单击选项卡,该选项卡打开用于查看收到的请求的窗口。



让我们看看该查询在Spider中的外观-这是Burp Suite窗口中的下一个选项卡。 为此,我使用“发送到蜘蛛”命令,查看登录表单的外观,这真的很有趣。 我单击“忽略表单”按钮。



然后我返回对我感兴趣的POST请求。 我们看到一个包含授权表单的请求,即输入用户信息的请求。



我们这里有几种攻击方法-扫描器,入侵者,中继器,音序器,解码器,比较器。 我将使用Intruder,因此我使用send to intruder命令将此信息发送给他,该信息显示在Positions选项卡的窗口中。 这是已发送到代理服务器的所有信息。



它显示了许多无法在网页上看到的隐藏内容,并突出显示了黑客喜欢处理的字段:会话ID会话ID,用户名,用户名和密码。 我们对Dictionary Attack感兴趣的唯一一件事就是密码,因此我将清除大多数字段,选择password字段,然后使用add§按钮将此字段添加到字典中。

此选项卡确实会令您满意,因为您可以使用下拉菜单在其中选择各种攻击方法-狙击手,攻城槌,干草叉或集束炸弹,以此作为黑客。 我会做的,然后选择“狙击手”攻击。 接下来,在“有效载荷”选项卡上进行一些设置-我们将进行字符替换,因为我将用字典中的单词替换密码字符,然后必须下载以前从Internet下载的字典。 您会看到打开的词典,请注意,我删除了所有少于8个字符的单词,因为我不想浪费时间。



我想提请您注意右侧带有参数a,b和e的块。让我问:当您被迫选择密码时,必须在其中输入数字或符号,是否曾经选择过看起来像相应字母的数字或符号?您打算用哪个替换它们? 您可能会想使用此方法来简化记住密码的操作,但黑客对此很清楚。 因此,人们通常将4表示A,将8表示B,或将3表示E。有时,字母A替换为@符号,字母b替换为数字6,因为它看起来像。 因此,在此块中,您可以配置此类对应关系。

我也知道大学密码要求使用大写字母,并且由于我的词典仅包含小写字母,因此我使用下面的菜单来更改密码选择过程,并修改将发送给此黑客工具的单词键。 我还注意到您可以使用专有名称。 由于这台计算机属于科学家,因此她可能喜欢使用标点符号,我提供了这样一个选项,并用一个下拉菜单对其进行标记。

最后要做的是转到“选项”选项卡,然后输入我们要破解的站点的地址,因此我在此处输入授权页面的地址。

最后,我需要使用一个工具来告诉我密码是否正确,因此我在字符串中输入Login Error参数,以便在尝试登录时该短语在屏幕上的出现显示错误。



现在,我可以开始攻击了。 我注意到作为Loveland博士的多年合伙人并不太赚钱,因此我无法购买Burp Suite的专业版,而我利用了免费版,该版由屏幕上显示的窗口报告。 因此,在“入侵者”窗口中,您将了解黑客程序的进行方式,并将各种字母和符号替换为经过尝试和测试的密码变体。



通常在这个时候,我第二天去喝咖啡,甚至第二天回到电脑前,因为这是一个相当缓慢的过程-如您所见,他从字母表的第一个字母开始。 但是,我们很幸运-您看到结果的第七行。



Loveland博士选择使用字符和字母作为密码A @ rdv @ rk,这样该密码与大学要求完全一致,并且在Dictionary Attack中很容易猜到。 因此,选择密码时应该非常非常小心。
因此,我请洛夫兰德博士发言,但是请注意,现在我知道您的密码,可以随时代表您访问该网站(删除黑帽)。

苏珊·洛夫兰(Susan Loveland):谢谢,夏娃。 我想问观众:密码破解攻击有多普遍? 答案非常非常普遍! 根据专家的说法,大约70%的站点具有授权系统漏洞。 这意味着应用程序开发人员在登录机制上犯了一些错误,这有助于黑客入侵网站。 但是在任何情况下,词典攻击攻击在黑客中都非常受欢迎,去年1月5日,这种黑客方法被用于Twitter管理员帐户,该帐户允许黑客入侵33个非常著名的人(包括奥巴马)的帐户,并在他们的页面上发布黑客笑话。

我将向您介绍这样一个轶事:去年,当我为我的课程启动网络服务器时,那里只有四名学生,但是从理论上讲,这是一台非常非常重要的服务器,因此在启动之后的两周里,它遭受了类似“字典搜索”来自两个不同的来源。 因此,这些攻击非常非常普遍。

21:35分钟

亚当斯州立大学。 如何入侵网站。 第二部分


感谢您与我们在一起。 你喜欢我们的文章吗? 想看更多有趣的资料吗? 通过下订单或将其推荐给您的朋友来支持我们, 为我们为您发明的入门级服务器的独特模拟,为Habr用户提供30%的折扣: 关于VPS(KVM)E5-2650 v4(6核)的全部真相10GB DDR4 240GB SSD 1Gbps从$ 20还是如何划分服务器? (RAID1和RAID10提供选件,最多24个内核和最大40GB DDR4)。

VPS(KVM)E5-2650 v4(6核)10GB DDR4 240GB SSD 1Gbps直到春季免费,在支付半年费用时,您可以在此处订购。

戴尔R730xd便宜2倍?在荷兰和美国,我们有2台Intel Dodeca-Core Xeon E5-2650v4 128GB DDR4 6x480GB SSD 1Gbps 100电视(249美元起) 阅读有关如何构建基础架构大厦的信息。 使用价格为9000欧元的Dell R730xd E5-2650 v4服务器的上等课程?

Source: https://habr.com/ru/post/zh-CN438330/


All Articles