Ethical Hacking - 跨站脚本

跨站点脚本(XSS)是一种代码注入攻击,允许攻击者在其他用户的浏览器中执行恶意JavaScript.

攻击者不会直接攻击他的受害者.相反,他利用受害者访问的网站中的漏洞,以使网站为他提供恶意JavaScript.对于受害者的浏览器,恶意JavaScript似乎是该网站的合法部分,因此该网站充当了攻击者的无意帮凶.这些攻击可以使用HTML,JavaScript,VBScript,ActiveX,Flash进行,但最常用的XSS是恶意JavaScript.

这些攻击还可以从帐户劫持中收集数据,更改用户设置,cookie盗窃/中毒或虚假广告并创建DoS攻击.

示例

让我们举一个例子来了解它是如何工作的.我们有一个易受攻击的网页,我们通过 metasploitable 机器获得.现在我们将测试用红色箭头突出显示XSS的字段.

Metasploitable

首先,我们制作一个简单的警报脚本

 
< script> 
 alert('我很脆弱')
</script>

它将产生以下输出 :

简单警报

XSS攻击的类型

XSS攻击通常分为三种类型;

  • 持久性XSS,恶意字符串来自网站的数据库.

  • 反映XSS,恶意字符串来自受害者的请求.

  • 基于DOM的XSS ,漏洞位于客户端代码而不是服务器端代码中.

一般来说,交叉漏洞扫描程序可以找到站点脚本,这样您就不必通过在其上放置JavaScript来完成所有手动作业了

<script>  
   alert('XSS') 
</script>

Burp Suite acunetix 被认为是最好的漏洞扫描程序.

快速提示

为了防止XSS攻击,请记住以下几点并减去;

  • 检查并验证所有表单字段,如隐藏表单,标题,Cookie,查询字符串.

  • 实施严格的安全策略.在输入字段中设置字符限制.