源码下载
一、什么是API
API,全称Application Programming Interface,即应用程序编程接口。
API是一些预先定义函数,目的是用来提供应用程序与开发人员基于某软件或者某硬件得以访问一组例程的能力,并且无需访问源码或无需理解内部工作机制细节。
二、API安全 1.png
1、信息安全
对于网络安全来说包括两个方面
- 物理安全
- 指网络系统中各通信、计算机设备及相关设施等有形物品的保护,使他们不受到雨水淋湿等。
- 逻辑安全
- 包含信息完整性、保密性以及可用性等等。信息在创建、存储、转换到销毁的整个过程应该是安全的。
2、网络安全
网络安全是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行。
- 在网络上传输时确保信息不被拦截篡改,在未授权的情况下不能访问资源
3、应用安全
顾名思义就是保障应用程序使用过程和结果的安全
三、API安全的目标:CIA
- 机密性(Confientiality)。确保信息只被预期的用户访问
- 完整性(Integrity)。防止未授权的情况下创建,修改和删除
- 可用性(Availability)。当用户需要访问API时,API总是可用的
四、API存在的风险:STRIDE
- Spoofing:欺骗,伪装成某人。
- Tampering:干预。将不希望被修改的数据、消息或设置改掉
- Repudiation:否认。拒绝承认做过的事。
- Information disclosure:信息泄露。将你希望保密的信息披露出来。
- Denial of service:拒绝服务。防止用户访问信息和服务
- Elevation of privilege:越权。做了你不希望他能做的事。
五、安全机制规避风险
- 认证:(欺骗)。使用认证来确保登录或访问的用户是真正的它自己
- 授权:(信息泄露)/(干预)/(越权)确保每个针对API的访问都是经过授权的
- 审计:(否认)。确保所有的操作都被记录、以便追溯和监控
- 流控:(拒绝服务)。防止用户请求被淹没你的API
- 加密:(信息泄露)。确保出入API的数据是私密的
六、API裸奔 API裸奔.png
- 在没有任何安全机制下的API是非常危险的
网友评论