Implementing a security mechanism on top of APIs requires clear understanding of the semantics of each API, to ensure that security entitlements are enforced consistently and completely across all APIs that could perform the same function for an attacker. Unfortunately, APIs are not designed to be "semantically orthogonal" and they often overlap, for example by offering different performance points for the same functionality. This leaves it to the security mechanism to discover and account for API proxies, i.e., groups of APIs which together approximate the functionality of some other API. Lacking a complete view of the structure of the API-proxy relationship, current security mechanisms address it in an ad-hoc and reactive manner, by updating the implementation when new API proxies are uncovered and abused by attackers. We analyze the problem of discovering API-proxy relationships and show that its complexity makes it NP-complete, which makes computing exact information about API proxies prohibitively expensive for modern API surfaces that consist of tens of thousands of APIs. We then propose a simple heuristic algorithm to approximate the same API-proxy information and argue that this overapproximation can be safely used for security purposes, with only the downside of some utility loss. We conclude with a number of open problems of both theoretical and practical interest and with potential directions towards new solutions for the API-proxy problem.


翻译:在API之上实现安全机制需要清晰理解每个API的语义,以确保对所有可能为攻击者提供相同功能的API,安全权限能够被一致且完整地执行。遗憾的是,API在设计上并非"语义正交",它们常常存在功能重叠,例如针对同一功能提供不同的性能表现。这使得安全机制必须发现并处理API代理问题,即一组共同近似实现某个其他API功能的API集合。由于缺乏对API代理关系结构的完整视图,当前安全机制通常以临时性和反应性的方式处理这一问题——仅在攻击者发现并滥用新的API代理时更新实现。我们对API代理关系的发现问题进行形式化分析,证明其复杂度为NP完全问题,这意味着对于包含数万个API的现代API接口而言,精确计算API代理信息的代价高得令人望而却步。为此,我们提出一种简单的启发式算法来近似获取相同的API代理信息,并论证这种过近似方法可安全用于安全防御目的,仅以部分功能损失为代价。最后,我们总结了若干兼具理论和实践意义的开放性问题,并探讨了解决API代理问题的潜在新方向。

0
下载
关闭预览

相关内容

应用程序接口(简称 API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。
百篇论文纵览大型语言模型最新研究进展
专知会员服务
70+阅读 · 2023年3月31日
Linux导论,Introduction to Linux,96页ppt
专知会员服务
82+阅读 · 2020年7月26日
强化学习最新教程,17页pdf
专知会员服务
182+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
【哈佛大学商学院课程Fall 2019】机器学习可解释性
专知会员服务
106+阅读 · 2019年10月9日
【SIGGRAPH2019】TensorFlow 2.0深度学习计算机图形学应用
专知会员服务
41+阅读 · 2019年10月9日
VCIP 2022 Call for Demos
CCF多媒体专委会
1+阅读 · 2022年6月6日
Hierarchically Structured Meta-learning
CreateAMind
27+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
强化学习的Unsupervised Meta-Learning
CreateAMind
18+阅读 · 2019年1月7日
Unsupervised Learning via Meta-Learning
CreateAMind
44+阅读 · 2019年1月3日
A Technical Overview of AI & ML in 2018 & Trends for 2019
待字闺中
18+阅读 · 2018年12月24日
强化学习族谱
CreateAMind
26+阅读 · 2017年8月2日
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Arxiv
19+阅读 · 2022年7月29日
Arxiv
20+阅读 · 2021年9月22日
Arxiv
66+阅读 · 2021年6月18日
CSKG: The CommonSense Knowledge Graph
Arxiv
18+阅读 · 2020年12月21日
VIP会员
最新内容
深入Project Maven:为何人工智能在战场上依然失灵
专知会员服务
4+阅读 · 今天15:21
锻造未来士兵:外骨骼、基因工程与赛博格
专知会员服务
0+阅读 · 今天15:12
《无人机蜂群通信技术研究》50页
专知会员服务
4+阅读 · 今天14:55
战力倍增器:自主武器系统与乌克兰及加沙冲突
人工智能赋能战场情报:提速决策进程
专知会员服务
3+阅读 · 7月17日
《拥抱新兴技术:面向未来军官的教育革新》
专知会员服务
7+阅读 · 7月17日
相关基金
国家自然科学基金
0+阅读 · 2014年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
1+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2011年12月31日
Top
微信扫码咨询专知VIP会员