• 大哥带的XSS练习LEVE3


    0X01DOM-XSS进阶之inner显式输出

    首先我们先了解一下DOM型和和其他到底有什么区别

    dom就是一个树状的模型,你可以编写Javascript代码根据dom一层一层的节点,去遍历/获取/修改对应的节点,对象,值。了解了这么一个知识点,你就会发现,其实dom xss并不复杂,他也属于反射型xss的一种(domxss取决于输出位置,并不取决于输出环境,因此domxss既有可能是反射型的,也有可能是存储型的),简单去理解就是因为他输出点在DOM。dom - xss是通过url传入参数去控制触发的)分析完dom-xss之后,再说说存储型xss,其实也很好理解,存储型xss,自然就是存入了数据库,再取出来,导致的xss。3,)反射型xss实际上是包括了dom - xss了,关键点仍然是在通过url控制了页面的输出(dom-xss也类似,只因为输出地点不同而导致结果不一致)。

    DOM型XSS其实是一种特殊类型的反射型XSS,它是基于DOM文档对象模型的一种漏洞。

    在网站页面中有许多页面的元素,当页面到达浏览器时浏览器会为页面创建一个顶级的Document object文档对象,接着生成各个子文档对象,每个页面元素对应一个文档对象,每个文档对象包含属性、方法和事件。可以通过JS脚本对文档对象进行编辑从而修改页面的元素。也就是说,客户端的脚本程序可以通过DOM来动态修改页面内容,从客户端获取DOM中的数据并在本地执行。基于这个特性,就可以利用JS脚本来实现XSS漏洞的利用。

    可能触发DOM型XSS的属性

    document.referer属性

    window.name属性

    location属性

    innerHTML属性

    documen.write属性

    ······

    然后我们百度一下这个函数

    这意思是获取id=a的元素div的内容 这里内容是文本节点

    那我们输入的就将会取代xxx

    那我们如何在div标签中构造xss?

    这里很明显不能直接script>这种形式了  因为inner.HTML是不支持直接插入js标签的 这里我们可以通过其他的来试试 比如

    这里我们用img标签的onerror属性成功绕过

    0X02DOM-XSS进阶之jQuery显式输出

     我们来看看关键代码

    u003cimg src=1 onerror=alert(/zhong/)u003e

    做到这里我又开始不自信了 去百度了了一下xss攻击原理

    Xss(cross-site scripting)攻击指的是攻击者往Web页面里插入恶意html标签或者javascript代码,当用户浏览该页或者进行某些操作时,攻击者利用用户对原网站的信任,诱骗用户或浏览器执行一些不安全的操作或者向其它网站提交用户的私密信息。
    比如:攻击者在论坛中放一个看似安全的链接,骗取用户点击后,窃取cookie中的用户私密信息;或者攻击者在论坛中加一个恶意表单,当用户提交表单的时候,却把信息传送到攻击者的服务器中,而不是用户原本以为的信任站点。
    诸如此类,唯一能完全杜绝xss攻击的方法,就是禁用script,img等,显然这是不靠谱的,用户需要丰富的页面内容;当然我们可以用一些方法预防xss攻击,尽量减少xss造成的危害

    嗦嘎

    那么这里我们是通过img标签的onerror函数来执行我们的恶意代码的

    等以后我们学的多了 可能就会越来越了解XSS吧

    0X03DOM-XSS进阶之js隐式输出

    首先我们先来看看源码

    百度百度

    百度了一下午 现在是回来了 这个正则是表示从字符串第一个开始匹配 不包括第一个

    这个函数为结尾的正则表达式不包括结尾

    ([^&]*)

    这个的意思是匹配所有的值一直到结尾

    https://www.cnblogs.com/xinkun/p/8182803.html

    函数的介绍

    http://www.w3school.com.cn/jsref/jsref_unescape.asp

    意思是会对返回数组的第三个值进行unescape解码

    所以我们需要提交变了码的

    %3C%69%6D%67%20%73%72%63%3D%31%20%6F%6E%65%72%72%6F%72%3D%61%6C%65%72%74%28%31%29%3E

    0X04DOM-XSS进阶之iframe构造XSS

    看看源代码 这里的意思是提交一个值 并且过滤 一些字符 然后在把这个值放到iframe标签的src属性中去

    那我们去了解一波iframe元素里面可以插入那些语法

    百度由于同源限制所以不能访问

    那在这里我们怎么进行js语言插入????

    我们可以这样

    %6A%61%76%61%73%63%72%69%70%74%3A%61%6C%65%72%74%28%32%39%29

    进行攻击

  • 相关阅读:
    代理模式 值代理
    装饰者模式 检查装饰器循环
    装饰者模式 静态装饰组合
    装饰者模式 在依赖注入中体现
    代理模式 属性代理
    装饰器模式 动态组合装饰
    代理模式 请勿饮酒
    享元模式 文本编辑
    Mysql 字符串字段判断是否包含某个字符串的3种方法
    vuex存储保存数据、使用数据
  • 原文地址:https://www.cnblogs.com/-zhong/p/10974613.html
Copyright © 2020-2023  润新知