背景:当时我在做公司的网站支付接入,在调试支付宝WAP支付时,发现一些匪夷所思的事情:
1、我想要切换账号时退到需要输入登录信息时,原账号并没有退出,我按一下后退键又回来了;
2、我关闭浏览器也没有退出账号,整个调试过程有差不多一个星期只登录过一次,可以认为登录的账号是无法退出的,除非成功另外一个账号;

由此,我开始怀疑,支付宝WAP支付接口的Cookie有问题,应该是为了方便性设定存了很久时间。

于是我打开用Firebug的Cookie页面一探究竟,我对其中一条名为 ALIPAY_WAP_CASHIER_COOKIE 的Cookie产生的兴趣,就是下图红色箭头所指的那一条,这是一条64个只含大写字母和数字的字符串,有经验的人都会知道,这一般就是哈希算法产生的密文(可能是MD5、SHA等的组合吧);

我抱着试一试的心态,我在隔壁同事的电脑打开了支付宝的WAP支付页,然后把这条Cookie复制到了过去,奇迹果然产生了,我的账号直接在他那里登录成功了,不用输登录密码也不需要手机号码短信认证。就是下图这个样子。

到这里,能看到的隐患就是黑客通过把木马安装在店家的WIFI,用来窃取Cookie信息,把上述这个Cookie拿走,然后慢慢试错,直到把6位密码破解出来(6位密码可以算是弱口令了),如果采集的Cookie比较多,能暴力破解成功还是可以考虑的。

然而还有一种更恐怖的攻击方法,注意到这条Cookie是 64个只含大写字母和数字的字符串,也就基本可以断定这个是哈希算法加密的,而对于那些有丰富经验的黑客来说,简单哈希加密的密文跟明文没有太大区别,不信你可以看看 这个网站,两到三级的哈希加密基本都能被查出来,而这已经是公开的技术了,私密的民间高手技术有多高可以想象了吧。他们只需要用几个账号在支付宝网站生成几个这种Cookie,然后还原出加密方法。他们能做的有两件事:


1、使用大批量账号,可能达到数百万级别,自动生成Cookie然后伪造登录,暴力破解密码。虽然每个账号在三次试错机会中能撞对的概论很小很小,但他们可以延长试错时间,而且基数这么大,成功的机会还是很多的。

2、第二个利用方法虽然没有直接经济效益,但却可以让整个支付宝系统陷入瘫痪。因为支付宝密码输入错误超过3次就会账号被冻结,可以想象数千万甚至上亿的支付宝账号被冻结能给阿里带来多大的冲击吗?这种攻击最受益的应该是阿里的竞争对手们吧。

因为此危害十分大,因此我通过乌云报告给阿里巴巴,然而在经过了一个星期的漫长审核后,它给了这样一个答复

呵呵。。。

然而当我放完国庆长假回来,再次打开支付宝的WAP页,却发现这个Cookie漏洞被修复了,已经没有了几条可能有问题的Cookie!!!

乌云平台里的厂商规则里有这样一条严禁行为:“a)消极处理安全问题包括不负责任的评估安全问题的严重性和后果,忽略后又悄悄修复等”。因此我多次用邮件以及微博的方式同乌云沟通,要求严肃处理此事情,不要伤害小白帽(以后可能要成黑帽子了)的一片心思。然而并没有得到什么有实际意义的答复。

前段时间看的一篇文章《一个iOS漏洞值多少钱?》,里面有这样一句话“大多数白帽子对于苹果这种高冷的行为感到受伤,从高雪峰苦笑的脸上似乎也找到同样的答案。”。同样,我也对阿里巴巴以及乌云的这种行为感到受伤。

既然漏洞已经修复了,乌云不肯公开,我就在博客园里给大家摊开来说吧,仅以抛砖引玉,望各位前辈多多指教。

支付宝Cookie高危漏洞引发的思考的更多相关文章

  1. 一个由"2020年1月7日 京东出现的重大 Bug 漏洞"引起的思考...

    2020年1月7日,京东由于优惠券设置错误,导致大量产品以0元或者超低价成交,并且发货.网传小家电被薅24万件,损失损失金额高达7000多万.很多网友表示收到货了,在网上晒出到货截图.下面为购买截图: ...

  2. Spring之LoadTimeWeaver——一个需求引发的思考---转

    原文地址:http://www.myexception.cn/software-architecture-design/602651.html Spring之LoadTimeWeaver——一个需求引 ...

  3. 由SecureCRT引发的思考和学习

    由SecureCRT引发的思考和学习 http://mp.weixin.qq.com/s?__biz=MzAxOTAzMDEwMA==&mid=2652500597&idx=1& ...

  4. 解决一道leetcode算法题的曲折过程及引发的思考

    写在前面 本题实际解题过程是 从 40秒 --> 24秒 -->1.5秒 --> 715ms --> 320ms --> 48ms --> 36ms --> ...

  5. 黄聪:PHP 防护XSS,SQL,代码执行,文件包含等多种高危漏洞

    版本:v1.1更新时间:2013-05-25更新内容:优化性能功能说明: 可以有效防护XSS,sql注射,代码执行,文件包含等多种高危漏洞. 使用方法: 将waf.php传到要包含的文件的目录 在页面 ...

  6. Struts2 高危漏洞补丁版本为: Struts 2.3.15.1

    Struts2 昨天爆出高危漏洞,黑客利用这个漏洞可以执行任意命令(包括恶意的jsp代码),轻松绕过您的验证系统,登陆您的网站后台,使您的网站后台密码形同虚设!! 目前Struts2官方已经发布了一个 ...

  7. OpenSSL再爆多处高危漏洞

    OpenSSL团队于北京时间6月5号晚8点左右发布了5个安全补丁,这次的更新涉及多处高危漏洞,连接:http://www.openssl.org/news/ 受影响的版本包括: OpenSSL 1.0 ...

  8. php检查漏洞防护补丁-防护XSS,SQL,文件包含等多种高危漏洞

    /** * 通用漏洞防护补丁 * 功能说明:防护XSS,SQL,代码执行,文件包含等多种高危漏洞 * Class CheckRequestServer */ class CheckRequestSer ...

  9. 【思考】由安装zabbix至排障php一系列引发的思考

    [思考]由安装zabbix至排障php一系列引发的思考 linux的知识点林立众多,很有可能你在排查一个故障的时候就得用到另一门技术的知识: 由于linux本身的应用依赖的库和其它环境环环相扣,但又没 ...

随机推荐

  1. python之装饰器

    一.简单装饰器: #定义装饰器函数 def W1(main_func): def outer(): print("before") main_func() print(" ...

  2. 烂泥:rsync配置文件详解

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 对于rsync服务器来说,最重要和复杂的就是它的配置了.rsync服务器的配置文件为/etc/rsyncd.conf,其控制认证.访问.日志记录等等. ...

  3. android Bitmap类方法属性 详细说明

    (转:http://blog.csdn.net/ymangu666/article/details/37729109) 1.  BitMap类public void recycle()——回收位图占用 ...

  4. PlaceHolder的两种实现方式

    placeholder属性是HTML5 中为input添加的.在input上提供一个占位符,文字形式展示输入字段预期值的提示信息(hint),该字段会在输入为空时显示. 如 <input typ ...

  5. Android,LIstView中的OnItemClick点击无效的解决办法

    在List_Item布局文件中的根节点加上如下背景标黄的这一行 <?xml version="1.0" encoding="utf-8"?> < ...

  6. 一个PHP混淆后门的分析

    洒家的朋友的公司的某个站发现最近被上传了一个后门程序.为了取证我们抓取了HTTP请求流量,看到了一堆莫名其妙看似经过混淆的请求,响应也是看似base64的乱码.洒家用了2个小时静态分析了一遍,并写了利 ...

  7. System V IPC(2)-信号量

    一.概述                                                    System V信号量与System V消息队列不同.它不是用来在进程间传递数据.它主要 ...

  8. 使用ZeroNet搭建P2P全球网站

    软件 ZeroNet是一个利用比特币加密和BT技术提供不受审查的网络与通信的BT平台,ZeroNet网络功能已经得到完整的种子的支持和加密连接,保证用户通信和文件共享的安全.使用ZeroNet,你可以 ...

  9. NOIP2013积木大赛

    题目描述 春春幼儿园举办了一年一度的“积木大赛”.今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是hi. 在搭建开始之前,没有任何积木(可以看成 ...

  10. java 解决中文乱码

    //1.代码解决 public class LuanMa { public static String getNewString(String luanma){ String result = &qu ...