XSS攻击

作者: baiying | 来源:发表于2017-08-17 15:34 被阅读148次

什么是XSS

XSS(Cross Site Scripting):跨站式脚本攻击,为防止和CSS混淆简称为XSS,简单来说就是攻击者在用户的浏览器张执行恶意脚本的脚本注入式攻击.对于用户浏览器来说并不能识别出恶意的脚本,当用户去访问该网站时恶意脚本被执行,便造成了许多安全问题.
看一个最简单的例子来理解XSS攻击
在页面上的输入框中进行如下操作

输入脚本

点击提交

并没有按照我们的预期将输入的内容显示,而是执行了脚本

XSS出现最主要的原因

Web应用未对用户提交请求的数据做充分的检查过滤,允许用户在提交的数据中掺入HTML代码(最主要的是“>”、“<”), 并将未经转义的恶意代码输出到第三方用户的浏览器解释执行,是导致XSS漏洞的产生原因。

XSS可能导致的安全性问题:

  • 泄露用户的账号,密码等隐私数据
  • 操作企业敏感数据
  • 非法转账
  • 挂入木马网站
  • 强制发送电子邮件
  • 操控用户又向其他网站发起攻击

XSS的分类

  • 反射型XSS

将脚本代码加入URL地址的请求参数里,请求参数进入程序后在页面直接输出,用户点击类似的恶意链接就可能受到攻击。

  • 存储型XSS

主要出现在让用户输入数据,供其他浏览此页的用户进行查看的地方,包括留言、评论、博客日志和各类表单等。
应用程序从数据库中查询数据,在页面中显示出来,攻击者在相关页面输入恶意的脚本数据后,用户浏览此类页面时就可能受到攻击。
这个流程简单可以描述为:恶意用户的Html输入Web程序->进入数据库->Web程序->用户浏览器。

预防XSS的七条原则

  • 原则1:不要在页面中插入任何不可信数据
  • 原则2:在将不可信数据插入到HTML标签之间时,对这些数据进行HTML Entity编码

有几个特别注意需要编码的

&     –>     &amp;
<     –>     &lt;
>     –>     &gt;
”     –>     &quot;
‘     –>     '
/     –>     /
  • 原则3:在将不可信数据插入到HTML属性里时,对这些数据进行HTML属性编码
  • 原则4:在将不可信数据插入到SCRIPT里时,对这些数据进行SCRIPT编码
  • 原则5:在将不可信数据插入到Style属性里时,对这些数据进行CSS编码
  • 原则6:在将不可信数据插入到HTML URL里时,对这些数据进行URL编码
  • 原则7:使用富文本时,使用XSS规则引擎进行编码过滤

相关文章

  • 第三章 XSS 攻击

    要点 XSS 攻击 XSS 防护 一、 XSS攻击 XSS攻击 (Cross-Site Scripting,跨站脚...

  • 跨站攻击脚本-XSS

    XSS: Cross Site Scripting XSS 概念 XSS 分类 反射型xss攻击图示 XSS 攻击...

  • 常见的WEB攻击

    XSS攻击,CSRF攻击,SQL注入攻击,文件上传漏洞,DDoS攻击,其他攻击手段 1.XSS攻击 XSS(Cro...

  • 前端攻击和防御(一)XSS跨站脚本攻击

    (一)XSS跨站脚本攻击 参考:XSS站脚本攻击 (1)XSS简介 XSS攻击全称跨站脚本攻击(Cross Sit...

  • Web安全

    XSS攻击 一、什么是XSS攻击 XSS攻击又称CSS,全称Cross Site Script (跨站脚本攻击)...

  • 2021-05-30 前端常见的攻击方式有哪些?如果解决?安全措

    XSS 攻击 什么是 XSS 攻击 XSS 即 Cross Site Scripting(跨站脚本攻击),指的是攻...

  • 前端防范xss攻击的实用方案

    一、xss攻击原理 大家想必都听过xss攻击,那么这个xss到底是如何攻击、我们又应该如何防范的呢? xss攻击主...

  • 开发安全问题

    1.XSS攻击 1.1什么是XSS攻击手段 XSS攻击使用Javascript脚本注入进行攻击 例如在提交表...

  • XSS攻击

    XSS攻击定义 XSS Cross Site Scripting 跨站脚本攻击 XSS攻击原理 它允许恶意web用...

  • XSS CSRF

    XSS攻击 什么是XSS攻击 XSS又称CSS,全称Cross SiteScript,跨站脚本攻击,是Web程序中...

网友评论

    本文标题:XSS攻击

    本文链接:https://www.haomeiwen.com/subject/zjngrxtx.html