短信邮件接口滥用防护
短信与邮件发送接口属于按次计费的资源,每调用一次都会真实产生费用或触达真实用户。若缺少前置防护,可被用于短信轰炸骚扰目标用户、刷掉账户余额,甚至在高峰时段把验证码通道打满、导致正常用户收不到码。防护必须落在三处:发送前的人机校验(图形验证码、滑块或行为验证)、按目标手机号与来源地址的频率限制、短信内容固定模板而不能注入自定义文本。此外还要有发送量与费用的监控告警。
基本信息
| 防护点 | 前置人机校验、按目标与来源的频控、内容模板固定 |
|---|---|
| 监控项 | 发送量突增、费用异常、同号重复发送模式 |
| 验证要求 | 仅用少量样本确认拦截存在与生效 |
| 常见入口 | 注册验证码、找回密码、通知提醒、管理侧群发 |
典型使用场景
- 注册与登录:验证码短信是最常被滥用的入口
- 找回密码:接口若只校验手机号存在性,可被用于探测账号
- 营销通知:活动短信接口若未限速,可被当作免费通道刷量
- 内部调用:其他系统调用同一发送接口,绕过前端校验
- 管理侧群发:后台批量发送功能权限过宽,误操作或越权即产生大额费用
检查要点
检查要点
1. 发送接口是否有前置校验:图形验证码、滑块、签名或风控令牌
2. 频控策略:按手机号、按来源地址、按账号的维度与阈值是否齐全
3. 短信内容是否为固定模板,是否允许外部传入自定义文本
4. 发送量与费用的监控告警是否配置,责任人是否明确
5. 是否存在内部调用与管理侧入口绕过前端校验 # 这是最常见的漏点防护点与缺失后果
| 防护点 | 缺失后果 | 验证方式 |
|---|---|---|
| 前置人机校验 | 自动化脚本可批量触发 | 查看接口是否要求校验票据 |
| 频率限制 | 单号被反复轰炸,余额被快速消耗 | 少量样本观察是否被拦 |
| 内容模板固定 | 通道被当作免费短信网关滥用 | 核对内容是否可完全自定义 |
| 监控告警 | 滥用已发生但无人知晓 | 检查告警规则与阈值 |
验证只允许少量样本,禁止批量触发;发现防护缺失先上报,再评估验证深度,避免为证明问题而造成骚扰。