[首页]
[文章]
[教程]
首页
Web开发
Windows开发
编程语言
数据库技术
移动平台
系统服务
微信
设计
布布扣
其他
数据分析
首页
>
其他
> 详细
被小伙伴们蠢哭了的那些事儿:找回密码篇
时间:
2014-01-16 08:58:11
阅读:
572
评论:
0
收藏:
0
[点我收藏+]
郑昀 创建于2014-01-12;
最后更新于2014-01-13.
找回密码功能是漏洞传统重灾区,下面列出两个经典错误点,请引以为戒吧Web开发工程师们!
Web安全:
一)以为用户不会抓包不会看源码不会分析表单参数,HTML文档和表单里想写啥就写啥
1)某手网:
+手机App的忘记密码功能:
首先,通过抓包分析,发现密码重置接口可以Web访问;其次,填入手机号码提交,
服务器端的响应中居然包含
明文短信验证码
,虽然是在JavaScript中的注释里;
补充案例:绝非个案。如第三方支付平台支付通也干过,
http://www.wooyun.org/bugs/wooyun-2010-022378
;走秀网干过,
http://www.wooyun.org/bugs/wooyun-2012-05630
;
2)PPS:
+网页版忘记密码功能:
贴心地实现了“重新发送找回密码邮件”功能;但是,不幸地
在这个GET请求的URL里,
目标email参数是明文的
;从而可以将任意用户的密码重置邮件发给指定邮箱;
3)新网互联:
+网页版忘记密码功能:
页面虽然展示的是星号遮挡的邮箱地址,但
HTML文档构造的
表单参数里却使用
邮箱明文
,最终导致土豆网域名被劫持;
4)搜狐:
+网页版找回密码功能:
找回密码时要回答“密码提示问题”;但是工程师把
答案明文
写在 textarea 控件的JS校验函数里了
,导致可以重置任意搜狐用户密码;
二)把MD5(key)加密当成神器,殊不知在MD5爆破库面前等于说明文传递
1)奇虎360:
+网页版找回密码功能:
360的找回密码邮件里,重设密码地址格式为:http://i.360.cn/findpwd/setpwdfromemail?vc=
%一个MD5加密串%
&u=blabla%40gmail.com;
利用MD5爆破库逆向解密后发现,这个MD5加密串是一个类似于1339744000的数字,很像是UNIX时间戳
;
白帽子进一步验证后猜测,用户找回密码时,系统将此时的UNIX时间戳,与帐号绑定,记录在密码重置队列里,修改该用户的密码时会验证输入的vc参数;
看似合理,但360工程师忽略了一个细节:假如这个时间戳是新生成的,攻击者就能在一定时间段内进行暴力破解,给定任意邮箱,很快就能算出一个有效的重置密码链接;
2)某牛网:
+注册激活邮件功能:
注册某牛网后,系统发的注册邮件里,激活URL里id参数实际上是用户的userid,
str参数则是MD5(id)加密串
,如下图所示;
这样能注册任意邮箱并激活,或遍历所有整数id激活;
补充案例:绝非个案。中国邮政旗下某站点的找回密码也这么销魂过,
http://www.wooyun.org/bugs/wooyun-2013-039383
;
参考资源:
1,2011,陈皓,
你会做Web上的用户登录功能吗?
;
2,2013,乌云知识库,
密码找回功能可能存在的问题
;
3,2013,郑昀,
Web开发基本准则-55实录-Web访问安全
。
-over-
马年继续赠图几枚:
不要在地毯上刹车啊
让老板以为你在上班的神器:
http://targetkiller.net/hackertyper/index.html
通病啊通病:『据一位腾讯电商的前产品经理透露,腾讯电商的产品经理、工程师更执着于测试网购流程、响应速度等,希望能够减少步骤提升体验,却忽略了需要 更强大技术支持的供应链、物流等业务体系。』注意力过于集中于C而不是B和I——《腾讯电商门前摔了一跤:“QQ+”模式失效
http://t.cn/8FhPSQv
》
被小伙伴们蠢哭了的那些事儿:找回密码篇
原文:http://www.cnblogs.com/zhengyun_ustc/p/resetpwd.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年09月23日 (328)
2021年09月24日 (313)
2021年09月17日 (191)
2021年09月15日 (369)
2021年09月16日 (411)
2021年09月13日 (439)
2021年09月11日 (398)
2021年09月12日 (393)
2021年09月10日 (160)
2021年09月08日 (222)
最新文章
更多>
2021/09/28 scripts
2022-05-27
vue自定义全局指令v-emoji限制input输入表情和特殊字符
2022-05-27
9.26学习总结
2022-05-27
vim操作
2022-05-27
深入理解计算机基础 第三章
2022-05-27
C++ string 作为形参与引用传递(转)
2022-05-27
python 加解密
2022-05-27
JavaScript-对象数组里根据id获取name,对象可能有children属性
2022-05-27
SQL语句——保持现有内容在后面增加内容
2022-05-27
virsh命令文档
2022-05-27
教程昨日排行
更多>
1.
list.reverse()
2.
Django Admin 管理工具
3.
AppML 案例模型
4.
HTML 标签列表(功能排序)
5.
HTML 颜色名
6.
HTML 语言代码
7.
jQuery 事件
8.
jEasyUI 创建分割按钮
9.
jEasyUI 创建复杂布局
10.
jEasyUI 创建简单窗口
友情链接
汇智网
PHP教程
插件网
关于我们
-
联系我们
-
留言反馈
- 联系我们:wmxa8@hotmail.com
© 2014
bubuko.com
版权所有
打开技术之扣,分享程序人生!