《学习笔记3》——XSS攻防与防御措施

2021年4月23日 4点热度 0条评论 来源: Merrill He

关键字前瞻:

1.XSS:全称Cross Site Scripting(跨站脚本攻击),跨站脚本攻击是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该网页时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

1.XSS的分类

  • 反射型

含义:攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。

特点:<非持久化>,必须用户点击带有特定参数的连接才能引起。

影响范围:<小>,仅执行脚本的用户。

 

  • 存储型

含义:指应用程序通过Web请求获取不可信赖的数据,在未检验数据是否存在XSS代码的情况下,便将其存入数据库。当下一次从数据库中获取该数据时程序也未对其进行过滤,页面再次执行XSS代码,存储型XSS可以持续攻击用户。

特点:<持久化>

 

  • DOM-Based型

含义:本质是一种特殊类型的反射性XSS,通过JS操作DOM树动态地输出数据到页面,而不依赖于将数据提交到服务端,它是基于DOM文档对象模型的一种漏洞。

与反射型的不同点:反射型XSS是经过后端语言后,页面引用后端输出生效的。而DOMXSS是经过JS对DOM树直接操作后插入到页面。

 

2.XSS的危害

  • 盗取cookie
  • 盗取账户
  • 恶意软件下载
  • 键盘记录
  • 广告引流

​​​​​​​

3.防御方式

  • 为cookie设置http-only
  • 输入处理:对用户的输入进行合理的验证,对特殊字符(如<、>、'、"等)以及<script>、javascript等进行过滤。
  • 输出处理:对数据输出HTML上下文中不同位置进行恰当的输出编码。如:“ < ” 进行输出编码为 " &lt; " 等。
    原文作者:Merrill He
    原文地址: https://blog.csdn.net/weixin_53801131/article/details/116036592
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。