The vulnerability allows unauthenticated users to perform CRUD operations on the internal _GraphQLConfig and _Audience classes via the generic /classes/ REST API endpoints. This bypasses the master key protection that is present on the dedicated /graphql-config and /push_audiences endpoints.
The root cause is that these two classes were missing from the classesWithMasterOnlyAccess list in src/SharedRest.js. This list is used by the generic REST handlers to determine if a master key is required for a given class.
The patch fixes this by adding _GraphQLConfig and _Audience to this list.
The vulnerable functions are the generic REST handlers that process requests for the /classes/:className endpoints. The test files (spec/rest.spec.js) show that these handlers are exposed as rest.create, rest.find, rest.update, and rest.del. When the vulnerability is exploited, one of these functions will be called to perform an unauthorized action on the _GraphQLConfig or _Audience classes. Therefore, these functions would appear in a runtime profile during exploitation.