2 2017 年十大安全风险
OWASP 前十个列表概览
列出的安全威胁可能是最严重的威胁,应用程序开发人员必须意识到并防范这些威胁。
有关详细信息,请参见以下主题:
- OWASP 主页:https://www.owasp.org/index.php/Main_Page
- OWASP 2017 年安全风险十大列表的一般说明:https://www.owasp.org/index.php/Top_10-2017_Top_10
- 安全风险概览:https://owasp.org/Top10/
父主题:2017 年十大安全风险
#1 - 注入
通过接口规范将数据发送到解释器且提交数据的交易方不检查数据以确保解释器仅对数据执行预期操作时,可能会出现注入漏洞。
SQL、Code、Command、Log、Path Transversal (XML) 是基于容器中使用的解释器的所有可能的注入类型。
有效内容类型
Oracle Clinical One Platform 套件是基于 JAX-RS 库构建并托管在 Oracle Life Sciences Cloud(也称为 GBUCS)中的微服务应用。
开发人员必须使用 @Produces 来处理不同的 Content-Type。另请考虑在调用本身期间为处理参数添加 @Valid 注释。
父主题:#1 - 注入
XML 注入
Oracle Clinical One Platform 数据 API 使用在核心框架内构建的 XML 解析器库来处理 XML 注入。在与其他外部系统的集成过程中,建议您扩展此 XML 解析器库并验证数据类型和长度的定义或约束条件是否得到准确满足。
父主题:#1 - 注入
#2 - 损坏的身份验证
与验证和会话管理中断相关的风险通常是因为这些功能未正确实施。如前所述,不应实施定制验证机制,也未实施。由于 Oracle Clinical One Platform API 以无状态方式工作,因此所有入站请求都必须携带有效的 JWT 令牌或执行基本验证。
JWT 令牌根据安全标准使用必要的算法进行加密,并在其有效负载中提供必要的信息(过期、用户、主体)。
使用基本验证时,始终通过安全通道传输凭证。
身份证明在任何时间点都不会存储在 Oracle Clinical One Platform 系统中或登录。
Oracle Clinical One Platform API 还对用户执行细粒度授权,以确保仅允许具有相应角色的用户访问 REST Web 服务端点。
父主题:2017 年十大安全风险
#3 - 敏感数据泄露
并非所有数据都是公开的,我们建议您对未经授权的用户隐藏任何敏感信息。安全配置失败和不安全默认值选择可能会导致数据泄漏的风险。
开发人员应使用 TLS 1.2 或更高版本来使用 Oracle Clinical One Platform API 来保护敏感数据并解决中间人攻击问题。
当应用程序传输敏感数据时,Web 客户端开发人员应强制执行加密的数据传输,并应验证所有证书是否合法并由公共机构签名。密码应限于现代实施。
父主题:2017 年十大安全风险
#4 - XML 外部实体 (XXE)
Oracle Clinical One Platform API 不使用 XML 进行任何类型的交互。但是,核心库中有一个 JAXB 实施可用,其中 XML 外部实体支持已以编程方式关闭作为预防措施。我们建议您根据 OWASP XXE Protection Cheat Sheet 的建议实施类似的方法。
父主题:2017 年十大安全风险
#5 - 访问控制中断
所有 Oracle Clinical One Platform API 端点均强制用户进行细粒度授权,以确保仅允许具有相应角色的用户访问 REST Web 服务端点。
父主题:2017 年十大安全风险
#6 - 安全配置错误
在生产环境中,Oracle Clinical One Platform 套件始终以默认安全状态安装。默认服务器用户被禁用,未使用的端口在部署过程中被阻止。与 Oracle Clinical One Platform 应用服务器的任何通信均通过 Oracle Life Sciences IAMS 进行,OHSIAMS WebGate 可监视每个 API 调用,以了解验证详细信息。
作为标准协议的一部分,定期进行黑盒测试以检测任何可能的错误配置问题。通过应用关键补丁程序,可以在源代码或基础设施中解决可能的问题。
父主题:2017 年十大安全风险
#7 - 跨站点脚本编写 (XSS)
跨站点脚本主要是由于浏览器呈现数据。Oracle Clinical One Platform API 的输入数据始终通过位于其核心库中的初始化请求筛选器传递。此过滤器会查找可疑或有害的字符,并根据需要阻止请求。所有出站响应都使用 X_FRAME_OPTIONS 标头进行装饰,以防止点击。
父主题:2017 年十大安全风险
#8 - 不安全的反序列化
Oracle Clinical One Platform API 在多个级别验证所有入站请求和可串行化对象。中层级别没有数据存在。此外,Oracle Clinical One Platform 在 GBUCS 云中托管,进一步降低了远程执行方案的几率。因此,不安全的反序列化方案不适用于 Oracle Clinical One Platform API 的用户。
父主题:2017 年十大安全风险
#9 - 使用具有已知漏洞的组件
Oracle Clinical One Platform 技术堆栈通过最新的安全修复和修补程序不断更新。我们建议使用 API 的开发人员以相同的方式维护其技术。
父主题:2017 年十大安全风险
#10 - 日志记录和监视不足
所有 Oracle Clinical One Platform API 调用均通过授权服务过滤器。这些筛选器记录集中式 Kibana 仪表盘中显示的任何类型的异常或意外行为。积极监测意外事件对于查明和通知主动攻击非常重要,因此可以采取预防措施来应对先进的持久性威胁 (APT)。
父主题:2017 年十大安全风险