MariaDB
By MariaDB Foundation Vulnerability disclosure program on HackerOne mariadb.org
- Top reward
- No cash rewards
- Top severity paid
- Critical
- Assets in scope
- 5
- Public CVEs
- 60
- Last change
At a glance
What to know before you start testing.
- No cash rewards
- A disclosure program: you report for credit, not money.
- Report by email
- [email protected]
- Partial safe harbor
- Some legal protection; read the terms.
Rewards
What HackerOne lists as the payout for each severity.
This program does not pay cash rewards.
- Pays cash
-
No
Being a non-profit Foundation we do not have a Bug Bounty program and generally provide no compensation for bug reports.
- Safe harbor
-
Partial
Act in good faith to avoid privacy violations, destruction of data, and interruption or degradation of services (including denial of service) for us and our users at large and comply with all applicable laws.
- Hall of fame
-
Yes
We will be grateful and acknowledge you with thanks on HackerOne at least.
Summarised with AI from the program policy on HackerOne, read 12 Nov 2026, and checked word for word against it. Read the original
Scope
5 assets you may test.
Source code 4
- MariaDB Server & Connectors - Access control bypass Critical No bounty
- MariaDB Server & Connectors - Data corruption, exfiltration, disclosure Medium No bounty
- MariaDB Server & Connectors - Denial of Service Medium No bounty
- MariaDB Server & Connectors - Remote Code Execution Critical No bounty
Web 1
- mariadb.org Medium No bounty
Rules
What the policy asks of you, and the bug types it won't reward, quoted from MariaDB (via HackerOne)'s policy. "We" in these lines means the program, not this site.
While testing
-
You must be the first reporter of the vulnerability to be eligible for recognition.
-
You must not publicly disclose the vulnerability, nor privately to another third party, prior to the report being resolved in a reasonable manner
-
Act in good faith to avoid privacy violations, destruction of data, and interruption or degradation of services (including denial of service) for us and our users at large and comply with all applicable laws.
-
Engaging in a full-blown penetration test of our infrastructure and live systems without a prior agreement from the Foundation is especially prohibited.
-
Denial of service
-
Spamming
-
Social engineering (including phishing) of MariaDB staff or contractors
-
Any physical attempts against MariaDB property or data centers
-
Automated scans and evaluations that can impair the functionality of our services
Not accepted
-
Vulnerabilities in old, unmaintained versions of MariaDB.
-
Vulnerabilities that have already been submitted by another user and/or that we are already aware of.
-
Vulnerabilities in third-party modules, connectors, and clients that are not available from https://downloads.mariadb.org/.
-
Files located at: https://jira.mariadb.org/secure/attachment/
-
Any issues related to the MariaDB Corporation (mariadb.com)
Summarised with AI from the program policy on HackerOne, read 12 Nov 2026, and checked word for word against it. Read the original
Changes
Tracked since 11 Nov 2026. Last checked 2 minutes ago.
-
Back
Open for reports again.
-
Paused
Paused. Not accepting reports right now.
-
Back
Open for reports again.
-
Paused
Paused. Not accepting reports right now.
Before we tracked it
Scope and reward changes recorded before this page started tracking it.
-
Status
Program status changed
-
Status
Program status changed
-
Status
Program status changed
-
Status
Program status changed
Public CVEs
Published vulnerabilities in this vendor's products, from the NVD.
| CVE | Summary | Severity | Published |
|---|---|---|---|
| CVE-2026-97380 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the GRANT PROXY statement treats an IDENTIFIED clause with an empty password as though authentication were not specified, causing it to check the wrong grantor privileges. A low-privileged attacker who can name another account can exploit this authorization error | High 8.8 | 16 Oct 2026 |
| CVE-2026-92262 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the #mysql50# bypass prefix is affected because it allows the #mysql50# prefix to bypass normal table-name filesystem encoding. An attacker can trigger the issue with a table name using the #mysql50# prefix, then use a #mysql50# table name to access files under th | Critical 9.9 | 16 Oct 2026 |
| CVE-2026-86047 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, SHOW CREATE SERVER, SHOW CREATE USER, and mariadb-dump are affected because each does not consistently quote identifiers and values when serializing SQL. A low-privileged attacker can trigger the issue when an attacker-created object with crafted identifiers or va | High 7.7 | 16 Oct 2026 |
| CVE-2026-85985 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the CONNECT engine plugin file-access UDFs json_file(), bson_file(), jfile_make(), bfile_make(), and jbin_file() are affected because each does not enforce FILE privilege or the secure_file_priv setting. A low-privileged attacker can trigger the issue by calling a | Medium 5.4 | 16 Oct 2026 |
| CVE-2026-85746 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, ST_AsText can write beyond an allocated output buffer when converting deeply nested GeometryCollections because recursive WKT serialization does not account for bytes consumed or reserve sufficient space. A low-privileged remote attacker can submit a specially cra | Critical 9.9 | 16 Oct 2026 |
| CVE-2026-85748 | MariaDB server is a community developed fork of MySQL server. From 12.3.1 until 12.3.3 and 13.0.2, SYS_REFCURSOR handling is affected because cursor-array reallocation can leave stale references in routine contexts. A low-privileged attacker can open a large number of SYS_REFCURSORs and then fetch one to trigger a use-after-free that can enable remote code execution when combined with another vuln | Critical 9.9 | 16 Oct 2026 |
| CVE-2026-85745 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, ST_Area reads beyond the allocated buffer when processing invalid WKB for a MultiPolygon because the multi-polygon parser advances past a nested geometry header without first verifying enough input remains. A low-privileged remote attacker can supply malformed spa | Medium 4.3 | 16 Oct 2026 |
| CVE-2026-107821 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, MariaDB insufficiently validated counts, offsets, lengths, and field boundaries in FRM metadata while opening binary FRM files. An attacker able to place a crafted FRM file in the data directory could trigger out-of-bounds reads or writes, crash the server, or pot | High 8.0 | 9 Oct 2026 |
| CVE-2026-107823 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the MariaDB view FRM parser did not safely encode embedded newline characters in a username. An account with CREATE USER and CREATE VIEW WITH GRANT OPTION could create a crafted username containing additional view metadata, causing the parser to interpret part of | High 7.2 | 9 Oct 2026 |
| CVE-2026-107822 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, MariaDB's ACL cache could generate the same database-privilege cache key for role and localhost user names that matched because both used an empty IP component. An attacker with CREATE USER could create the colliding principal and, when the original principal's da | Medium 6.4 | 9 Oct 2026 |
| CVE-2026-107817 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the mysql_json plugin assumed that imported MySQL tables contained valid MySQL binary JSON data. A specially prepared MySQL table containing invalid JSON data could cause out-of-bounds reads, information disclosure, or a server crash. This issue is fixed in versio | Medium 4.4 | 9 Oct 2026 |
| CVE-2026-107816 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the qc_info plugin could be confused by a query containing embedded null bytes. Reading information_schema.query_cache_info after such a query was cached could access data beyond the end of a heap-allocated buffer, potentially disclosing adjacent memory or crashin | Medium 6.4 | 9 Oct 2026 |
| CVE-2026-107818 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the mariadb.service unit used /run/mysqld/wsrep-new-cluster during the next service restart. A database user with FILE privilege and a secure-file-priv configuration permitting writes to /run/mysqld could create that file and inject attacker-controlled environment | High 8.4 | 9 Oct 2026 |
| CVE-2026-107815 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, the CONNECT engine's DOS table type used an incorrect boundary check that permitted a one-byte null write beyond a stack buffer at an attacker-controlled offset. An authenticated user able to use the CONNECT engine could cause a crash and potentially remote code e | High 8.5 | 9 Oct 2026 |
| CVE-2026-107814 | MariaDB server is a community developed fork of MySQL server. From 10.6.1 until 10.6.28, 10.11.19, 11.4.13, 11.8.9, 12.3.3, and 13.0.2, MariaDB RPM packages created the dedicated mysql service account with the database data directory as its home directory. A database user with the FILE privilege could write startup dot-files such as .bash_profile into $HOME, and those files could execute when an a | High 8.4 | 9 Oct 2026 |
| CVE-2026-48163 | MariaDB server is a community developed fork of MySQL server. From versions 10.6.1 to before 10.6.27, 10.11.1 to before 10.11.18, 11.4.1 to before 11.4.12, 11.8.1 to before 11.8.8, and 12.3.1, during the SST the donor node is interpolating parameters that the joiner sent into the command line. Not all parameters were properly validated which could allow a malicious joiner to execute arbitrary shel | High 8.0 | 12 Jun 2026 |
| CVE-2026-48165 | MariaDB server is a community developed fork of MySQL server. From versions 10.6.1 to before 10.6.27, 10.11.1 to before 10.11.18, 11.4.1 to before 11.4.12, 11.8.1 to before 11.8.8, and 12.3.1, a high-privileged MariaDB user could've used wsrep_sst_receive_address or wsrep_sst_donor global system variables to execute shell commands as the uid of the mariadbd process on the galera joiner node. This | High 8.0 | 12 Jun 2026 |
| CVE-2026-44168 | MariaDB server is a community developed fork of MySQL server. From versions 10.6.1 to before 10.6.26, 10.11.1 to before 10.11.17, 11.4.1 to before 11.4.11, 11.8.1 to before 11.8.7, and 12.3.1, during the SST the donor node is interpolating parameters that the joiner sent into the command line. Not all parameters were properly validated which could allow a malicious joiner to execute arbitrary shel | High 8.0 | 12 Jun 2026 |
| CVE-2026-44170 | MariaDB server is a community developed fork of MySQL server. From versions 10.6.1 to before 10.6.26, 10.11.1 to before 10.11.17, 11.4.1 to before 11.4.11, 11.8.1 to before 11.8.7, and 12.3.1, MariaDB on WIndows with installed CONNECT engine and enabled REST support interpolated table HTTP attribute into the curl command line without proper sanitizing. This allows the user to execute shell command | Medium 6.3 | 12 Jun 2026 |
| CVE-2026-44169 | MariaDB server is a community developed fork of MySQL server. From versions 11.4.1 to before 11.4.11, 11.8.1 to before 11.8.7, and 12.3.1, a user getting EXECUTE access to a stored routine via a role, could see the routine definition even without SHOW CREATE ROUTINE privilege. This issue has been patched in versions 11.4.11, 11.8.7, and 12.3.2. | Medium 4.3 | 12 Jun 2026 |
| CVE-2026-44173 | MariaDB server is a community developed fork of MySQL server. From versions 10.6.1 to before 10.6.26, 10.11.1 to before 10.11.17, 11.4.1 to before 11.4.11, 11.8.1 to before 11.8.7, and 12.3.1, MariaDB allowed SELECT ... INTO OUTFILE and SELECT ... INTO DUMPFILE without verifying the FILE privilege if the FROM clause contained only subqueries. This issue has been patched in versions 10.6.26, 10.11. | Medium 5.0 | 12 Jun 2026 |
| CVE-2026-44172 | MariaDB server is a community developed fork of MySQL server. In versions 3.3.18 and 3.4.8, an application that was taking non-validated user input, escaping it with mysql_real_escape_string() and sending it to the database using text protocol and big5 character set was vulnerable to SQL injections, even though mysql_real_escape_string() was supposed to prevent them. This issue has been patched in | Medium 6.9 | 12 Jun 2026 |
| CVE-2026-44171 | MariaDB server is a community developed fork of MySQL server. From versions 10.6.1 to before 10.6.26, 10.11.1 to before 10.11.17, 11.4.1 to before 11.4.11, 11.8.1 to before 11.8.7, and 12.3.1, mbstream did not check for /../ in the path when unpacking the archive. A proper backup can never contain such paths, but a specially crafted archive could have caused mbstream to create files outside of the | Medium 6.3 | 12 Jun 2026 |
| CVE-2026-49261 | MariaDB server is a community developed fork of MySQL server. Versions 10.6.1 through 10.6.26, 10.11.1 through 10.11.17, 11.4.1 through 11.4.11, 11.8.1 through 11.8.7, and 12.3.1 with `wsrep_notify_cmd` enabled would execute shell commands embedded in the name of the joiner node. This is fixed in 10.6.27, 10.11.18, 11.4.12, 11.8.8, and 12.3.2. As a workaround, anyone who cannot upgrade now should | Critical 10.0 | 11 Jun 2026 |
| CVE-2026-35549 | An issue was discovered in MariaDB Server before 11.4.10, 11.5.x through 11.8.x before 11.8.6, and 12.x before 12.2.2. If the caching_sha2_password authentication plugin is installed, and some user accounts are configured to use it, a large packet can crash the server because sha256_crypt_r uses alloca. | Medium 6.5 | 3 Apr 2026 |
| CVE-2026-32710 | MariaDB server is a community developed fork of MySQL server. An authenticated user can crash MariaDB versions 11.4 before 11.4.10 and 11.8 before 11.8.6 via a bug in JSON_SCHEMA_VALID() function. Under certain conditions it might be possible to turn the crash into a remote code execution. These conditions require tight control over memory layout which is generally only attainable in a lab environ | High 8.5 | 20 Mar 2026 |
| CVE-2026-3494 | In MariaDB server version through 11.8.5, when server audit plugin is enabled with server_audit_events variable configured with QUERY_DCL, QUERY_DDL, or QUERY_DML filtering, if an authenticated database user invokes a SQL statement prefixed with double-hyphen (—) or hash (#) style comments, the statement is not logged. | Medium 5.3 | 3 Mar 2026 |
| CVE-2025-56404 | An issue was discovered in MariaDB MCP 0.1.0 allowing attackers to gain sensitive information via the SSE service as the SSE service lacks user validation. | High 7.5 | 10 Sep 2025 |
| CVE-2023-26785 | MariaDB v10.5 was discovered to contain a remote code execution (RCE) vulnerability via UDF Code in a Shared Object File, followed by a "create function" statement. NOTE: this is disputed by the MariaDB Foundation because no privilege boundary is crossed. | Critical 9.8 | 17 Oct 2024 |
| CVE-2023-39593 | Insecure permissions in the sys_exec function of MariaDB v10.5 allows authenticated attackers to execute arbitrary commands with elevated privileges. NOTE: this is disputed by the MariaDB Foundation because no privilege boundary is crossed. | Medium 5.6 | 17 Oct 2024 |
| CVE-2024-27766 | An issue in MariaDB v.11.1 allows a remote attacker to execute arbitrary code via the lib_mysqludf_sys.so function. NOTE: this is disputed by the MariaDB Foundation because no privilege boundary is crossed. | Medium 5.7 | 17 Oct 2024 |
| CVE-2023-22084 | Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 5.7.43 and prior, 8.0.34 and prior and 8.1.0. Easily exploitable vulnerability allows high privileged attacker with network access via multiple protocols to compromise MySQL Server. Successful attacks of this vulnerability can result in unauthorized ability to cause a hang or fre | Medium 4.9 | 17 Oct 2023 |
| CVE-2023-5157 | A vulnerability was found in MariaDB. An OpenVAS port scan on ports 3306 and 4567 allows a malicious remote client to cause a denial of service. | High 7.5 | 27 Sep 2023 |
| CVE-2023-40354 | An issue was discovered in MariaDB MaxScale before 23.02.3. A user enters an encrypted password on a "maxctrl create service" command line, but this password is then stored in cleartext in the resulting .cnf file under /var/lib/maxscale/maxscale.cnf.d. The fixed versions are 2.5.28, 6.4.9, 22.08.8, and 23.02.3. | Medium 6.5 | 14 Aug 2023 |
| CVE-2022-47015 | MariaDB Server before 10.3.34 thru 10.9.3 is vulnerable to Denial of Service. It is possible for function spider_db_mbase::print_warnings to dereference a null pointer. | Medium 6.5 | 20 Jan 2023 |
| CVE-2022-21595 | Vulnerability in the MySQL Server product of Oracle MySQL (component: C API). Supported versions that are affected are 5.7.36 and prior and 8.0.27 and prior. Difficult to exploit vulnerability allows high privileged attacker with network access via multiple protocols to compromise MySQL Server. Successful attacks of this vulnerability can result in unauthorized ability to cause a hang or frequentl | Medium 4.4 | 18 Oct 2022 |
| CVE-2022-38791 | In MariaDB before 10.9.2, compress_write in extra/mariabackup/ds_compress.cc does not release data_mutex upon a stream write failure, which allows local users to trigger a deadlock. | Medium 5.5 | 27 Aug 2022 |
| CVE-2022-32091 | MariaDB v10.7 was discovered to contain an use-after-poison in in __interceptor_memset at /libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32083 | MariaDB v10.2 to v10.6.1 was discovered to contain a segmentation fault via the component Item_subselect::init_expr_cache_tracker. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32081 | MariaDB v10.4 to v10.7 was discovered to contain an use-after-poison in prepare_inplace_add_virtual at /storage/innobase/handler/handler0alter.cc. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32082 | MariaDB v10.5 to v10.7 was discovered to contain an assertion failure at table->get_ref_count() == 0 in dict0dict.cc. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32089 | MariaDB v10.5 to v10.7 was discovered to contain a segmentation fault via the component st_select_lex_unit::exclude_level. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32088 | MariaDB v10.2 to v10.7 was discovered to contain a segmentation fault via the component Exec_time_tracker::get_loops/Filesort_tracker::report_use/filesort. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32087 | MariaDB v10.2 to v10.7 was discovered to contain a segmentation fault via the component Item_args::walk_args. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32086 | MariaDB v10.4 to v10.8 was discovered to contain a segmentation fault via the component Item_field::fix_outer_field. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32085 | MariaDB v10.2 to v10.7 was discovered to contain a segmentation fault via the component Item_func_in::cleanup/Item::cleanup_processor. | High 7.5 | 1 Jul 2022 |
| CVE-2022-32084 | MariaDB v10.2 to v10.7 was discovered to contain a segmentation fault via the component sub_select. | High 7.5 | 1 Jul 2022 |
| CVE-2022-31622 | MariaDB Server before 10.7 is vulnerable to Denial of Service. In extra/mariabackup/ds_compress.cc, when an error occurs (pthread_create returns a nonzero value) while executing the method create_worker_threads, the held lock is not released correctly, which allows local users to trigger a denial of service due to the deadlock. Note: The vendor argues this is just an improper locking bug and not a | Medium 5.5 | 25 May 2022 |
| CVE-2022-31624 | MariaDB Server before 10.7 is vulnerable to Denial of Service. While executing the plugin/server_audit/server_audit.c method log_statement_ex, the held lock lock_bigbuffer is not released correctly, which allows local users to trigger a denial of service due to the deadlock. | Medium 5.5 | 25 May 2022 |
| CVE-2022-31623 | MariaDB Server before 10.7 is vulnerable to Denial of Service. In extra/mariabackup/ds_compress.cc, when an error occurs (i.e., going to the err label) while executing the method create_worker_threads, the held lock thd->ctrl_mutex is not released correctly, which allows local users to trigger a denial of service due to the deadlock. Note: The vendor argues this is just an improper locking bug and | Medium 5.5 | 25 May 2022 |
| CVE-2022-31621 | MariaDB Server before 10.7 is vulnerable to Denial of Service. In extra/mariabackup/ds_xbstream.cc, when an error occurs (stream_ctxt->dest_file == NULL) while executing the method xbstream_open, the held lock is not released correctly, which allows local users to trigger a denial of service due to the deadlock. Note: The vendor argues this is just an improper locking bug and not a vulnerability w | Medium 5.5 | 25 May 2022 |
| CVE-2022-21451 | Vulnerability in the MySQL Server product of Oracle MySQL (component: InnoDB). Supported versions that are affected are 5.7.37 and prior and 8.0.28 and prior. Difficult to exploit vulnerability allows high privileged attacker with network access via multiple protocols to compromise MySQL Server. Successful attacks of this vulnerability can result in unauthorized ability to cause a hang or frequent | Medium 4.4 | 19 Apr 2022 |
| CVE-2022-21427 | Vulnerability in the MySQL Server product of Oracle MySQL (component: Server: FTS). Supported versions that are affected are 5.7.37 and prior and 8.0.28 and prior. Easily exploitable vulnerability allows high privileged attacker with network access via multiple protocols to compromise MySQL Server. Successful attacks of this vulnerability can result in unauthorized ability to cause a hang or frequ | Medium 4.9 | 19 Apr 2022 |
| CVE-2022-27448 | There is an Assertion failure in MariaDB Server v10.9 and below via 'node->pcur->rel_pos == BTR_PCUR_ON' at /row/row0mysql.cc. | High 7.5 | 14 Apr 2022 |
| CVE-2022-27449 | MariaDB Server v10.9 and below was discovered to contain a segmentation fault via the component sql/item_func.cc:148. | High 7.5 | 14 Apr 2022 |
| CVE-2022-27457 | MariaDB Server v10.6.3 and below was discovered to contain an use-after-free in the component my_mb_wc_latin1 at /strings/ctype-latin1.c. | High 7.5 | 14 Apr 2022 |
| CVE-2022-27456 | MariaDB Server v10.6.3 and below was discovered to contain an use-after-free in the component VDec::VDec at /sql/sql_type.cc. | High 7.5 | 14 Apr 2022 |
| CVE-2022-27455 | MariaDB Server v10.6.3 and below was discovered to contain an use-after-free in the component my_wildcmp_8bit_impl at /strings/ctype-simple.c. | High 7.5 | 14 Apr 2022 |
| CVE-2022-27452 | MariaDB Server v10.9 and below was discovered to contain a segmentation fault via the component sql/item_cmpfunc.cc. | High 7.5 | 14 Apr 2022 |
| CVE-2022-27451 | MariaDB Server v10.9 and below was discovered to contain a segmentation fault via the component sql/field_conv.cc. | High 7.5 | 14 Apr 2022 |
Original policy
Copied from hackerone.com on 12 Nov 2026. The summaries on this page are made from it; the live page may have changed since.
Overview
MariaDB Server is one of the most popular open source database servers in the world. It is developed and maintained by the original developers of MySQL and guaranteed to stay open source.
The MariaDB Foundation supports continuity and open collaboration in the MariaDB ecosystem. The Foundation guarantees that there is a global contact point for collaboration and that the community can always rely upon MariaDB Server.
The Foundation is committed to working with security experts to stay up to date with the latest security techniques and towards the security of your database deployments. Feel free to inspect, analyze and fuzz our source code as you wish. If you discovered a security issue in either research or production that you believe we should know about, please let us know via responsible disclosure and we'll make every effort to quickly correct the issue following a vulnerability handling process that is respectful and considerate to you, all users, partners, companies and forks of MariaDB. If you'd like to bring additional attention to a report or feel we can improve with our report handling please let us know at [email protected].
Disclosure Policy
A note on upstream MySQL and third party storage engines,
MySQL, which is the base of MariaDB, is a product and trademark of Oracle Corporation, Inc. MariaDB is a fork of MySQL and the Foundation is committed to keeping MariaDB on par and go beyond feature, security, performance and reliability wise, as well as keep drop-in compatibility to the best of our efforts for certain branches. This implies that some security issues could originate in the upstream source code before the initial fork, or be introduced later via a subsequent merge, in which case our biggest priority is to resolve the issue for MariaDB users as quickly and responsibly as possible and at the same time report upstream if applicable. We can report the vulnerability to Oracle on your behalf, unless you prefer to do it yourself. However, if you report it only to Oracle, we will never know about it and might never fix it.
Also, MariaDB, in the default source offering, incorporates various third party open source modules, for example, Storage Engines that provide different backend store facilities with focus on performance, efficiency, or scaling. Examples include TokuDB, XtraDB from Percona, and MyRocks originally from Facebook. If your report specifically targets one of those third party modules that is part of the original MariaDB source offering, we encourage you to report it to us, in which case, our biggest priority is to resolve the issue for MariaDB users quickly and responsibly and at the same time notify and collaborate with the original upstream source to mitigate risk and develop a resolution that has the widest outreach possible.
If you are unsure of the scope of your vulnerability report, don't worry too much about it, just make sure you are following the responsible disclosure guidelines and we will get in touch with you about the classification and scope specifics upon verification and validation of the report. In either case, you will be kept in the loop for the entire life-time of the disclosure and handling process.
Disclosure Rules
MariaDB is a server product used in both public and private environments, with a wide reach ranging from being the default database system on Debian flavored distributions and availability in most other Linux and BSD package repositories, to corporate, enterprise and governmental deployments, to supplying database needs for many internet sites and services, and ultimately to being the go-to choice for many personal individuals all around the globe. To that end we strongly encourage you to follow the responsible disclosure philosophy and guidelines when stumbling across vulnerabilities in critical infrastructure software, MariaDB included.
A quick summary of the rules defining responsible disclosure:
Rules For You
- You must be the first reporter of the vulnerability to be eligible for recognition. Please check our bug database prior to classifying it as a new issue.
- The vulnerability must demonstrate security impact, either implicitly or explicitly. You must be available for further clarification, detail requests from our security team and developers. See Report Eligibility section.
- You must not publicly disclose the vulnerability, nor privately to another third party, prior to the report being resolved in a reasonable manner, in compliance with the process described in the HackerOne Vulnerability Disclosure Guidelines and terms in this document. As an exception to this rule, you may disclose it to Oracle and Percona security contacts. If you prefer not to do it and we discover that other MySQL variants are affected, we will notify them on your behalf.
- Share the security issue with us in detail; See Bug Report section.
- You agree with the public disclosure of any valid security issue reported to us pending resolution.
- Submitter must not be the author of the vulnerable code nor otherwise involved in its contribution to the MariaDB project (such as by providing code/PR/merge reviews). Employees of the Foundation and its subsidiaries, affiliate companies are ineligible.
- Act in good faith to avoid privacy violations, destruction of data, and interruption or degradation of services (including denial of service) for us and our users at large and comply with all applicable laws.
- You must agree and comply to our stated Policy and implicit HackerOne program rules.
Rules For Us
- We will respond as quickly as possible to your initial submission.
- Pending our ability to reproduce your findings, we will evaluate the severity of the report, affected products and releases and get back to you with our dissemination.
- We will coordinate together towards fashioning a reasonable vulnerability fix timeline that is knowledgeable and respectful of all parties affected by the issue.
- We will notify other MySQL variants on your behalf if we determine that they are also affected by the vulnerability.
- We will draft a security advisory, public announcement, and urge users to upgrade accordingly. At this stage you will also receive public recognition (at your discretion).
- We will commit to post-resolution future-proofing mitigation activities, such as identification of the original cause of the defect that made this possible in the first place, creating test suites and pro-actively looking for further similar class vulnerabilities that we can readily identify via our Continuous Integration and Testing platform.
- We will keep you updated as we work throughout this entire process. You can be part of this at all stages.
- Being a non-profit Foundation we do not have a Bug Bounty program and generally provide no compensation for bug reports.
Bug Report
A good vulnerability bug report should include at least the following information:
- The environment (operating system, hardware and MariaDB version, including plugins and storage engines).
- Code affected, along with your explanation of the faulty behavior.
- Configuration, SQL tables, queries, network actions required to reproduce the behavior.
- Core dumps, stack-traces, error logs, data dumps, failed test cases or network packets required to diagnose or reproduce the attack.
- Proof of Concept (PoC) code that successfully triggers/exploits the vulnerability in at least one given scenario.
In gist, vulnerability reports need to be documented in a way that they can be reproduced, easily understood and classified by our developers without duplicating everything you did already from scratch. The more details you send in, the easier it is for our developers to rely on the effort already put in by you and act faster. Send screen-shots, code, video; whatever helps to understand the flaw as quickly as possible.
For details on how to submit a comprehensive bug report that's specifically tailored to MariaDB see Bug Reporting in our Knowledge Base.
Report Eligibility
Due to the nature of our client-server protocol, replication technologies, plugin system, and overall architecture of MariaDB sever and deployment specifics, there are a variety of forms that a security vulnerability can take, so in order to simplify our classification of reports for eligibility, we try and base our evaluations on a combination of risk, impact, exposure and common sense to evaluate severity for a particular vulnerability report and the threat posed to users. It is considered a good practice to assess any particular vulnerability using the Common Vulnerability Scoring System CVSS3 standard in order to easily come up with a metric that can be easily understood and shared by many in the industry.
Unless otherwise stated by the MariaDB security team, pending completion of report evaluation and analysis, we currently consider this classification for qualifying vulnerabilities:
In Scope
Security vulnerabilities in active development branches and released versions that are still in the supported timeline, such as:
- Gaining unauthorized remote code execution on the server, slave or client machine (i.e. RCE).
- Database authentication bypass, privilege escalation and other access control bypass attacks.
- Data corruption attacks that affect the integrity of the database without authentication or privileges to do that normally.
- Data exfiltration attacks that affect the confidentiality of the database without authorization to do that normally.
- Denial of Service (DoS) attacks that permanently corrupt the server state or configuration, preventing the user from easily restarting the service, thus resulting in total loss of availability.
- Vulnerabilities in clients or connectors (only those, available from https://downloads.mariadb.org/).
Limited Scope
Vulnerabilities that don't lead to a severe compromise of the server, data and information leakage or privilege escalation, but do affect normal operation, up-time and service reliability are considered of limited scope:
- Denial of Service (DoS) attacks that crash the server, without inflicting a permanent damage.
In addition to the main product offerings of MariaDB, we are also considering critical security issues in our website, support, development, testing and release infrastructure that could potentially affect end users of MariaDB server as part of this policy and in limited scope. Examples could be server side attacks that lead to binary release distribution integrity corruption or web attacks that could lead to serious compromise of our infrastructure, such as:
- Cross Site Scripting (XSS)
- Cross Site Request Forgery (CSRF)
- Server Side Request Forgery (SSRF)
- Remote Code Execution (RCE)
- SQL Injection (SQLi)
Please, note, MariaDB Foundation is a non-profit organization with limited resources and while we do our best to keep everything up to date and secure, there's still the chance that some underused service, daemon or forgotten installation might gradually slide down the path of irrelevance and obsoleteness and thus, potentially expose us to attacks. If you happen to find such problems in our infrastructure, please notify us first. We will be grateful and acknowledge you with thanks on HackerOne at least.
Make a good faith effort to avoid privacy violations, destruction of data, and interruption or degradation of our service. Only interact with accounts you own or with explicit permission of the account holder or the Foundation. Engaging in a full-blown penetration test of our infrastructure and live systems without a prior agreement from the Foundation is especially prohibited. If you're planning to look for vulnerabilities in our infrastructure, we'd like to ask you to refrain from:
- Denial of service
- Spamming
- Social engineering (including phishing) of MariaDB staff or contractors
- Any physical attempts against MariaDB property or data centers
- Automated scans and evaluations that can impair the functionality of our services
Out of Scope
- Vulnerabilities in old, unmaintained versions of MariaDB.
- Vulnerabilities that have already been submitted by another user and/or that we are already aware of.
- Vulnerabilities in third-party modules, connectors, and clients that are not available from https://downloads.mariadb.org/.
- Files located at: https://jira.mariadb.org/secure/attachment/
- Note that this Hacker One program is run by the MariaDB Foundation. Any issues related to the MariaDB Corporation (mariadb.com) are out of scope.
If you're in doubt, feel free to report it anyway or e-mail us at [email protected].
Severity
The MariaDB Server developers classify all security vulnerabilities according to their threat level and thus handle them with the appropriate consideration. The threat level can be one of:
- CRITICAL: an exploitable vulnerability that causes arbitrary code execution or allows an unauthenticated user to crash the server or get access to the data.
- MEDIUM: everything else.
We promise to fix any CRITICAL security vulnerability immediately, usually within hours, and release fixed MariaDB binaries as soon as possible, usually the next day.
We will fix MEDIUM security vulnerability as soon as possible, but we will not change our planned release schedule to get the fix out earlier.
See also
The MariaDB Foundation security policy at https://mariadb.org/about/security-policy/
####Thank you for helping keep MariaDB and our users safe!