API知识库 > 理念洞察 > 使用API会给企业带来哪些致命风险?
使用API会给企业带来哪些致命风险?

使用API会给企业带来哪些致命风险?

随着互联网时代的到来,企业组织管理由线下转到线上。其中以API使用最为常见,然而市面上大部分企业运用API时,往往会忽略API的安全问题,以至于API攻击逐渐演变成严重的安全问题。根据Traceable发布的《2023年API安全状况报告》,仅在2021年~2023年,英、美便有74%的企业遭遇过API攻击相关事件。

在事件发生后的完善修复环节,大部分企业更关注修复具体的问题,而非总结经验教训避免下次再发生。API的潜在风险指数加剧,人们的不了解、忽视等无异加大了风险,严重的甚至会导致企业数据库的安全信息崩盘,最终以企业商誉和诚信受到巨大打击为结局。

幂简集成梳理了以下企业在使用API时可能面临的致命风险。

1.  企业使用影子API、僵尸API,将漏洞暴露给犯罪分子

顾名思义,影子API、僵尸API指的是很少被使用的接口,它们被开发出来后,由于某种原因不再被维护,但依旧附着于程序运用的活跃端点。由于在短时间内很难看出问题,因此很容易被忽略。作为一种“技术债务”的存在,倘若遇上了沟通缺乏、技术监管不成熟的环境,极大可能会衍生出无数个影子同类端点。

以腾讯安全专家2023年为某家医院做的安全风险排查为例。排查结果显示,该医院专用的APP存在GraphQL接口,这是一款专用于API语言查询的接口,犯罪分子只需要在代码上创建使用类型,如“Type::int()(整数)”、“Type::string()(字符串)”;接着创建解析器,如$resolver函数,根据客户端发送来的请求反馈相关的数据,且反馈信息可以根据请求id参数精准调整。检查结果显示,该医院这一问题很有可能造成数百万病患的身份、就诊信息等敏感数据泄露。除此之外,大量的影子API还为犯罪分子提供登陆病患账号并实时修改的条件。

2.  未知API一旦公开暴露,对企业的应用系统安全构成威胁

在监控范围之外,且没有经过身份验证和授权的API被统称为“未知API”。这种API一旦暴露,意味着整个系统都被犯罪分子掌握手中,包括数据信息的保存、系统网站的搭建、运行程序的命令等。

以Apache Hadoop为例,这是一款数据处理网站,最初由Apache基金会开发,用户可利用分布式程序实现对数据的运算、储存等功能。此前该服务器直接开放了50070 web端口和部分默认的服务口,犯罪分子直接访问http://192.168.0.100:8088/cluster网站,在本机执行python exp.py后直接反弹shell即可。犯罪分子借此大量篡改数据信息,通过API还实现了目录浏览和命令执行等操作,最终以网站设置“安全组”访问控制权限、用户开启身份验证为结局。

3.  功能不足的API会严重影响企业日常使用进度

部分API在开发初期,由于代码设置问题,出现数据抓取、检测等功能不健全。如果企业对API技术缺少了解,在使用过程中就会出现密钥接口管理失误、无法实现统计分析、传递重复冗余请求等问题。以一家淘宝店为例,店主试图调用淘宝API得到商品的流量分析等数据,就要借助Python代码。功能不全的API无法独立完成URL请求功能,这就导致接下来的App Secret、请求参数等参数无法进行正常加密生成。可能出现2-3个API共同请求使用一个URL的情况。使用者设置API抓取流量过程中就会导致数据虚假、重复等情况。最终只能选择更换API来避免更大损失。

4.  通过API攻击物联网设备并对其进行操控

API在控制数据信息上发挥着巨大的作用,一旦里面出现漏洞,犯罪分子就可以借助API实时控制物联网(IoT)设备。犯罪分子攻击的方法很简单,便是通过欺骗用户访问攻击者设计的网站,并在用户网络中找到物联网设备。

以普林斯顿大学科技研究团队围绕“黑客如何攻击物联网设备”的课题实验为例。研究表明,使用者发现HTTP端点后,仅需要将设备连接到Raspberry Pi的无线接入断电后,利用API分析观察移动应用和设备间传输的数据包,并解析其中的GET、POST请求端点情况,便能找到设备具体的IP地址。值得一提的是,研究人员发现Safari和Edge浏览器能避免攻击脚本的识别功能,安全性极高。

一旦用户点开了犯罪分子编写的攻击代码(domain.tld),恶意脚本便能绕过浏览器安全防护,并获得物联网设备的Web应用的访问权限。犯罪分子也可以利用Web在物联网设备上执行重启、点击音视频文件等操作。

当然,用户想要避免该类案件最好的办法是不要点开未知的链接,同时也能在浏览器上设置WebRTC禁用选项,或者安装“dnsmasq”防止绑定DNS攻击。

5.  企业没有对API进行实时监控而导致数据大量受损

由于企业在线上运行程序管理时,对API监管不全面,造成部分关键API没有得到有效的监管手段和审计手段,犯罪分子试图对其进行攻击、窃取数据时,API不能及时发送提醒和警告信息。以Salt Security调查报告结果为例,12%的受访者存在每月遭受上百次API攻击的情况,而大部分被攻击的企业仅仅是继续使用传统安全管理工具,而忽略了运行过程中的API实施监管。传统API管理工具以Web应用程序防火墙(WAF)为主,然而犯罪分子只需要在Perl和PHP中使用字符串连接,通过字符串te、s和t运行string literal concatenation脚本,便可绕过Sucuri WAF。关键API如果没有进行实时监控的话,等到企业发现日志文件已经被解析重置时,往往犯罪分子已经完成了信息窃取了。

其实设置API监控很简单,开发者可选用监控工具,以fly coding为例,在记录“请求地址”,“配置服务编码”、“请求ip地址”、“用户代理信息”等数据的基础上,优化yml、PO定义等各项配置,输入“package com.flycoding.monitor.factory;”编码完成整个监控体系即可。

#你可能也喜欢这些API文章!