[security] CVE-2016-6653: MySQL Audit logs sent to Syslog
Cloud Foundry Foundation
Cloud Foundry MySQL Release versions 27 and 28
MariaDB’s audit_plugin, incorporated in cf-mysql-release starting with
cf-mysql-release v27, allows the Operator to enable audit trails, which log
all queries sent to the SQL server. With the incorporation of this plugin,
a bug was introduced that causes those logs to be sent to syslog. Depending
on the nature of the applications that use cf-mysql, these audit logs may
contain Personally Identifiable Information (PII) of application users,
including unencrypted application access credentials and any
application-specific data written to the database.
The audit_plugin automatically redacts credentials in MySQL user creation.
MySQL server access credentials are not sent to syslog.
Note: The property, cf_mysql.mysql.server_audit_events, which enables Audit
logging is not enabled by default in the release’s spec file
The audit feature must have been manually enabled by an Operator before
OSS users are strongly encouraged to follow one of the mitigations below:
Deploy cf-mysql-release v29
Disable audit logging by deleting the values of
cf_mysql.mysql.server_audit_events and re-deploying.
Decide how to best handle audit log records that have been stored by
your syslog server (implementation varies).
Below are several examples of audit log events as they will appear in
syslog. Scan for entries like these in order to validate that you are no
longer sending audit logs to syslog.
11,118512,16585118,QUERY,mysql_broker,'CREATE USER \'zconN9KAQ6PwXsQC\'
IDENTIFIED BY *****',0
`partition_spec`.* FROM `partition_spec` WHERE `partition_spec`.`name` =
\'ordered\' LIMIT 1',0
`daemon`.* FROM `daemon` WHERE `daemon`.`name` =
\'ordered_delayed_job_workers\' LIMIT 1',0
This issue was discovered by the Cloud Foundry cf-mysql development team.