密码找回功能可能存在的问题

瞌睡龙 2013-07-17 23:51:00

0x00 背景介绍


有人的地方就有江湖。

互联网中,有用户注册的地方,基本就会有密码找回的功能。

而密码找回功能里可能存在的漏洞,很多程序员都没有想到。

而这些漏洞往往可能产生非常大的危害,如用户账号被盗等。

并且这种漏洞在非常多的大互联网公司中都出现过。

0x01 检测方式及案例


乌云上搜索:密码找回,密码修改,密码重置关键字。

总结出以下7点,如有其它的还望提醒补充~!

大家在为公司项目做测试的时候可做参考。

找回密码存在缺陷的地方有几处:

1、密码找回的凭证太弱,如只需要填入一个四位或者六位的纯数字就可以重置密码,导致可以暴力破解。

案例:

WooYun: 当当网任意用户密码修改漏洞

还有一个做了限制但是被绕过的经典案例:

WooYun: 微信任意用户密码修改漏洞

限制了提交次数,但是存在逻辑问题,可以绕过,具体可以点击去看下。

2、密码找回凭证可从客户端直接获取。

密码找回凭证在客户端获取,在密码找回时注意抓包查看所有url返回响应等,看是否有最终的凭证出现,这样就可以绕过手机或者安全邮箱了。

WooYun: 走秀网秀团任意密码修改缺陷

3、密码找回凭证在页面中可以直接获取。

一个经典案例,找回密码的答案在网页的源代码中……

WooYun: sohu邮箱任意用户密码重置

4、密码找回凭证可以比较容易的猜出。

找回密码的关键凭证仅仅是时间戳的md5,被白帽子犀利的察觉到~,轻松找回任意账户密码。

WooYun: 奇虎360任意用户密码修改漏洞

5、密码找回凭证存并非只是与单个用户并绑定的问题。

找回密码凭证发到邮箱中,url中包含用户信息以及凭证,但是这个凭证可以重置任何用户。

WooYun: 身份通任意密码修改-泄漏大量公民信息

6、用户找回密码的邮箱地址或者手机号码被修改。

这个其实应该是绑定安全手机的逻辑问题,导致可以使任意用户帮上自己可控的安全手机,然后就可以重置任意人的手机号码了。

WooYun: 网易邮箱可直接修改其他用户密码

7、在最后提交修改的密码处的逻辑错误。

前面所有的逻辑都没有问题,那么是不是就没有问题了呢?

还有白帽子发现,在最后重置密码处跟随一个用户ID,改成其它用户的ID,即可把其它用户改成你刚刚修改的密码。

WooYun: 携程旅行网任意老板密码修改(庆在wooyun第100洞)

0x02 修复方案


找回密码凭证够复杂并且不可猜测,同时注意以上逻辑问题,不可存在越权,或者重要的凭证在不该出现的地方出现。

评论

园长 2013-07-18 10:08:43

哈哈,支持。

瞌睡龙 2013-07-18 10:24:15

少年 java[4] 该发来了哈哈哈~
让其他人浮躁的刷rank去吧……

命运 2013-07-18 11:47:22

= =说的真委婉

园长 2013-07-18 12:25:23

再补下SQLJ。

小仙仙 2013-07-18 14:07:36

嗯受教了,密码找回问题,很全面。

S

sdj 2013-07-18 15:13:06

学习了

P

pfdz 2013-07-18 15:16:41

这个总结的很好。。其实验证码绕过也可以发一篇类似的文章了。。

熊猫 2013-07-18 20:12:58

最爱!

T

test 2013-07-19 10:22:28

总结得不错

B

byr5ec 2013-07-19 21:19:15

第6个和第7个基本一样,没有对权限控制好,只要知道uid就可以对其进行越权操作。

瞌睡龙 2013-07-20 12:55:26

其实5、6、7都一样,都是越权。其实1、2、3、4都一样是凭证太弱被猜出或找到。其实1、2、3、4、5、6、7都一样都是密码找回功能有问题~

M

Mark0smith 2015-08-29 00:06:38

作者写的很好啊,感觉这一定会是个有趣的问题

路人甲 2015-10-13 23:56:43

曲朋

路人甲 2015-10-13 23:58:46

呵呵来学习了

情痴 2015-11-16 23:23:00

学习了,大牛辛苦了

路人甲 2015-12-04 18:01:19

lll

路人甲 2015-12-13 06:35:09

@园长

路人甲 2015-12-20 20:49:38

很好

路人甲 2016-04-08 14:13:21

很好

Y

yt. 2016-06-08 12:56:37

有收获

瞌睡龙

fighting……

twitter weibo github wechat

随机分类

网络协议 文章:18 篇
漏洞分析 文章:212 篇
逻辑漏洞 文章:15 篇
MongoDB安全 文章:3 篇
Python安全 文章:13 篇

扫码关注公众号

WeChat Offical Account QRCode

最新评论

Article_kelp

因为这里的静态目录访功能应该理解为绑定在static路径下的内置路由,你需要用s

N

Nas

师傅您好!_static_url_path那 flag在当前目录下 通过原型链污

Z

zhangy

你好,为什么我也是用windows2016和win10,但是流量是smb3,加密

K

k0uaz

foniw师傅提到的setfge当在类的字段名成是age时不会自动调用。因为获取

Yukong

🐮皮

目录