研究人员发现,数以千计的Oracle NetSuite电子商店容易受到数据泄露的影响,敏感的客户信息也面临风险。

AppOmni 的网络安全研究人员警告说,Oracle NetSuite SuiteCommerce 平台中存在潜在问题,可能允许攻击者访问客户敏感数据。

NetSuite 是一个广泛使用的 SaaS 企业资源规划 (ERP) 平台,因其通过 SuiteCommerce 或 SiteBuilder 部署面向外部的在线商店的能力而受到重视。这些商店托管在 NetSuite 租户的子域上,使未经身份验证的客户能够直接从企业浏览、注册和购买产品。

问题不是 NetSuite 解决方案中的漏洞,而是自定义记录类型 (CRT) 上的访问控制配置错误,可能会泄露客户敏感信息。

暴露的敏感数据是注册客户的个人身份信息,包括完整地址和手机号码。

威胁参与者以 NetSuite 中的自定义记录类型 (CRT) 为目标,这些类型使用“无需权限”访问控制,允许未经身份验证的用户通过 NetSuite 的记录和搜索 API 访问数据。但是,要使攻击成功,攻击者必须首先知道正在使用的 CRT 的名称。

“我们还必须假设未经身份验证的参与者知道 CRT 的名称。在本文发表之前,存在一种可以调用的方法,该方法将返回所有 CRT 的名称。然而,这已经得到了修复,“研究人员发表的报告中写道。“今天,可以使用两种方法检索 CRT 名称。

暴力破解下面第一步中所示的 API 端点,使用由流行的 CRT 名称组成的单词列表,该单词列表已使用 Github 等公共资源进行整理。
通过在与站点交互期间观察 HTTP 流量,在响应中查找以“customrecord_”为前缀的字符串。

为了降低风险,管理员应加强对自定义记录类型 (CRT) 的访问控制,限制公众对敏感字段的访问,并考虑暂时使受影响的站点脱机以防止数据泄露。

“解决这些数据暴露问题的可靠方法是加强对 CRT 的访问控制。从安全角度来看,最简单的解决方案可能涉及将记录类型定义的访问类型更改为’需要自定义记录条目权限‘或’使用权限列表‘。实际上,许多组织都有真正的业务需求,要求公开记录类型中的某些字段。因此,我强烈建议管理员开始评估字段级别的访问控制,并确定需要公开哪些字段(如果有)。对于必须从公共访问中锁定的字段,管理员必须进行以下两项更改:

默认访问级别:无
搜索/报告的默认级别:无

文章原文链接:https://www.anquanke.com/post/id/299357