API攻击是什么?如何做好防范

news2025/2/2 12:57:07

      API 攻击是针对应用程序接口的一种攻击手段,近年来逐渐成为网络安全领域的热点话题。攻击者主要针对应用程序接口中的漏洞或者错误进行API攻击,从而达到窃取敏感数据、进行恶意操作、破坏系统正常运行等恶意目的。

什么是API攻击?

API 攻击是指利用应用程序接口(API)中的漏洞或者错误,通过恶意请求或其他手段获取未授权的数据或对系统进行恶意操作。API攻击范围很广,包括Web API、REST API、SOAP API等,具有隐蔽性高、威胁性大等特点,攻击者可以利用API漏洞绕过防火墙、入侵检测系统等安全防护设备,从而对系统进行深入攻击。

以下是一些常见的 API 滥用案例,以及如何预防的建议。

 失效的对象级授权 (BOLA)

BOLA 指对对象访问请求的验证不充分,允许攻击者通过重用访问令牌来执行未经授权的操作。根据 OWASP 的 API 安全项目,BOLA 是当今最严重且最常见的 API 攻击,占所有 API 攻击的40%。

预防 BOLA 的建议:

  • 实施依赖于用户策略的授权机制,验证登录用户是否有权执行请求的操作。

  • 使用随机和不可预测的值作为记录 ID 的 GUID。

  • 编写评估授权的测试。

 分布式拒绝服务攻击 (DDoS)

DDoS 是一种常见的攻击类型,恶意攻击者通过故意使用来自多个设备和 IP 地址的大量机器人流量使 API 过载。对于企业而言,关键业务服务因此面临风险,例如登录服务、会话管理和其他为用户提供应用程序正常运行时间和可用性的服务。

执行 DDoS 活动的攻击者通常使用不对称技术,通过这种技术发送少量数据来生成 API 调用,这通常会导致服务器严重超载,因为他们必须使用大量数据来响应此类 API 调用。此类攻击会严重占用系统资源并大大增加系统所有用户的服务器响应时间。

企业可以采取以下措施来阻止 DDoS 攻击: 

  • 流量分析

  • 速率限制(例如,每个客户端/资源的请求数、请求负载大小)。

  • 自动缩放资源(确保为阈值报告打开警报)。

  • 使用德迅云安全高防服务器,SCDN,等高防产品,一键部署防护

 安全配置错误

应用程序中安全设置的不当配置可能会导致通过帐户接管(ATO) 的方式被利用和攻击。 

防止这种情况的几种方法是:

  • 盘点和管理所有 API,特别留意影子 API 和僵尸 API。

  • 扩大数据治理范围,从应用程序扩展到所涉及的 API 的数据。

 数据泄露

这种威胁通常被认为是通过开放的 API 意外泄露机密信息造成的。某旗下的移动支付服务。交易在设计上和默认情况下都是公开的。这种开放策略在 2019 年导致了严重的数据抓取问题,2 亿  用户的私人信息被抓取。此外,还发现了美国总统拜登的账户。 无论是有意还是无意的数据泄露,在被大量滥用时都可能引发国家安全问题。

缓解或消除数据泄露风险的两种方法是:

  • 在 API 而非客户端级别执行信息过滤

  • 避免在功能不需要时发送敏感信息

 API 注入

API 注入指恶意代码连同 API 请求被注入。注入的命令执行后,这种恶意代码(不仅仅是 SQLi)可以从服务器删除用户的整个站点。恶意攻击者通常以此来获取对私人数据的访问权限。

以下是一些避免注入的方法:

  • 参数化查询

  • 保证安全的上下文,可在时间线上查看所有 API 活动。

  • 用授权取代过时和不安全的认证方法。

  • 在服务器端添加输入验证机制

  • 避免执行特殊字符

  • 全面的日志记录、监控和警报

API安全的建设意见

面对高速迭代、隐秘多变的API攻击技术,企业在数字化转型的过程中,应在把握自身现状的基础上加强内部风险管理、做好 API 全生命周期安全管控、建立健全业务漏洞应急响应制度,从根本上提升数据安全及合规能力,有效形成数据信息保护的防御闭环。

1. API资产发现与管理

对API进行深度资产梳理,通过主动、被动等识别方式,建立API资产台账,帮助安全团队了解不同应用程序使用的API 的业务属性以及对应API的关联性。

2. API漏洞识别

建设持续挖掘、收集 API相关漏洞的能力和机制,并做好补丁管理,包括引入第三方组件时充分考虑组件自身安全,避免第三方组件引入安全漏洞。

3. 异常行为检测

关注API高频访问、异常数量级数据访问、异常时间访问等异常行为,建立全面可视化管理。

4. 敏感数据识别

数据分级分类治理,通过技术手段持续监测API访问数据,自动梳理API接口中的敏感数据流并生成API接口与敏感数据映射,确保个人隐私数据、商业数据以及其他敏感数据不被泄露。

5. 建立认证授权体系

构建完整的认证授权体系,实现认证授权统一,对API内外部访问执行可信认证策略。

6. 访问控制限制

对API 请求设置一套限制策略,从系统的处理能力方面对 API请求做限流管控,缓解基于API的DDoS攻击,有效防止资源消耗在无意义或恶意的API请求上。

7. 使用高防产品

使用德迅云安全防护,一键解决攻击问题,无需额外部署,一键接入,全面防护。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1427595.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

window 安装 jenkins 编写脚本

set JAVA_HOMED:\RuanJianKaiFa\jdk\jdk11 set CLASSPATH.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOMe%\lib\tools.jar; set Path%JAVA_HOME%\bin; java -jar jenkins.war 下载jenkins.war包,编写一个txt文档,把脚本复制进去,修改文件后缀为.bat文件…

【MySQL】MySQL库

使用C/C语言链接MySQL 一、mysql connect二、mysql 接口介绍1. 初始化 mysql_init()2. 链接数据库 mysql_real_connect()3. 执行 mysql 命令 mysql_query()4. 获取执行结果 mysql_store_result()5. 释放空间5. 关闭 mysql 链接 mysql_close() 一、mysql connect 要使用C语言连…

【JavaEE进阶】 图书管理系统开发日记——贰

文章目录 🌲前言🎄设计数据库🍃引⼊MyBatis和MySQL驱动依赖🌳Model创建🎍约定前后端交互接口🍀服务器代码🚩控制层🚩业务层🚩数据层 🌴效果展示⭕总结 &#…

亚马逊速卖通shein测评补单,轻松获得高评店铺订单暴涨人气火爆

测评之所以被认为是最快速有效的推广方式,是因为它能够迅速影响多个关键因素。通过测评,您能够快速提升关键词的转化率,从而获得更好的搜索排名。优质的评价有助于增加产品的权重和转化率,进一步提升排名。同时,增加的…

whistle抓包时如何过滤掉无用的链接

whistle在抓包的时候经常会有一些图片等我们不需要的地址,过多时会影响到我们抓的接口的速度,如何能快速的过滤掉无用的链接呢 可以在setting下进行如下设置 Exclude Filter:排除筛选器,即勾选后会排除勾选框下的地址链接Includ…

重写Sylar基于协程的服务器(3、协程模块的设计)

重写Sylar基于协程的服务器(3、协程模块的设计) 重写Sylar基于协程的服务器系列: 重写Sylar基于协程的服务器(0、搭建开发环境以及项目框架 || 下载编译简化版Sylar) 重写Sylar基于协程的服务器(1、日志模…

千卡训练有效时间占比超过95%,蚂蚁集团AI Infra技术开源

近日,蚂蚁集团AI创新研发部门NextEvo全面开源AI Infra技术,可帮助大模型千卡训练有效时间占比超过95%,能实现训练时“自动驾驶”,这推动了AI研发效率。 (图:蚂蚁集团的自动化分布式深度学习系统DLRover现已…

7+双样本孟德尔随机化“得分神器”的双向孟德尔果然名不虚传

今天给同学们分享一篇生信文章“Bidirectional Mendelian randomization analysis of the genetic association between primary lung cancer and colorectal cancer”,这篇文章发表在J Transl Med期刊上,影响因子为7.4。 结果解读: MR分析结…

【开源】基于JAVA+Vue+SpringBoot的智慧家政系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统展示四、核心代码4.1 查询家政服务4.2 新增单条服务订单4.3 新增留言反馈4.4 小程序登录4.5 小程序数据展示 五、免责说明 一、摘要 1.1 项目介绍 基于微信小程序JAVAVueSpringBootMySQL的智慧家政系统&#xff0…

Jmeter学习系列之五:基础线程组(Thread Group)

前言 线程组是一系列线程的集合,每一个线程代表着一个正在使用应用程序的用户。在 jmeter 中,每个线程意味着模拟一个真实用户向服务器发起请求。 在 jmeter 中,线程组组件运行用户设置线程数量、初始化方式等等配置。 例如,如果你设置线程数为 100,那么 jmeter 将创建…

【前端模板】bootstrap5实现蓝色数码网站BigTech(电商适用,附带源码)

一、需求分析 数码电商网站是指专门销售数码产品的在线商城。它们提供了一个平台,供消费者浏览、选择和购买各种数码产品,如智能手机、电脑、相机、家电等。这些网站通常提供以下功能: 产品展示:数码电商网站展示各种数码产品的详…

现货白银交易k线图发生突破时如何入场?

在分析现货白银交易K线图的时候,我们经常会碰到突破这种行情。突破是一种强烈的具有指向性和预期性的行情,但同时它也是一个潜在交易风险较大的行情。碰到突破之后,现货白银投资者应该如何入场呢?下面我们就来讨论一下。 突破发生…

量化学习5(量化回测)

1 pandas计算策略评估指标 本章节介绍关于金融量化分析的一些基本概念,如年华收益率、基准年化收益率、最大回撤等。在严格的量化策略回测中,这些概念都是需要掌握并熟练使用的,这样能够全面的评估量化策略。市面上,很多策略回测…

C++游戏开发的优势

C作为一种高效的编程语言,在游戏开发领域有着独特的优势。通过充分利用C的特性,游戏开发人员可以实现更高的性能、可移植性和灵活性。下面简单的介绍C游戏开发的优势,并探讨它在游戏开发中的应用。 性能优势 游戏是对计算机系统资源要求很高…

深入理解指针(2)

⽬录 1. 字符指针变量 2. 数组指针变量 3. ⼆维数组传参的本质 4. 函数指针变量 5. 函数指针数组 6. 转移表 1. 字符指针变量 在指针的类型中我们知道有⼀种指针类型为字符指针 char* ; ⼀般使⽤: int main() {char ch w;char *pc &ch;*pc w;return 0; } 还有…

雨云游戏云VPS服务器用Linux搭建MCSM面板和Minecraft Mohist 1.20.2服务器教程,我的世界MOD和插件服开服教程。

雨云游戏云VPS服务器用Linux搭建MCSM面板和Minecraft Mohist 1.20.2服务器教程,我的世界MOD和插件服开服教程。 本教程演示安装的MC服是Mohist 1.20.2版,其他版本也可以参考本教程,差别不大。 本教程使用Docker来运行mc服,可以方…

51单片机编程应用(C语言):模块化编程

下面我们模块化几个函数: Delay.c //延时子函数 void Delay(unsigned int xms) {unsigned char i, j;while(xms--){i 2;j 239;do{while (--j);} while (--i);} } Delay.h #ifndef __DELAY_H__ #define __DELAY_H__void Delay(unsigned int xms);#endifNixie.h …

ElasticSearch搜索与分析引擎-Linux离线环境安装教程

目录 一、下载安装包 网盘链接: 二、安装流程及遇到的问题和解决方案 (1)JDK安装 (2)Elasticsearch安装 (3)Kibana安装 ​(4)Ik分词器安装 三、启动过程中的问题 &#xff…

接口自动化处理动态参数

接口自动化处理动态参数 1、流程说明 某些接口的请求入参数据不能写死,需要动态传参。如用户注册接口,用户名需要动态生成。使用yaml编写测试数据时,在需要动态参数的数据后面添加上特殊字符${生成动态数据的方法名(参数&#x…

Find My点读笔|苹果Find My技术与点读笔结合,智能防丢,全球定位

点读笔是采用国际最新光学图像识别技术和先进的数码语音技术开发而成的新一代智能阅读和学习工具。它体现了电子产品与教育行业的完美融合,实现了科技以人为本的理念。点读笔能同时实现点读、复读、跟读、录音、娱乐等诸多功能。由于小孩贪玩很容易造成点读笔的丢失…