zoukankan      html  css  js  c++  java
  • 《白帽子讲web安全》学习笔记 (1)

    xss是什么?

    cross site script:跨站脚本攻击
     

     XSS的危害

    xss payload

    用以完成各种具体功能的恶意脚本
     

    cookie劫持

    拿到cookie就可以模拟登录
     

    构造get post请求

    可以是异步请求,img标签,或者iframe
     

    XSS钓鱼

    如模拟一个假的登录框,骗取用户登录。
     

    识别用户的浏览器

    用于做更精准的攻击
     

    识别用户安装的软件

         如检测ActiveX的classid是否存在
         flash中有一个system.capabilites对象,可以得到用户电脑的信息
         FF的插件信息,直接存在在dom对象中。可以轻松获得
     

    css history hack

    发现用户曾经访问过的网站 。
         原理:利用style的visited属性,如果用户曾经访问过某个链接,那么颜色会不一样。
     

    获取用户的真实IP地址

         有时得到的是出口IP,或者代理服务器的IP。
         可以通过Java Applet的接口获取客户端的IP

    XSS worm  蠕虫

    两个case: mystorm baidu
    都是通过在css里添加XSS实现。

    XSS的攻击技巧

    利用字符编码

         百度收藏的一个case
         var redirectUrl = "\";alert(/XSS/);";
         由于百度的页面是gbk编码,因些"%c1\"这两个字符组合在一起后,会成为一个unicode字符,在firefox下会认为这是一个字符,然后就把转义符号"\"给吃了。
         如发送如下请求
      就成功实施了xss攻击
     

    使用base标签

    window.name的妙用

    window.name是一个神奇的东西,没有行列字符的限制,window对象是浏览器的窗体,而并非document对象。因为,它不受同源策略的限制。

    apache head xss

    有一个Exprect,服务器会不经过任何处理,直接写入到页面中。这样就被正常解析了。同时也也要要求head需要模拟。变得很鸡肋。
    通过flash构造请求就很方便,不过目前flash已经修复,但是还是可以使用applet等第三方插件实现。 

    flash xss

    所以一般是要禁止<embed> <object>等标签。    

    XSS的防御

    HttpOnly

    浏览器将禁止页面的Javascript访问带有HttpOnly属性的cookie.
    可以只给某个cookie设置。

    输入检查

    白名单

    输出检查

    安全的函数

    要注意不同场景下
              HTML标签
              HTML属性下
              script标签
              事件中
              css中
              地址中
              innerHTML

    处理富文本

              使用htmlparse可以解析出html的
              1. 事件严格禁止
              2. 标签使用白名单
              3. 尽可能禁止自定义css 与style
     
     

    一个有意思的ie8的css跨域漏洞

     
     
    <body>
     
    {}body{font-family:
    aaaa
     
    </body>
     
     
    <style>
    @import url("http://www.a.com/test.html")
     
    <script>
     
    document.body.currentStyle.fontFamily  // 这里可以读到了。

     

  • 相关阅读:
    函数的扩展
    数组的扩展
    event(1)
    面试
    iframes
    浏览器CSS兼容
    BFC
    简单的一个轮播效果
    asp.net identity 2.2.0 在WebForm下的角色启用和基本使用(二)
    我的web框架设计
  • 原文地址:https://www.cnblogs.com/well1010/p/websave.html
Copyright © 2011-2022 走看看