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