前言
不知你运营的网站是否遭受过短信攻击?通过调用公开的发送验证码接口,伪造手机号数据,不断的发送消息,这种攻击会对你的网站名誉有影响,严重情况下,会因为安全性问题造成不可估量的损失。
解决方案
通用的解决方案是根据ip地址,手机号进行消息限发,如一分钟最多发3个,1小时最多发8个,12小时,最多发15个等不同策略的限流措施。
实现
草图如下,需要先累积指定时间的发送次数,再根据限制规则来做判断。这里指明一点,关于前一秒如何计算问题,是当前请求的前一秒,前一分钟是当前请求的前一分钟,请求随时来,所以需要记录每一秒中的请求量。
短信限发图写到这里,我想到了听云的监控,可以实现最近30秒,最近5分钟,最近半小时,最近一小时的请求数据,而又不用加任何调用代码,真神奇,也希望有天我能实现这种不侵入,不引用式的代码。
不侵入的实现不了,但侵入式的总容易实现。
未完待续。
网友评论