最近我想去 www.qceit.org.cn 下载以前 Python 考级的证书,但我忘记了密码。于是我点了找回密码,按流程把账号 ID 填进去。
填完后,系统提示已经把密码发送到我账号绑定的手机号。我立刻意识到这不是一个普通的找回密码体验问题,而是一个很严重的安全信号。
我看到的三个问题
第一,手机收到的 SMS 确实是明文密码。这说明平台至少可以把用户原始密码取出来并发送出去。按照基本安全规范,网站不应该以可还原的形式保存用户密码,而应该保存经过哈希处理的结果,实际系统还应该使用加盐、慢哈希等更安全的做法。
第二,SMS 本身不是安全信道。短信可以被运营商、设备、恶意软件或其他中间环节影响。把一次性验证码放进短信里已经有风险,更不应该把用户的长期登录密码直接发过去。
第三,我又点了几下,界面上没有出现明显的短信发送速率限制。我没有继续做压力测试,因为那会变成不负责任的行为。但如果这个入口真的缺少限制,就可能被恶意调用,变成短信轰炸别人的工具。
安全不是炫技,安全首先是对用户负责。
我做了什么
我把观察到的问题整理成了一封投诉邮件,发给了平台公开的反馈邮箱。我希望他们至少把“发送原密码”改成“发送一次性重置链接或验证码”,并且给短信接口加上明确的频率限制。
我核实的背景
我最开始用 DeepSeek 查了一下中国电子学会的信息。为了避免只依赖 AI 总结,我又用官网资料重新核对了一遍:该学会成立于 1962 年,官网介绍其为全国性、学术性、非营利性社会组织;qceit.org.cn 是中国电子学会考评中心相关站点,官网页面中也能看到青少年软件编程等级考试与 Python 考试介绍。
这件事对我的提醒
这件事让我意识到,做产品不只是把功能做出来。一个看起来很正式的网站,也可能在最基础的账号安全上出问题。真正负责任的技术判断,应该能发现这些问题,并用合理、克制的方式反馈。
我不想把这件事写成“我发现了多厉害的漏洞”。对我来说,它更像一次提醒:技术服务的是具体的人。如果系统保存和传递用户密码的方式不安全,受影响的不是抽象的账号,而是每一个真实用户。