[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PCRE compile workspace overflow



In versions of the PCRE regular expression library before 8.02, compiling
a very large regular expression will overflow the workspace buffer.

Although the code checks for the size of the compiled regular expression,
the check only returns true after the end of the buffer has been
overrun. The bug was fixed in PCRE 8.02 with this patch:

    http://vcs.pcre.org/viewvc/code/trunk/pcre_compile.c?r1=504&r2=505&view=patch

This example will cause a 2 byte overflow:

~$ perl -e 'print "/","("x819, ")"x819, "/"' | pcretest

Original Bug Report:

    http://bugs.exim.org/show_bug.cgi?id=962