OSCP相关技术(备考中)
CISSP备考经验(已通过认证)
CCSK(云安全)(已通过认证)
ISO/IEC 27001 Foundation(已通过认证)
---------------------------------------------------------------
本文题干阅读时间推荐5min
----------------------------------------------------------------
如果各位童鞋想讨论以下相关内容,欢迎关注公众号, 联系我:
----------------------------------------------------------------
近期迷恋上所有的类“ChatGPT”,有事没事就喜欢问问
瞎扯的话题,他也能说一些貌似很官方的话题呢~!
一、背景概述:
短信作为一种快速高效的沟通工具,在我们的生活中扮演着重要的角色。然而,随着科技的进步,网络犯罪活动也越来越猖獗,我们的短信功能也变得更容易受到攻击。为了保护个人隐私和确保信息传输的安全性,我们需要采取各种安全措施。
在做了N多的安全测试,以及在短信策略等功能投下了大量的思考后,借此文章来一起聊聊一些重要的短信安全保护措施。
二、文章适用范围:
1、适用业务开发人员
2、使用业务风控人员
3、适合安全测试人员
三、业务场景分析:
身份验证和登录:许多应用程序和网站使用短信验证码来验证用户的身份或进行登录操作。用户输入手机号码后,系统会发送一条包含验证码的短信,用户需要输入正确的验证码才能完成身份验证或登录。
交易和支付确认:在进行在线交易或支付时,短信可以用来发送交易确认信息、支付成功通知或验证码,以确保交易的安全性和用户的确认。
账户变更和密码重置:当用户需要更改账户信息、重置密码或进行其他敏感操作时,系统可以通过短信发送确认链接或验证码,以确保用户的身份和操作的合法性。
营销和推广:企业可以利用短信向潜在客户或现有客户发送营销信息、促销活动、优惠券等,以促进销售和增加品牌曝光度。
通知和提醒:短信可以用于发送各种通知和提醒,如订单状态更新、物流信息、预约提醒、服务到期提醒等,以便用户及时了解相关信息。
客户服务和支持:企业可以利用短信提供客户服务支持,如回复客户咨询、提供技术支持、解决问题等,提高客户满意度。
四、验证码防护设计:
1、最原始方案:
用户输入手机号码:用户在需要进行身份验证的场景中,输入自己手机号码。
生成验证码:系统接收到用户输入的手机号码后,随机生成一个验证码。
发送验证码:系统通过短信服务将生成的验证码发送到用户输入手机号码上。
用户输入验证码:用户收到短信验证码后,将其输入到相应的验证界面中。
验证验证码:系统接收到用户输入验证码后,将其与之前生成的验证码比对。
完成验证:如果用户输入的验证码与系统生成的验证码匹配,验证通过,用户可以继续进行后续操作;如果验证码不匹配,则验证失败,用户可能需要重新输入或采取其他验证措施。
2、升级(PRO)方案:
发现问题:
在这个时候,会遇到很多短信为4位数的短信,
也有在安全测试过程中发现在response中也有返回包
短信设计:
短信长度:基本长度为6位以上的
短信内容:大部分都会变成符合长度的纯数字,也有一步到位的包含了字母的
短信有效性:大部分的短信验证码皆为一次性,且在5-20分钟内失效
3、再升级版本(plus)方案
发现问题:
在下一轮的测试中,涌现一大波不怀好意的请求,如:
1、对某个手机号进行发送多轮验证码,
2、对多个手机号进行发送多轮验证码。
核心目标:恶意消耗短信资源,如有资源耗尽不做验证的场景就更好了
为了对抗上述的这种情况,衍生一波“业务风控”的萌芽,但最初始的对抗还是基于策略级别的,比如以下这些点:
1、验证码短信发送限制
短信发送间隔设置:一般短信验证码的间隔时间为1-10分钟,可以避免恶意重复获取验证码,影响企业的正常运行,相当于给平台增加了一道防护墙。
2、关联IP服务
短信验证码的数量也会受到限制。一般来说,一天内同一个IP能获取的验证码是有次数限制的,超过次数后便无法获取。这样对用户而言会更安全,也避免了资源浪费。
3、图形验证码和短信验证码相结合
用户在输入手机号码后,需要输入图形验证码才能触发短信进行校验,非常有利于保护,能够比较有效的防止软件恶意注册。
采用图形验证码和短信验证码相结合的方式,更好地防止短信验证码接口被短信轰炸机攻击。
图形验证码从生成到使用过程都很安全,图片验证码是在服务器端进行产生与校验的,并且单次有效,以用户的验证请求为准;再加上验证码本身就具有很强的安全性,不易被识别工具识别,因此图形加验证码能够有效保护信息安全,防止暴力破解;
4、再再升级版本(pro max)方案
发现问题:
企业根据以上的实践部署后,发现,除了正常的安全漏洞绕过外,还是有一部分可以去发送短信,比如利用OCR识别等
再次对抗升级:
4.1、“在网上,没有人知道你是一条狗。来自于google的“是不是人”的判断
4.2、独树一帜的12306
4.3、百家风控的滑块/点/推理验证码技术
4.4、若干加密/加签校验能力
通过RSA或者AES这些加密,把{手机号|时间戳|.....}这些进行加密的作为前置校验的,能够起到一个防请求防重放,调用链相互验证的能力
好啦,今天的议题就这么愉快的结束咯,欢迎沟通交流哈
点赞&“在看”,年薪百万 =》
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...