]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Docs: add disclaimer about hazards of using regexps from untrusted sources.
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 2 Oct 2015 17:30:43 +0000 (13:30 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 2 Oct 2015 17:30:43 +0000 (13:30 -0400)
commit52511fd6243260d826e9fb337d3dcd79811b5f91
tree1b897044712550f7c95c5151b2f77e3e78acb5cd
parent3756c65a0764bca1ba104dfa87d8f2cf7f885311
Docs: add disclaimer about hazards of using regexps from untrusted sources.

It's not terribly hard to devise regular expressions that take large
amounts of time and/or memory to process.  Recent testing by Greg Stark has
also shown that machines with small stack limits can be driven to stack
overflow by suitably crafted regexps.  While we intend to fix these things
as much as possible, it's probably impossible to eliminate slow-execution
cases altogether.  In any case we don't want to treat such things as
security issues.  The history of that code should already discourage
prudent DBAs from allowing execution of regexp patterns coming from
possibly-hostile sources, but it seems like a good idea to warn about the
hazard explicitly.

Currently, similar_escape() allows access to enough of the underlying
regexp behavior that the warning has to apply to SIMILAR TO as well.
We might be able to make it safer if we tightened things up to allow only
SQL-mandated capabilities in SIMILAR TO; but that would be a subtly
non-backwards-compatible change, so it requires discussion and probably
could not be back-patched.

Per discussion among pgsql-security list.
doc/src/sgml/func.sgml