瑞数信息《2023 API安全趋势报告》重磅发布: API攻击持续走高,Bots武器更聪明
如今API作为连接服务和传输数据的重要通道,已成为数字时代的新型基础设施,但随之而来的安全问题也日益凸显。为了让各个行业更好地应对API安全威胁挑战,瑞数信息作为国内首批具备“云原生API安全能力”认证的专业厂商,近年来持续输出API安全相关观点,为政企用户做好API安全防护提供参考指南。
今日,瑞数信息正式发布《2023 API安全趋势报告》(以下简称“报告”),从API威胁态势、攻击手段、API安全发展趋势等多个方面进行深度分析,剖析典型的API攻击案例,并结合API趋势提供了防护建议。
报告指出,随着API调用数量的增多和自动化工具的兴起,API攻击持续走高,API资产管理不当、自动化攻击、业务欺诈以及数据泄露等风险正在对企业的业务安全构成新的挑战。同时,在远程办公和企业应用向云端迁移的趋势下,API威胁越来复杂化。随着人工智能、机器学习等技术的发展,Bots自动化攻击手段越来越聪明,可以快速、准确地扫描API漏洞或对API发起攻击,对系统造成严重威胁。
一、API威胁态势分析
随着数字化技术的发展和Web API数量的爆发性增长,API面临的安全攻击比例已经超过传统的Web漏洞攻击。API和小程序逐渐成为了很多企业和组织的流量入口,引发的攻击越来越多,并且通过API接口攻击突破Web应用,作为跳板进入目标网络。
报告指出,越来越多的攻击者正利用API来实施自动化的“高效攻击”,由API漏洞利用的攻击或安全管理漏洞所引发的数据安全事件,严重损害了相关企业和用户权益,逐渐受到各方的关注。2022年检测到Web攻击中,针对API的攻击占比已经超过70%。
依据相关数据统计发现,2022年比2021年API攻击增加约60%。虽然2022年受疫情影响,多数单位居家办公,但是黑灰产的攻击行为并没有因此而停止,反而增多。
二、API安全防护难点
与传统的Web防护不同,API的安全防护要求更为全面,包括资产管理、缺陷识别、攻击检测、Bots检测、参数检测、行为识别、访问控制等多个环节,任何环节的缺失或不足都会影响到整体的防护效果:
01 多渠道多边界难以全面防护
访问入口的多样化,带来了业务应用部署边界的多样化,如:Web、APP、小程序、第三方平台等业务接入渠道,导致了脆弱点的暴露面扩大,增加了风险管控复杂性。因此,在同一防护体系内融合多业务接入渠道的防护是API防护的难点之一。
02 接口分散和传输格式多样性导致接口难以发现
全面准确的API接口发现是API防护工作的基础,对API接口进行自动识别、分类尤为重要。与传统Web应用可以依赖自身结构上的统一入口不同,API自身多以独立个体的方式分散存在,采用点对点的访问模式,难以通过接口之间的联系进行API发现。同时,传输数据格式的多样性(JSON、XML、GraphQL 等)也增加了API的识别难度。
03 业务紧耦合防护策略难以通用
API和业务是紧耦合的,针对API的防护策略往往也和业务相关,这就造成API防护策略在跨业务的情况下难以通用,而微服务架构和DevOps模式下应用快速迭代变化的特性也放大了这一难点,解决这一问题是API防护产品快速部署推广的一个难点。
04 合法授权下的滥用风险难以识别
目前API在授权之后的访问控制相对薄弱,海外安全机构Salt Security发布《State of API Security》中显示,95%的API攻击发生在身份验证之后。API防护需要重点关注这些合法授权下的攻击、滥用及数据过度暴露等风险。如何在已经取得合法授权的请求中识别出异常访问,是API防护需要解决的一个难题。
三、API攻击特点分析
在攻防对抗中,攻击方通常掌握着主动性,因此掌握攻击者的入侵方法和手段,发现信息系统的潜在脆弱性,以此作为防范依据会大大提升防范效果。面对越来越严峻的API安全威胁,报告从行业分布、缺陷分析、类型分析、API攻击手段等多个方面剖析了API攻击特点。
1 行业分布
不同行业应用、业务形态的差异导致了API使用情况各不相同,API请求访问流量占比最高的为互联网,其次为金融和运营商。
2 缺陷分析
在OWASP的参考中已经定义了多种API缺陷,但在用户生产环境中往往难以一一对应,为了更加直观的展示这些缺陷问题,瑞数信息对其进行了重新组合。最为广泛出现的 API 缺陷为过度数据暴露,其次是参数可遍历、 越权访问、参数可篡改、明文密码传输、接口误暴露等。
3 类型分析
不同的API功能类型,面临的攻击程度也不一样,尤其是适合Bots进行自动化攻击的接口,例如:公开数据查询、登录、下单等类型的接口最容易遭受攻击。
4 攻击手段
API作为应用与业务的结合体,面临着双重的攻击威胁,除了遭受着传统SQL注入、SSRF、恶意文件上传等攻击外,还面临着各种业务层面的攻击,例如:越权访问、信息遍历等。
四、API安全发展趋势及防护建议
随着API数量井喷式增长,API安全风险页进一步加剧。结合对API威胁态势和攻击特点等分析,报告预测了API安全发展四大趋势:Bots自动化攻击加剧API安全风险;API安全管理更加智能化;API安全成为云应用安全的重要组成;合规要求成为API安全的要素。
基于此,报告指出,在应对新型的API风险时,主要防护建设思路可以归结为**“一个基础,四个感知”。**
一个基础,即API资产管理是所有安全防护的基础,确保已上线的API全部都在管控范围之内,防止有漏网之鱼导致安全防线失效。
四个感知,包括:环境感知,加强对API的调用环境进行环境感知,提升API调用者的环境安全检测能力。风险感知,对API自身缺陷和外部攻击风险进行感知发现。数据感知,对敏感数据进行识别,同时结合行业的分类分级标准,进行相应的安全策略管控,全面提升敏感信息监测能力。业务感知,制定适合的API安全策略,提升业务感知能力。
五、结语
数字时代,API在为开发者带来诸多好处的同时,也极大的增加了应用系统新的风险。据Gartner预测,“到2022年,API滥用将成为导致企业Web应用程序数据泄露的最常见攻击媒介。到2024年,API滥用和相关数据泄露将几乎翻倍”。如何正确看待API安全风险并有效防护API安全,将成为所有企业的必修课。
相关文章:

瑞数信息《2023 API安全趋势报告》重磅发布: API攻击持续走高,Bots武器更聪明
如今API作为连接服务和传输数据的重要通道,已成为数字时代的新型基础设施,但随之而来的安全问题也日益凸显。为了让各个行业更好地应对API安全威胁挑战,瑞数信息作为国内首批具备“云原生API安全能力”认证的专业厂商,近年来持续输…...
HCIA静态路由与动态路由
目录 一、静态路由 定义: 适用环境 二、动态路由 定义: 特点: 动态路由协议: 三、缺点: 1)静态路由缺点: 2)动态路由的缺点: 四、静态路由与动态路由的区别 静态路由: 动态路由: 一、静态路…...

【前端 | CSS】flex布局
基本概念 Flexible模型,通常被称为 flexbox,是一种一维的布局模型。它给 flexbox 的子元素之间提供了强大的空间分布和对齐能力 我们说 flexbox 是一种一维的布局,是因为一个 flexbox 一次只能处理一个维度上的元素布局,一行或者…...
YoloV8优化:感受野注意力卷积运算(RFAConv),效果秒杀CBAM和CA等 | 即插即用系列
💡💡💡本文改进:感受野注意力卷积运算(RFAConv),解决卷积块注意力模块(CBAM)和协调注意力模块(CA)只关注空间特征,不能完全解决卷积核参数共享的问题 RFAConv| 亲测在多个数据集能够实现大幅涨点,有的数据集达到3个点以上 💡💡💡Yolov8魔术师,独家首…...

面对AI冲击,技术人才该如何考核?
一天下午,在与知名企业的技术交流会议室里,一位兄弟企业的CTO 小力苦笑着,分享了一个技术招聘的故事: “我们有个高级工程师,为了搞定MySQL三个表Join的问题,搞了一整天都研究不出来。结果他尝试将表结构扔…...

放弃51单片机,直接学习STM32开发可能会面临的问题
学习51单片机并非仅仅是为了学习51本身,而是通过它学习一种方法,即如何仅仅依靠Datasheet和例程来学习一种新的芯片。51单片机相对较简单,是这个过程中最容易上手的选择,而AVR单片机则更为复杂。虽然您已经学习了大约十天的51单片…...

windows安装git并初始化
git官网下载地址: https://git-scm.com/downloads 安装步骤,一直点击下一步即可 git初始化 1、用户签名 git config --global user.email 2734542837qq.com#设置全局用户邮箱git config --global user.name "zoujiahao"# 设置全局用户使用人…...
SpringBoot集成websocket(3)|(websocket调用websocket采用回调方式实现数据互传)
SpringBoot集成websocket(3)|(websocket调用websocket采用回调方式实现数据互传) 文章目录 SpringBoot集成websocket(3)|(websocket调用websocket采用回调方式实现数据互传)[TOC] 前…...

基于Doris实时数据开发的一些注意事项
300万字!全网最全大数据学习面试社区等你来! 最近Doris的发展大家是有目共睹的。例如冷热分离等新特性的持续增加。使得Doris在易用和成本上都有大幅提升。 基于Doris的一些存储实时数仓在越来越多的场景中开始有一些实践。大家也看到了这种方案频繁出现…...

竞赛项目 深度学习疲劳驾驶检测 opencv python
文章目录 0 前言1 课题背景2 实现目标3 当前市面上疲劳驾驶检测的方法4 相关数据集5 基于头部姿态的驾驶疲劳检测5.1 如何确定疲劳状态5.2 算法步骤5.3 打瞌睡判断 6 基于CNN与SVM的疲劳检测方法6.1 网络结构6.2 疲劳图像分类训练6.3 训练结果 7 最后 0 前言 🔥 优…...

20.4 HTML 表单
1. form表单 <form>标签: 用于创建一个表单, 通过表单, 用户可以向网站提交数据. 表单可以包含文本输入字段, 复选框, 单选按钮, 下拉列表, 提交按钮等等. 当用户提交表单时, 表单数据会发送到服务器进行处理.action属性: 应指向一个能够处理表单数据的服务器端脚本或UR…...

Linux——基础IO(1)
目录 0. 文件先前理解 1. C文件接口 1.1 写文件 1.2 读文件 1.3 输出信息到显示器 1.4 总结 and stdin & stdout & stderr 2. 系统调用文件I/O 2.1 系统接口使用示例 2.2 接口介绍 2.3 open函数返回值 3. 文件描述符fd及重定向 3.1 0 & 1 & 2 3.2…...

MFC第二十七天 通过动态链表实现游戏角色动态增加、WM_ERASEBKGND背景刷新的原理、RegisterClass注册窗口与框架程序开发
文章目录 通过动态链表实现游戏角色动态增加CMemoryDC.hCFlashDlg.hCFlashDlg.cpp WM_ERASEBKGND背景刷新的原理RegisterClass注册窗口与框架程序开发CFrameRegister 通过动态链表实现游戏角色动态增加 CMemoryDC.h #pragma once#include "resource.h"/*内存DC类简介…...
Debezium系列之:基于内容路由实现把数据库表中的数据按照数据类型分发到不同的topic
Debezium系列之:基于内容路由实现把数据库表中的数据按照数据类型分发到不同的topic 一、需求背景二、创建表三、插入、更新、删除数据四、核心参数和实现技术五、查看分发的Topic六、消费Topic数据七、总结和延展一、需求背景 一张表中存有各个超市门店的订单信息,例如超市门…...
苹果账号被禁用怎么办?
苹果账号被禁用怎么办? 转载:苹果账号被禁用怎么办? 当我们使用苹果手机登录App Store时,有时会遇到账号被禁用的提示。总结下来, 账号被禁用的原因可能有以下几种: 禁用的原因 1.在不同的设备上登录Ap…...
文章一:快速上手Git - 从零到一:Git版本控制入门指南
开始本篇文章之前先推荐一个好用的学习工具,AIRIght,借助于AI助手工具,学习事半功倍。欢迎访问:http://airight.fun/。 概述 在软件开发和团队协作中,版本控制是一项至关重要的技术。Git作为现代开发者最喜爱的版本控…...

【用unity实现100个游戏之6】制作一个战旗自走棋类游戏(附源码)
文章目录 前言导入素材开始1. 设置瓦片间隙2. 放置全图瓦片3. 美化瓦片地图4. 添加树木障碍物5. 设定不同的排序图层6. 瓦片交互6. 瓦片交互优化6. 瓦片是否允许角色7. 添加角色8. 新增游戏管理脚本9. 角色移动范围逻辑10. 角色移动范围可视化11. 角色移动12. 重置瓦片颜色12. …...

W5100S-EVB-PICO 做TCP Server进行回环测试(六)
前言 上一章我们用W5100S-EVB-PICO开发板做TCP 客户端连接服务器进行数据回环测试,那么本章将用开发板做TCP服务器来进行数据回环测试。 TCP是什么?什么是TCP Server?能干什么? TCP (Transmission Control Protocol) 是一种面向连…...

dinput8.dll导致游戏打不开的解决方法,快速修复dinput8.dll文件
当你尝试启动某个游戏时,如果遇到dinput8.dll文件缺失或损坏的错误提示,可能会导致游戏无法正常运行。dinput8.dll是DirectInput API的一部分,它提供了游戏手柄、键盘和鼠标等输入设备的支持。本文将详细介绍dinput8.dll的作用、导致游戏无法…...
NAS相关
Debian11 更换软件源 备份 #备份软件源列表 cp /etc/apt/sources.list /etc/apt/sources.list.bak编辑sources.list nano /etc/apt/sources.list替换文件内容 deb http://mirrors.163.com/debian/ bullseye main non-free contrib deb http://mirrors.163.com/debian/ bull…...

无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...

什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...

el-switch文字内置
el-switch文字内置 效果 vue <div style"color:#ffffff;font-size:14px;float:left;margin-bottom:5px;margin-right:5px;">自动加载</div> <el-switch v-model"value" active-color"#3E99FB" inactive-color"#DCDFE6"…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)
目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...

初学 pytest 记录
安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...

接口自动化测试:HttpRunner基础
相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具,支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议,涵盖接口测试、性能测试、数字体验监测等测试类型…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...