Cybersecurity researchers from AppOmni warn of a potential issue in Oracle NetSuite SuiteCommerce platform could allow attackers to access customer sensitive data.
NetSuite is a widely used SaaS Enterprise Resource Planning (ERP) platform, valued for its capability to deploy external-facing online stores through SuiteCommerce or SiteBuilder. These stores, hosted on a subdomain of the NetSuite tenant, enable unauthenticated customers to browse, register, and purchase products directly from a business.
The issue is not a vulnerability in the NetSuite solution, it is a misconfiguration of access controls on custom record types (CRTs) that can leak customer sensitive.
Exposed sensitive data are PII of registered customers, including full addresses and mobile phone numbers.
Threat actors target Custom Record Types (CRTs) in NetSuite that use “No Permission Required” access controls, allowing unauthenticated users to access data through NetSuite’s record and search APIs. However, for the attack to be successful, the attacker must first know the names of the CRTs being used.
“We must also assume that an unauthenticated actor knows the name of the CRT. Prior to this article being published, there existed a method which could be invoked that would return the names of all CRTs. However this has since been fixed.” reads the report published by the researchers. “Today, CRT names can be retrieved using two methods.
To mitigate the risk, administrators should tighten access controls on Custom Record Types (CRTs), restrict public access to sensitive fields, and consider temporarily taking affected sites offline to prevent data exposure.
“The surefire way to solve these data exposure problems is to harden access controls on CRTs. The easiest solution from a security standpoint may involve changing the Access Type of the record type definition to either ‘Require Custom Record Entries Permission’ or ‘Use Permission List’.” concludes the report. In reality, many organizations have a genuine business requirement for some of the fields within the record type to be exposed. As such, I would highly recommend that administrators begin assessing access controls at the field level and identify which, if any, fields are required to be exposed. For fields which must be locked down from public access, administrators must make both of the below changes:
Follow me on Twitter: @securityaffairs and Facebook and Mastodon
(SecurityAffairs – hacking, Oracle NetSuite)