长亭百川云 - 文章详情

短信平台安全需求探索

天黑说嘿话

71

2024-07-13

      短信平台一般是指用于企业内部统一提供短信服务的系统,一般包含发送短信、校验短信验证码等功能。虽然短信平台看似功能简单,但由于目前短信功能使用非常普遍,业务场景丰富,因此它的安全性至关重要。由于工作需要,我最近整理了一份短信平台的安全需求,在此记录分享。

(一)、请求获取验证码功能接口                              

功能使用场景:一般由前置应用系统(渠道端)携带用户IP+用户手机号到短信平台接口获取验证码。

面临安全风险

功能安全需求设计

短信轰炸

1、限制单IP+单手机号单位时间内请求接口次数,超过限制封禁IP。

短信验证码可猜解

2、短信验证码内容不能为不安全的随机数(不要使用可预测的标识符和确认码组合)且符合强度要求(6位及以上)。

未授权手机号获取验证码

3、支持手机号黑白名单控制策略。

短信轰炸

4、短信获取接口支持防重放(在cookie中添加时间戳等方式)。

未授权应用获取验证码

5、短信获取接口支持认证校验。

短信验证码校验绕过

6、短信验证码内容不能直接通过接口返回前置应用,而是返回发送状态即可。

短信验证码内容篡改

7、短信验证码内容不能由前置应用系统传入,而是由短信平台后端定制模板与前置应用系统绑定。

绕过单手机号发送次数限制

8、对前置应用系统传入的手机号进行字符处理及格式校验,过滤非数字字符,并确保格式正确。

短信轰炸

9、单手机号请求短信验证码间隔限制(如60s),间隔内不允许再次请求验证码。

横向短信轰炸

10、针对不同前置应用系统设置单位时间内不同的请求次数阈值。(如高频率应用阈值高一些、低频率应用阈值低一些)

(二)****、请求校验验证码功能接口                                                              

功能使用场景:一般由前置应用系统(渠道端)携带用户IP+用户手机号+用户输入验证码到短信平台接口校验验证码。

面临安全风险

功能安全需求设计

短信验证码爆破

1、限制单IP+单手机号单位时间内验证码校验错误次数。

短信验证码爆破

2、短信验证码生效时间限制。

短信验证码复用

3、相同短信验证码不能用于不同动作(即用户每步操作使用单独验证码来确认,如注册、登录、转账等用不同的短信验证码)。

短信验证码爆破

4、短信校验接口支持防重放(在cookie中添加时间戳等方式)。

短信验证码未授权校验

5、短信校验接口支持认证校验。

短信验证码复用

6、短信验证码在验证通过后应立即重置、失效。

       以上安全需求并不完善,待后续探讨补充。需求中相关阈值仅供参考,具体数值要结合业务实际情况决定。另外在实际场景中,可以在前置应用系统中通过添加图片验证码等方式,防止使用自动化工具批量请求接口。

相关推荐
关注或联系我们
添加百川云公众号,移动管理云安全产品
咨询热线:
4000-327-707
百川公众号
百川公众号
百川云客服
百川云客服

Copyright ©2024 北京长亭科技有限公司
icon
京ICP备 2024055124号-2