Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-8445

With patched pcre getting ERROR 1139 (42000): Got error 'nothing to repeat at offset 24' from regexp

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: 10.0.20
    • Fix Version/s: N/A
    • Component/s: OTHER
    • Labels:

      Description

      regarding to CVE-2014-8964: pcre: heap buffer overflow

      BEFORE UPDATE mariadb v16

      MariaDB [(none)]> select 'a' RLIKE '((?=(?(?=(?(?=(?(?=())))*))))){2}';
      +-----------------------------------------------+
      | 'a' RLIKE '((?=(?(?=(?(?=(?(?=())))*))))){2}' |
      +-----------------------------------------------+
      |                                             1 |
      +-----------------------------------------------+
      1 row in set (0.00 sec)
       
      MariaDB [(none)]> SELECT REGEXP_SUBSTR('a','((?=(?(?=(?(?=(?(?=())))*))))){2}');
      +--------------------------------------------------------+
      | REGEXP_SUBSTR('a','((?=(?(?=(?(?=(?(?=())))*))))){2}') |
      +--------------------------------------------------------+
      |                                                        |
      +--------------------------------------------------------+
      1 row in set (0.00 sec)
       
      MariaDB [(none)]> SELECT REGEXP_INSTR('a','((?=(?(?=(?(?=(?(?=())))*))))){2}');
      +-------------------------------------------------------+
      | REGEXP_INSTR('a','((?=(?(?=(?(?=(?(?=())))*))))){2}') |
      +-------------------------------------------------------+
      |                                                     1 |
      +-------------------------------------------------------+
      1 row in set (0.00 sec)

      AFTER UPDATE mariadb v20

      MariaDB [test]> SELECT REGEXP_SUBSTR('a','((?=(?(?=(?(?=(?(?=())))*))))){2}');
      ERROR 1139 (42000): Got error 'nothing to repeat at offset 24' from regexp
      MariaDB [test]> SELECT REGEXP_INSTR('a','((?=(?(?=(?(?=(?(?=())))*))))){2}');
      ERROR 1139 (42000): Got error 'nothing to repeat at offset 24' from regexp
      MariaDB [test]> SELECT 'a' RLIKE '((?=(?(?=(?(?=(?(?=())))*))))){2}';
      ERROR 1139 (42000): Got error 'nothing to repeat at offset 24' from regexp

      This is probably ok, however we would like to be sure.
      Other "normal" regexps are ok as well as regexp from test suite.

      https://bugzilla.suse.com/show_bug.cgi?id=937545

        Attachments

          Activity

            People

            Assignee:
            bar Alexander Barkov
            Reporter:
            nirbhay_c Nirbhay Choubey (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Dates

              Created:
              Updated:
              Resolved:

                Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.