无论网站,还是App目前基本都是基于api接口模式的开发,那么api的安全就尤为重要了。目前攻击最常见的就是“短信轰炸机”,由于短信接口验证是App,网站检验用户手机号最真实的途径,使用短信验证码在提供便利的同时,也成了呗恶意攻击的对象,那么如何才能防止被恶意调用呢?

1.图形验证码:

将图形校验码和手机验证码进行绑定,在用户输入手机号码以后,需要输入图形校验码成功后才可以触发短信验证,这样能比较有效的防止恶意攻击。目前大部分应用都是采用这种方式。

2.限定请求次数:

在服务器端限定同IP,同设备,同时间范围内的接口请求次数。比如同一号码重复发送的时间间隔,一般为60或120秒;设置每个IP每天最大的发送量;设置单个手机号每天的最大发送量。

3.流程条件限定:

将手机短信验证放在最后进行,比如需要用户必须注册后,或者用不必须填写了某些条件才能进行短信验证。

4.归属地是否一致:

服务器端检查用户的IP所在地与手机号归属地是否匹配,如果不匹配则提示用户手动操作等。

5.服务器接口验证:

当用户登录成功后,返回一个由Token签名生成的秘钥信息(Token可使用base64编码和md5加密,可以放在请求的Header中),然后对每次后续请求进行Token的封装生成,服务器端在验证是否一致来判断请求是否通过。

(1)常规的方法:用户登陆后生成token,返回客户端,然后服务器使用AOP拦截controller方法,校验token的有效性,每次token是一样的;
(2)用户登陆后生成临时token,存到服务器,并返回客户端,客户端下次请求时把此token传到服务器,验证token是否有效,有效就登陆成功,并生成新的token返回给客户端,让客户端在下一次请求的时候再传回进行判断,如此重复。 这种方法有性能问题,但也有一个漏洞,如果用户在一次请求后,还未进行下一次请求就已被黑客拦截到登录信息并进行假冒登录,他一样可以登录成功并使用户强制下线,但这种方法已大大减少被假冒登录的机会。
(3)两层token:一般第一次用账号密码登录服务器会返回两个token,时效长短不一样,短的时效过了之后,发送时效长的token重新获取一个短时效,如果都过期,那么就需要重新登录了。当然更复杂你还可以做三层token,按照业务分不同token。

6.采用https:

线上的api接口开启https访问,这样做的话别人抓包的难度会提高很多,而且https需要秘钥交换,可以在一定程度上鉴别是否伪造IP。

7.服务器端代理请求:

针对于网站,这也是解决跨域的方案之一,采用服务器代理可以有效的防止接口真实地址的暴露。

8.其它:

当接口存在大量肉鸡攻击的时候,攻击者也同样容易暴露意图,我们可以通过系统分析算法,让攻击者获取不到有效数据,提高攻击成本。

总结:

安全问题一直都是与攻击者之间智斗勇的问题,没有一劳永逸的解决方法,只有不断交锋,不断成长

网站接口被恶意攻击怎么办相关推荐

  1. 网站被同行恶意攻击了打不开怎么办

    在网络中有善意的人群,也有黑暗的人群,地球分黑白.人类分男女.动物分雌雄.这个是相对论.也是的的确确存在的,如果你的网站做的非常好,一定会触犯别人的利益,别人也就会用一些手段打压你.这是网站做大后每一 ...

  2. 如何防止验证码接口被恶意攻击

    关键词:短信轰炸机 短信接口验证码是网站.App校验用户手机号码真实性的首要途径,在为网站及APP提供便利的同时,手机短信验证功能也会被部分用户和短信轰炸机进行恶意利用.如何才能防止被恶意点击呢?如果 ...

  3. 网站被同行恶意攻击了怎么办

    在网络中有善意的人群,也有黑暗的人群,地球分黑白.人类分男女.动物分雌雄.这个是相对论.也是的的确确存在的,如果你的网站做的非常好,一定会触犯别人的利益,别人也就会用一些手段打压你.这是网站做大后每一 ...

  4. 如果网站被同行恶意攻击了怎么办

    在网络中有善意的人群,也有黑暗的人群,地球分黑白.人类分男女.动物分雌雄.这个是相对论.也是的的确确存在的,如果你的网站做的非常好,一定会触犯别人的利益,别人也就会用一些手段打压你.这是网站做大后每一 ...

  5. 如果网站被同行恶意攻击了怎么办?

    在网络中有善意的人群,也有黑暗的人群,地球分黑白.人类分男女.动物分雌雄.这个是相对论.也是的的确确存在的,如果你的网站做的非常好,一定会触犯别人的利益,别人也就会用一些手段打压你.这是网站做大后每一 ...

  6. 防止短信接口验证码恶意攻击

    一.易遭恶意使用的场景或网站 (1)网络在线投票站(需要填写手机号码进行校验) (2)用户在线注册页面(包含手机短信验证功能) (3)手机短信动态密码登录 二,用户恶意点击手机短信验证码主要有两种途径 ...

  7. 短信业务 防恶意攻击解决方案

    一.方案概述 短信验证码接口被恶意攻击,不仅会会造成大额的短信服务费用,更会对用户造成骚扰,引起投诉,降低公司形象. 二.系统涉及短信业务场景 略. 三.恶意攻击的途径 由于裸露短信发送接口的漏洞,恶 ...

  8. 常见的网站攻击以及如何防御自己的网站被恶意攻击

    常见的网站攻击 1,XSS攻击:Cross Site Script,跨站脚本攻击,指黑客通过篡改网页,在提交的内容中写一些恶意攻击的js脚本.举个例子,攻击者在网站留言或者发布带有恶意脚本的连接,诱导 ...

  9. 如何防止恶意攻击短信验证码接口

    如何防止恶意攻击短信验证码接口 1 自研技术 2 自研验证码被破解怎么办? 3 所有图形验证码都被破解怎么办? 1 自研技术 1.手机号码限制:限制单个手机号码每天的最大发送次数.超过次数不能发送短信 ...

  10. java防止注册刷短信攻击_java面试(1)如何防止恶意攻击短信验证码接口

    防止恶意攻击短信验证码接口方法 1.手机号码限制:限制单个手机号码每天的最大发送次数.超过次数不能发送短信,可以考虑将手机号码加入黑名单,禁止1天. 2.短信发送时间间隔限制:限制同一个手机号码重复发 ...

最新文章

  1. 初学api测试_面向初学者的API-在此免费视频课程中学习如何使用API
  2. oracle备份数据库视频,Oracle数据库还原
  3. Spring Cache抽象-基于XML的配置声明(基于EhCache的配置)
  4. Programming Computer Vision with Python (学习笔记五)
  5. Android --- AndroidManifest.xml文件内容详细介绍
  6. Qt学习之路(24): QPainter
  7. 乐观锁、悲观锁,这一篇就够了!
  8. 惊艳!Uber 的豪华开源深度学习“全家桶”
  9. 在linux下,为php增加mbstring扩展
  10. android手势_Android手势检测器
  11. this的作用(转)
  12. 【TWVRP】基于matlab遗传算法求解送货且带时间窗的车辆路径规划问题【含Matlab源码 1074期】
  13. Word:快速插入水平分隔线(转)
  14. WPF学习之绘图和动画--DarrenF
  15. 英文版-主我高举你的名-Lord I lift Your name on high-纯蓝歌词字幕
  16. HDU 2011 多项式求和
  17. 安装MySQL之步骤~
  18. 运维演进正确之道_API演进的正确方法
  19. ifconfig 下面的一些字段(errors, dropped, overruns)
  20. 大数据之Python数据分析 实训 信用卡客户风险评价之一、处理信用卡数据异常值

热门文章

  1. linux crontab零点,Linux中20个crontab例子
  2. 在项目中后端开发所需要掌握的前端知识
  3. python提取一句话中的数字_从Python的字符串列表中提取数字
  4. “函数...已有主体”问题解决
  5. 英语12个月份的英文和缩写
  6. python怎么爬取电影海报_Python3 爬取时光网电影海报和电影数据
  7. emlog海报生成插件
  8. 迪杰斯特拉(Dijkstra)算法详解,通俗易懂
  9. 中国无线VOC检测器行业市场供需与战略研究报告
  10. iOS 技术支持网址