首页 > 其他分享 >接口安全处理

接口安全处理

时间:2024-08-12 17:17:41浏览次数:21  
标签:请求 登录 处理 用户 接口 安全 token 服务器

如何防止api接口被恶意调用或攻击

无论网站,还是App目前基本都是基于api接口模式的开发,那么api的安全就尤为重要了。目前攻击最常见的就是“短信轰炸机”,由于短信接口验证是App,网站检验用户手机号最真实的途径,使用短信验证码在提供便利的同时,也成了呗恶意攻击的对象,那么如何才能防止被恶意调用呢?
1.图形验证码:
  将图形校验码和手机验证码进行绑定,在用户输入手机号码以后,需要输入图形校验码成功后才可以触发短信验证,这样能比较有效的防止恶意攻击。目前大部分应用都是采用这种方式。
2.限定请求次数:
  在服务器端限定同IP,同设备,同时间范围内的接口请求次数。比如同一号码重复发送的时间间隔,一般为60或120秒;设置每个IP每天最大的发送量;设置单个手机号每每天的最大发送量。
3.流程条件限定:
  将手机短信验证放在最后进行,比如需要用户必须注册后,或者用不必须填写了某些条件才能进行短信验证。
4.归属地是否一致:
  服务器端检查用户的IP所在地与手机号归属地是否匹配,如果不匹配则提示用户手动操作等。
5.服务器接口验证:
  当用户登录成功后,返回一个由Token签名生成的秘钥信息(Token可使用base64编码和md5加密,可以放在请求的Header中),然后对每次后续请求进行Token的封装生 E成,服务器端在验证是否一致来判断请求是否通过。
  (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.其它:
  当接口存在大量肉鸡攻击的时候,攻击者也同样容易暴露意图,我们可以通过系统分析算法,让攻击者获取不到有效数据,提高攻击成本。
总结:
  安全问题一直都是与攻击者之间智斗勇的问题,没有一劳永逸的解决方法,只有不断交锋,不断成长

标签:请求,登录,处理,用户,接口,安全,token,服务器
From: https://www.cnblogs.com/sitting-on-the-clouds/p/18355380

相关文章

  • Redis与接口自动化
    1.Redis与接口自动化测试框架的集成使用Python操作Redis需要导入相应的客户端库,例如:pip install redisimportredis2.初始化Redis连接在接口自动化测试框架的初始化过程中,可以添加连接Redis的代码,确保测试过程中能够与Redis建立连接classTestFramework......
  • JAVA 两个类同时实现同一个接口的方法
    在Java中,两个类同时实现同一个接口是非常常见的。接口定义了一组方法,实现接口的类必须提供这些方法的具体实现。以下将展示如何实现这一要求,并提供具体的代码示例。示例接口首先,定义一个简单的接口,比如一个表示动物的接口,它有一个方法makeSound:publicinterfaceAnimal{......
  • 织梦服务器环境安全怎么设置
    现在的互联网环境越来越严峻,安全,一直是程序开发者及站长的一个不可忽视的问题,如何选择一个易用、安全的程序,如何搭建一个安全的服务器环境,一直是广大站长迫切希望了解的,本篇结合服务器及DedeCMS来进行一个安全使用的环境配置。1、目录权限我们不建议用户把栏目目录设置在根目录,......
  • 【图书阅读】人工智能数据与模型安全
    可信机器学习是机器学习的一个新兴的分支,旨在解决现有机器学习算法和模型的可信度问题。可解释性一般鲁棒性对抗鲁棒性(对抗性攻击和防御)数据中毒(数据中毒和防御)后门鲁棒性(后门攻击和防御)隐私(数据泄露和模型窃取)差分隐私联邦学习公平性数据篡改和伪造机器学习不同......
  • 开发效率翻倍攻略!大学生电脑小白管理秘籍,资料秒搜技巧大公开!C盘满了怎么办?如何快速安
    如何正确管理自己的第一台电脑?大一新生如何管理自己的电脑?老鸟如何追求快捷操作电脑?文章目录如何正确管理自己的第一台电脑?大一新生如何管理自己的电脑?老鸟如何追求快捷操作电脑?前言初级基础分区操作分区规律动态磁盘用户数据变更磁盘文件清理/C盘文件清理常见网络问题......
  • HCL学习——交换机端口安全技术
    本篇记录学习HCL的笔记。【2023年】H3CNE认证网络工程师完整培训视频教程_上https://www.bilibili.com/video/BV1Dg411i7yM?p=22&spm_id_from=pageDriver&vd_source=ecbebcd4db8fad7f74c518d13e78b165 802.1x技术 如果随便拿台pc插到交换机上岂不是就能接入本公司网络呢,80......
  • ROS 2 自定义接口(消息、服务和动作)
    ROS2自定义接口(消息、服务和动作)在ROS2中,自定义接口是构建复杂机器人系统的核心。自定义接口使开发者能够定义特定于应用的数据结构和通信模式,包括消息(Message)、服务(Service)和动作(Action)。本文将介绍如何在ROS2中创建和使用这些自定义接口。1.自定义消息(Message)......
  • 【IEEE出版,华中科技大学主办】2024年电气工程自动化与信息处理国际会议(EEAIP 2024,9月2
    2024年电气工程自动化与信息处理国际会议(EEAIP2024)作为第四届能源、动力与电气工程国际学术会议(EPEE2024)的分会场,将于2024年9月20-22日在中国武汉举行。本届主会(EPEE2024)由华中科技大学主办,同时有着良好的举办历史:EPEE2021由东北电力大学主办,EPEE2022由华东交通大学......
  • PHP身份证三要素核验接口集成-身份证三要素查询真伪-身份证三要素实名认证
    身份证三要素实名认证接口简介:身份证三要素实名认证是核验身份证号、姓名、证件头像是否一致,以此来验证身份证的真伪,现已被广泛应用于电商、银行、保险等各种需要对身份真伪进行核查的场景。身份证三要素实名认证接口核验返回参数说明如下:序号 名称 类型 说明1 user_check_res......