API接口安全运营研究(内附官方开发平台api接口接入方式)

摘  要

根据当前API技术发展的趋势,从实际应用中发生的安全事件出发,分析并讨论相关API安全运营问题。从风险角度阐述了API接口安全存在的问题,探讨了API检测技术在安全运营中起到的作用,同时针对API安全运营实践,提出了几个方面的设想以及能够带来的运营价值。

 0 1   

 背 景

近年来数据的价值逐渐凸显,数据应用场景不断拓展,数据交易持续增加。参与交易流通的数据类型从金融数据逐步扩展到医疗、交通、工业等多种类型的数据,数据需求方涉及公共服务、影视娱乐、交通、医疗、金融、广告营销等众多领域。然而,随着数据的集中汇聚及开放,数据共享面临着新的安全风险。相比传统的数据库层数据共享技术,当前大量数据通过各类API传输,传统的网络安全防护体系已经难以满足当前的数据安全保护需求,而针对API的安全防护和运营也引起了人们的高度关注。

 0 2   

API及其安全风险

2.1 API概述

在应用编程实践中,由于系统的复杂性,在设计阶段就将其划为较小的部分,不同部分之间的规范约定就是应用程序接口(Application Programming Interface,API)(官方api接口接入方式)。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展。一方通过API发送远程请求,无需了解对方内部系统的逻辑,即可访问对方开放的资源,实现数据和服务的互动。目前,API已成为数据传输共享的重要手段。

2.2 API面临的挑战

2.2.1 API安全事件频发

API的数量急剧增长,与之相关的安全风险也在同步增加。近年来基于API安全所引发的事件屡屡发生:2018年Facebook公布了通过数据共享API被大规模网络攻击事件的细节,此次事件造成了3 000万用户的账号信息被泄漏;2020年淘宝报警称有黑产通过mtop订单评价API绕过平台风控批量爬取加密数据,共计11.8亿条。由此可见,API已经成为影响企业数据安全的重要风险来源。

2.2.2 API安全风险挑战

从API自身特点来看,除了常见的传统Web攻击威胁外,API还面临着越权访问、数据暴露、凭证失陷等威胁。同时,这些威胁检测涉及到了API接口发现、参数检测、行为识别、访问控制等多个环节,任何环节的缺失或不足都会影响到整体防护效果。所以,保护API安全的难点有以下几点。

a)场景复杂,无法通用。API应用业务场景十分丰富。在不同的业务场景下,一些风险特征或模型很难通用;同时,企业内部混合着十几年前的应用系统和新上线的系统,系统的实现可能不一致,API存在多样化的复杂性。

b)缺乏指导,难分主次。API安全防护虽然一直在发展,但目前还是处于探索阶段,业界对如何解决API安全问题,还没有形成一个普遍认可的最佳实践,所以在落地API运营建设的时候容易缺乏指导,难分主次。

c)能力分散,无法闭环。即使在一些安全建设比较领先的行业,也大多存在能力分散、产品孤岛的问题,产品能力、工作流程之间没有很好地打通,同时缺少对漏洞和风险的生命周期管理,没有形成闭环,实际运营的效率比较低。

2.3 安全风险分析

原生API大多从易用性、便利性等角度进行设计,往往缺乏对自身威胁的防护。而在API的设计实现中,也存在多种原因造成API之间的安全问题。同时,敏感数据被封装在业务场景中,通过API进行交换,如果没有采用安全标记、多级授权、访问控制、安全审计等安全机制构建安全的交换空间,也难以确保数据的安全。

针对API的可利用性弱点、普遍性弱点、可检测性、技术影响、业务影响等方面,本文着重介绍其中影响较大的几个问题。

2.3.1 对象级授权失效

通常API采用令牌方式对用户请求进行鉴权,服务器会在用户登录之后生成一组不重复的字符作为令牌,在调用API时需要携带令牌由服务器进行校验。这种机制的失效通常会导致未经授权的信息泄露、篡改或破坏。对象级授权失效如图1所示。

图片

 图1 对象级授权失效

2.3.2 用户身份验证失效

如果身份认证机制出现问题,将使攻击者得以暂时甚至永久冒充其他用户身份,导致API的整体安全性降低。用户身份验证失效如图2所示。

图片

图2 用户身份验证失效

2.3.3 对象属性级授权失效

当允许用户通过API接口访问数据时,需要验证用户是否具备访问对象的特定属性访问权限,如果API接口上存在用户不应该读取或访问的属性,即使是不敏感的数据,被大量收集后,也会暴露个人隐私,造成数据的泄露。对象属性级授权失效如图3所示。

图片

  0 3   

API安全运营研究

3.1 API安全运营思路

API由于数量大、更新快且关联敏感数据和账号的变更,对其进行盘点和统计是后续安全防护的基础。但大部分企业并没有把API资产纳入到资产盘点的范畴,未做好全面的资产梳理工作,会导致混乱、复杂的API资产台账。如应用API域名、IP、端口、路径的复用或拆分使用,呈现千“业务”千“API”的局面。

很多无用API没有及时下线,形成了僵尸API,可能导致严重的安全风险。传统上安全部门对API的盘点是依赖于业务部门的上报,但由于统计不全或更新不及时等种种原因,API资产很难通过有限人力以静态的方法来完成持续有效的梳理。并且由于安全技术人员对业务鲜有了解,难以准确理解API的各类业务属性,无法建立起资产、告警、业务、业务人员的逐一对应视图,因此必须借助API检测技术对API台账进行梳理。

API检测是一种软件测试实践,通常采用主动扫描的方式,直接测试API的功能表现、可靠性、性能表现和安全性。API测试可以通过工具模拟请求的发送与接收,如Postman、JMeter等;或者代码模拟请求的发送与接收,如JAVA自带的Web、HttpClient等。除此之外,还有以流量监测为基础的API流量分析技术,可实现对API数据暴露面的治理和对数据攻击行为持续发现。

API的指数级应用使得API安全的条件变得异常严苛,也将企业推入了一个“高压”的局面,企业应该围绕闭环性、可持续性的API建设思路进行安全体系的设计和实施,基于均衡取舍研究的结果来定义系统安全设计元素,并且向系统安全设计元素分配安全机制,确定所期望的安全机制和实际有效的安全机制前端是否一致或相当,检验并最终确定设计元素和系统接口,制定安全规范等。

可以从以下几个方面开展API安全运营实践(见图4)。

 图4 API安全运营重点方向

a)全量API资产洞察。主动发现网站、小程序、APP等全量API资产,提供API类型、级别、形态、生命周期等全方位的API资产描述。从应用系统、数据标签组合、敏感等级、访问域、最近活跃时间、访问量等多种维度进行分析、筛选,形成重点API清单。

b)API暴露面管理。通过API数据暴露面管理、重点API清单筛选,辅助实现攻击面管理(ASM),完成泄露资产的发现及脆弱性检测。对接入侵&攻击模拟能力(BAS),评估企业安全技术措施的有效性,同时帮助渗透测试人员去更好更深度地渗透,持续加固API数据暴露面的管理。

c)API弱点全面评估。识别评估API脆弱性,包括接口权限类、数据暴露类、安全规范类、口令认证类、高危接口类等问题,能够覆盖OWASP API Top 10相关问题点,并满足主管部门及监管机构的合规要求。

d)API弱点确认与修复。对接企业的安全SOC平台,推动API的弱点修复流程;同时集成到企业现有的ITSM/SIEM工作流中,形成弱点/漏洞工单处理流程;也可以基于弱点的危害性和风险影响面,直接通过邮件、钉钉等IM软件推送给负责的业务部门去整改修复。在API弱点修复后,通过流量分析持续验证弱点是否完成修复,从而形成闭环。

e)API访问行为风险发现。由于在不同的业务场景下,一些风险特征或模型很难通用,因此在风险规则的基础上提出了新的解决思路:以接口为中心,针对业务安全场景,识别并刻画业务接口关键参数关系画像,从而能够以此画像为基线,发现接口的访问行为风险。能够识别的API新型攻击风险类型包括异常API请求/响应、异常访问行为模式、异常接口访问轨迹、异常数据调用行为等。

f)API风险研判与处置闭环。通过集成或对接威胁情报,实现可疑行为的进一步验证,通过旁路阻断、联动防护设备等方式完成验证后的风险处置。

g)事件溯源分析补漏。针对API的异常风险事件,通过下发溯源任务,主动进行关联事件的相关性检索分析,对数据行为进行精准审计并将结果汇总,便于及时补漏安全缺口。

h)异常行为持续分析。通过HTTP全流量日志存储检索与分析,对敏感API、人员账号、IP行为等要素进行组合检索,持续监测异常行为,将API安全运营做到更高的高度。

i)集中管理统一运营。通过威胁情报管理、暴露面治理、风险聚集性挖掘、异常行为审计分析等API运营手段,汇聚分析API风险并进行集中管理,打破孤岛效应,提升运营效率。

从企业视角来看,忽略API资产加剧了整个API风控运营体系的实施。建议企业结合自身的业务状况,打造API运营中心,以主动发现API资产、完成API接口资产清单为安全基建,逐步打造API弱点评估、风险监测、威胁拦截、异常行为审计、集中管理等能力,最终实现API安全运营闭环的落地。API风险运营流程如图5所示。

图片

图5 API风险运营流程

3.2 API安全运营价值

3.2.1 数据流动态势识别

可识别自定义的流入、流出应用系统的敏感数据(包括Web页面内和传输文件内的敏感数据)的种类和数量,记录存储访问系统传输敏感数据的详细信息,包括用户IP、姓名、部门、访问对象、访问时间以及访问内容等详情,构建应用系统的敏感数据流动地图,提供记录的多维度查询功能,可以快速、全面地知晓什么人在什么时间通过什么方式获取了什么敏感数据。

3.2.2 应用系统接口管理

针对每个业务系统,梳理其接口数量和情况,形成应用接口清单。从是否传输敏感数据、接口的活跃程度、上传/下载等方面将接口进行分类分级,检测接口存在的无鉴权访问、后门接口等暴露面,并进行分类汇总展示,实现暴露面可还原,帮助安全人员摸清接口的脆弱性,推动系统侧进行应用系统设计和运维方面的问题整改。

3.2.3 敏感数据风险预警

建立各类敏感数据风险监控指标,构建分析模型,对数据行为建立用户基线、接口基线、系统基线等,实时监控多个维度的运行状态,实时发现非正常时间访问、大量数据异常下载、敏感数据未脱敏、伪脱敏等各类异常行为,并及时告警,防止大规模的敏感数据泄露、窃取、滥用等风险。

3.2.4 数据泄露事件溯源

实现敏感数据流动地图的可视化展示,能够清晰地展示应用系统、接口等清单报表和运行安全性,自定义敏感数据标签和风险指标,详细记录日志并针对脆弱性、风险事件进行分类统计、分析和展示。在完整记录敏感数据流动、访问操作的基础上,做好数据内容、账号、接口等多维度的溯源,还原风险路径、评估影响面。

   0 4   

API安全运营总结

从长远来看,可以通过将本文的解决方案与用户现有的工作流程无缝集成以及与用户现有的平台/技术紧密融合,从而建立一个有效的闭环验证机制。同时,还可以利用API接口上下文画像,建立正常行为的基线,并检测异常和离群的风险,实现风险规则的自动调整,加强风险自动化运营能力。考虑到企业内部职责边界的情况,设计清晰的用户使用路径,使参数配置可视化并实现精细化运营。这些举措将提升API风险管控机制的建设与运营实践水平,真正实现API安全运营落地,为企业发展带来持续的收益和效益。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Day 4 C++

算术运算符重载 种类&#xff1a; - * / % #include <iostream>using namespace std;class Cacu {friend const Cacu operator(const Cacu &l,const Cacu &r);friend const Cacu operator-(const Cacu &l,const Cacu &r);friend const Cacu operator*…

mysql面试题32:MySQL数据库服务器性能分析的方法命令有哪些?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:MySQL数据库服务器性能分析的方法命令有哪些? MySQL数据库服务器性能分析的方法和命令有以下几种: EXPLAIN命令:用于分析查询语句的执行计划,…

PHP Discord获取频道消息功能实现

PHP Discord获取频道消息功能实现 1. 关注对应频道2. 添加机器人3. 配置机器人权限4. 使用 DiscordPHP 类库5. 代码示例 (Laravel 框架)6. 服务器部署 1. 关注对应频道 首先要创建自己的频道, 然后到对应的公告频道中关注这个频道(这时 Discord 会让你选择频道, 选择之前创建的…

数据治理的核心是什么?_光点科技

数据治理是当今数字化时代中企业管理的关键组成部分。在信息爆炸的时代&#xff0c;企业积累了大量的数据&#xff0c;这些数据不仅是企业宝贵的资产&#xff0c;也是推动业务决策和创新的重要驱动力。数据治理的核心在于建立有效的框架和流程&#xff0c;以确保数据的质量、安…

经典面试题第十更---instanceof与typeof

前言&#xff1a; &#x1f921; 作者简介&#xff1a;我是Morning&#xff0c;计算机的打工人&#xff0c;想要翻身做主人 &#x1f648; &#x1f648; &#x1f648; &#x1f3e0; 个人主页&#xff1a; Morning的主页 &#x1f4d5;系列专栏&#xff1a; 前端…

uniapp vue3 静态图片引入

方法一 从新定义路径 一定看好你图片的路径 代码 <template><div class"main">Main<img :src"getImg()" alt""></div> </template><!-- 方式一 // <script setup> // let imgName logo.png // cons…

深度学习DAY3:FFNNLM前馈神经网络语言模型

1 神经网络语言模型NNLM的提出 文章&#xff1a;自然语言处理中的语言模型预训练方法&#xff08;ELMo、GPT和BERT&#xff09; https://www.cnblogs.com/robert-dlut/p/9824346.html 语言模型不需要人工标注语料&#xff08;属于自监督模型&#xff09;&#xff0c;所以语言…

[架构之路-235]:目标系统 - 纵向分层 - 数据库 - 数据库系统基础与概述:数据库定义、核心概念、系统组成

目录 一、核心概念 1.1 什么是数据与信息 1.2 数据与数据库的关系 1.3 什么是数据库 1.4 数据库中的数据的特点 1.5 数据库与数据结构的关系 二、数据库系统 2.1 什么是数据库管理系统 2.2 什么是数据库系统 2.3 数据库相关的人员 2.4 数据库的主要功能 2.5 Excel表…

【计算机网络-自顶向下方法】应用层(SMTP、POP3、DNS)

目录 1. Electronic Mail电子邮件应用画像1.1 电子邮件系统1.2 邮件报文格式1.3 邮件访问 2. DNS&#xff08;Domain Name System&#xff09;2.1 DNS提供的服务2.2 DNS工作机理2.3 DNS资源记录2.4 DNS协议&#xff0c;报文2.5 小结 1. Electronic Mail 电子邮件应用画像 应用…

企业如何使用CRM客户管理系统全面了解客户

B2B业务由于决策链长&#xff0c;涉及的部门和人员多&#xff0c;购买周期短则2、3个月&#xff0c;长则一年半载的原因一直被大家痛呼难做。B2B业务要求企业去认识客户&#xff0c;更要深入地了解客户。基于这种需求&#xff0c;使用CRM客户管理系统是企业全面了解客户的重要手…

Zabbix第二部分:基于Proxy分布式部署实现Web监控和Zabbix HA集群的搭建

代理和高可用 一、基于zabbix-proxy的分布式监控1.1 分布式监控的作用1.2 数据流向1.3 构成组件 二、部署zabbix代理服务器Step1 前置准备Step2 设置 zabbix 的下载源&#xff0c;安装 zabbix-proxyStep3 部署数据库并将zabbix相关文件导入Step4 修改zabbix-proxy的配置文件&am…

【排序算法】选择排序

文章目录 一&#xff1a;基本介绍1.1 概念1.2 算法思想1.3 思路分析图1.4 思路分析1.5 总结1.5.1 选择排序一共有数组大小-1轮排序1.5.2 每一轮排序&#xff0c;又是一个循环&#xff0c;循环的规则如下&#xff08;在代码中实现&#xff09;&#xff1a; 二&#xff1a;代码实…

VueRouter与expres/koa中间件的关联

ueRouter: runQueue 路由守卫都是有三个参数to,from,next。其中next就是下方的fn执行时候传入的第二个参数(回调函数)&#xff0c;只有该回调执行后才会挨个遍历queue内的守卫。 中间件的作用 隔离基础设施与业务逻辑之间的细节。详细的内容位于《深入浅出Node.js》P210 另外一…

CSS设置鼠标样式和添加视频样式

鼠标的样式 <div style"cursor: default">默认鼠标的样式</div><div style"cursor: pointer">小手样式</div><div style"cursor: move">移动样式</div><div style"cursor: text">文本样式&…

Twitter优化秘籍:置顶、列表、受众增长

在 Twitter 上&#xff0c;将你的一条推送文置顶到个人数据顶部是提高可见性和吸引关注者的绝佳方式。无论你是个人用户还是企业&#xff0c;此功能都可以让你的重要信息常驻在众人眼前&#xff0c;即使你发布了新的推文。接下来&#xff0c;我们将分享一些优化建议&#xff0c…

防雷排插的防雷应用以及解决方案

防雷排插是一种能够有效防止雷电对电器设备造成损坏的电源插座。防雷排插的应用&#xff0c;原理和作用如下&#xff1a; 地凯科技防雷排插的应用&#xff1a;防雷排插主要用于保护电脑&#xff0c;电视&#xff0c;音响等电子设备免受雷击或者电网过压的影响。防雷排插通常有…

随着 ChatGPT 凭借 GPT-4V(ision) 获得关注,多模态 AI 不断发展

原创 | 文 BFT机器人 在不断努力让人工智能更像人类的过程中&#xff0c;OpenAI的GPT模型不断突破界限GPT-4现在能够接受文本和图像的提示。 生成式人工智能中的多模态表示模型根据输入生成文本、图像或音频等各种输出的能力。这些模型经过特定数据的训练&#xff0c;学习底层模…

学生台灯买什么样的好?双十一学生台灯推荐

不得不说光线会孩子的影响还是蛮大的&#xff0c;不仅会影响学习的效率&#xff0c;还会影响视力健康。很多家长认为孩子近视的主要原因是玩电子产品或者不良的坐姿、用眼习惯导致的&#xff0c;其实这些并不全是造成近视的因素&#xff0c;最主要的原因还是长时间的用眼导致的…

HTML5使用html2canvas转化为图片,然后再转为base64.

介绍 场景&#xff1a;今天同事提了个协助&#xff0c;将HTML5文件中的元素转为图片&#xff0c;并且最终转为base64格式传给后端。感觉还挺有意思就记录下。&#xff08;试例如下&#xff09; 步骤一&#xff1a;引入html2canvas 的js源码 html2canvas.min.js 下载地址 htt…

【密码学】Java实现DH函数时出现“Unsupported secret key algorithm: AES“错误

问题描述 jdk版本&#xff1a;8 使用DH和AES算法&#xff0c;实现密钥的交换和加密&#xff0c;测试时报错 java.security.NoSuchAlgorithmException: Unsupported secret key algorithm: AESat com.sun.crypto.provider.DHKeyAgreement.engineGenerateSecret(DHKeyAgreement…