原文地址: 州弟学安全
0x01 前言叙述
在信息收集过程中发现某行业百强企业网站存在了用户个人信息泄露的漏洞,数据量近百万,其数据中包括(姓名,手机号,家庭住址,身份证号,邮箱等信息)
* 本文涉及到相关漏洞已报送厂商并修复,本文仅限技术讨论和研究,严禁用于非法用途,否则产生后果自行承担
0x02 漏洞复现
在常规浏览某些功能点时,发现此网站商家页面会回显商家部分信息,如(发货地,手机号,姓名等)
根据个人经验,开始打点搜集JS文件,API接口等信息,不出意外的找到了一些API接口路径
使用脚本对API接口加部分参数重组进行遍历后,得到页面内显示信息和用户个人私密信息(姓名,手机号,家庭住址,注册时间,身份证号,用户ID等)
根据API接口特征,匹配所谓的ID号,可进行顺序匹配,得到最大值,判断出泄露用户信息近百万用户数据
0x03 修复建议
1. 最小化数据暴露:对于不必要的敏感信息,尽量避免在API中返回。只返回用户需要的最小信息集合,遵循数据隐私原则,例如仅提供用户基本信息而不包含敏感信息。
2. 接口鉴权与权限控制:确保API接口需要进行鉴权,并使用安全的身份验证和授权机制,例如使用API密钥、令牌或OAuth等来验证用户身份,限制对敏感信息的访问权限,防止未经授权的访问。
3. 分离用户ID和敏感信息:将用户ID与敏感信息存储在不同的服务器、数据库中,确保敏感信息存储在安全受控的环境中,设置访问控制和加密保护,限制直接通过用户ID获取敏感信息。
4. 数据脱敏与加密:对于必要存储的敏感信息,采用适当的脱敏和加密技术,确保数据在传输和存储过程中的安全性,例如使用对称加密或哈希算法对敏感信息进行加密,或者使用脱敏技术对数据进行处理,以减少敏感信息的泄露风险。
5. 安全审计与监控:建立日志记录和监控系统,实时跟踪和检测API访问行为,及时发现异常活动和潜在的攻击行为,并及时采取相应的应对措施,以保护用户的敏感信息安全。