道德黑客 – 跨站脚本
道德黑客 – 跨站脚本
跨站脚本 (XSS) 是一种代码注入攻击,允许攻击者在其他用户的浏览器中执行恶意 JavaScript。
攻击者不会直接针对他的受害者。相反,他利用受害者访问的网站中的漏洞,让该网站为他提供恶意 JavaScript。对于受害者的浏览器,恶意 JavaScript 似乎是网站的合法部分,因此该网站已成为攻击者的无意帮凶。这些攻击可以使用 HTML、JavaScript、VBScript、ActiveX、Flash 进行,但最常用的 XSS 是恶意 JavaScript。
这些攻击还可以从帐户劫持、更改用户设置、cookie 盗窃/中毒或虚假广告中收集数据并创建 DoS 攻击。
例子
让我们举一个例子来理解它是如何工作的。我们有一个易受攻击的网页,它是由元可利用机器获取的。现在我们将针对 XSS 测试以红色箭头突出显示的字段。
首先,我们制作一个简单的alert脚本
<script> alert(‘I am Vulnerable’) </script>
它将产生以下输出 –
XSS 攻击的类型
XSS 攻击通常分为三种类型 –
-
持久性 XSS,其中恶意字符串源自网站的数据库。
-
反射型 XSS,其中恶意字符串源自受害者的请求。
-
基于 DOM 的 XSS,其中漏洞存在于客户端代码而不是服务器端代码。
通常,跨站点脚本是由漏洞扫描器发现的,因此您不必通过在其上放置 JavaScript 来完成所有手动工作,例如
<script> alert('XSS') </script>
Burp Suite和acunetix被认为是最好的漏洞扫描器。
小建议
为了防止 XSS 攻击,请记住以下几点 –
-
检查并验证所有表单字段,如隐藏表单、标题、cookie、查询字符串。
-
实施严格的安全策略。在输入字段中设置字符限制。