题记
就在今早凌晨,我司官网发生小范围的用户账号被盗问题。经过技术排查,问题发生在用户找回登录密码这一步。为安全起见,技术同事临时关闭了找回密码功能。
来到公司之后,第一时间梳理了所有可能出现的问题,给出优化流程,协同技术和UI同事一起解决了该问题。
呜呼哀哉!何其幸哉!
解决过该问题之后,我有2个疑问:基于什么样的可能出现账号被盗?有没有好的优化方案。
一、为什么会在找回密码这一步被盗?
下图为我司原有的找回密码流程和页面。
作为一名技术爱好者,百度搜索了下原因,大多都说是在提交密码修改时被黑客抓包,修改了用户手机号,从而实现盗号。
二、解决方案
如果说上述理由成立的话,那么解决问题的本质方法应该是杜绝抓包。但是在和技术同事沟通后发现短时间内解决不现实,逻辑复杂,见效慢。
我个人是这么考虑的:
既然黑客是在提交userID和psw的时候抓包,那么其中的一个解决办法就是尽可能减少黑客抓包几率,即将原有路径3步迭代为1步。即下图所示:
三、尾记
总结来看,当前主流找回密码(或称忘记密码)大多有以下qinx:
1、借助第三方找回
包括手机、邮箱。
优点:方便快捷
缺点:极度依赖第三方账户,且存在被他人使用的风险。
2、借助已填写信息找回
常见方式有QQ密码找回,比如密保问题、好友认证和证件号码等
优点:随时可以操作,主观能动性强
缺点:存在忘记问题答案风险
3、人工方式
常见有联系客服、账号申诉
优点:安抚用户,获得心理安慰
缺点:费时耗力,只能作为一种辅助措施。
总之,今天这件事给我提了一个醒,提升用户体验的同时有一个前提:保障用户账户安全。
修改密码最重要的不是用户体验,而是逻辑健壮。
以上