qq_43574603 2022-09-19 20:45 采纳率: 50%
浏览 77
已结题

为什么我这个xss不运行

我通过漏洞成功对一个网站注入了XSS,但是js代码块没能运行,注入成功后代码回显如下

img

我实际上是使用了上述alert代码代替了该用户名,在页面上的用户名部分,因为被我的代码代替变成了不显示,控制台里面的元素script的显示是蓝色的,但是进入页面的时候并没有被alert呼出的对话框。
我将控制台的 html代码复制了一份到新的文件里并吧后缀改成.html,然后吧文件拖入浏览器,此时却能正确的弹出alert的窗口。网上搜类似问题都说是<>等符号被转义了,但是我这个显然没有,标签的颜色都是蓝色的,说明标签应该是正常的才对。
我想要达到的结果是,我注入的js代码能正常运行,即可用弹出alert的窗口。我看了一下网站前端是使用vue写的。请问,怎么样能弹出窗口或者能给我解释一下为什么js代码块没能运行成功
  • 写回答

3条回答 默认 最新

  • CSDN专家-showbo 2022-09-19 21:22
    关注

    设置dom的innerHTML,里面的js代码并不会执行,虽然是蓝色的,vue的xss注入一般通过v-html绑定富文本,但是包含script不会执行
    改为dom事件,比如img的onerror事件来自动执行,示例如下

    <div id="app">
        <div v-html="msg"></div>
    </div>
    <script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>
    <script>
        var vue = new Vue({
            el: '#app',
            data: { msg: '<img onerror="alert(11)" src="xx">' }
        })
    </script>
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月27日
  • 已采纳回答 9月19日
  • 创建了问题 9月19日

悬赏问题

  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛