美文网首页
白帽子讲Web安全——笔记(三 ) XSS

白帽子讲Web安全——笔记(三 ) XSS

作者: 小旎子_8327 | 来源:发表于2020-05-02 14:10 被阅读0次

    XSS跨站脚本攻击

    含义:

    通过HTML注入篡改网页,插入恶意脚本

    类型

    1. 反射型XSS
      把用户输入反射给浏览器(也叫非持久型XSS)
    2. 存储型XSS
      把用户输入的数据储存在服务器,具有很强稳定性
    3. DOM Based XSS
      从效果来说是反射型,但是形成原因比较特殊,被专门提出

    XSS攻击进阶

    XSS Payload

    含义:在所攻击的页面植入的脚本,称为XSS Payload
    用于:

    1. Cookie劫持
    2. 构造POST或者GET请求
      例如表单的自动提交,获取用户邮件列表等
      防止: 提交表单输入验证码, 修改密码输入old password
    3. XSS钓鱼:在页面画出伪造的登陆框,获取用户的用户名及密码
    4. 识别用户浏览器
      读取UserAgent对象,或者用脚本分析浏览器之间细微差异确认浏览器
    5. 识别用户安装的软件/插件:
      • 用户安装某软件,也默认安装某控件,判断该控件是否存在,可判断用户是否安装该软件
      • 一些第三方控件会泄露客户端电脑信息
    6. 通过CSS Payload获取用户的浏览信息
    7. 获取用户的真实ip地址

    XSS Worm

    1. Samy Worm
    2. 百度空间蠕虫

    XSS构造技巧

    1. 利用字符编码
    2. 绕过长度限制
    3. 使用<base>标签
    4. 通过window.name

    XSS防御

    1. HttpOnly:禁止页面JS访问cookie(Trace绕过cookie)
    2. 输入检查
    3. 输出检查
    • 安全编码函数(HtmlEncodes/JavascriptEncode/XMLEncode/JSONEncode)

    正确防御XSS

    场景

    1. 在HTML属性输出
    2. 在HTML标签输出 ——用HtmlE你code
    3. 在script标签输出
    4. 在事件中输出 ——用JavascriptEncode
    5. 在CSS中输出 ——用EncodeForCss
    6. 在地址中输出 ——URLEncode

    处理富文本 ——利用白名单允许标签

    防御DOM Based XSS

    相关文章

      网友评论

          本文标题:白帽子讲Web安全——笔记(三 ) XSS

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