pgsql: Prevent execution of enum_recv() from SQL.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Prevent execution of enum_recv() from SQL.
Дата
Msg-id E1U2TZX-0006dL-7F@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Prevent execution of enum_recv() from SQL.

This function was misdeclared to take cstring when it should take internal.
This at least allows crashing the server, and in principle an attacker
might be able to use the function to examine the contents of server memory.

The correct fix is to adjust the system catalog contents (and fix the
regression tests that should have caught this but failed to).  However,
asking users to correct the catalog contents in existing installations
is a pain, so as a band-aid fix for the back branches, install a check
in enum_recv() to make it throw error if called with a cstring argument.
We will later revert this in HEAD in favor of correcting the catalogs.

Our thanks to Sumit Soni (via Secunia SVCRP) for reporting this issue.

Security: CVE-2013-0255

Branch
------
REL8_3_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/aa27464b34051d5e4f9888f6217283e0e41e01e9

Modified Files
--------------
doc/src/sgml/release-8.3.sgml |   13 +++++++++++++
src/backend/utils/adt/enum.c  |    5 +++++
2 files changed, 18 insertions(+), 0 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: pgsql: Move Assert() definitions to c.h
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Prevent execution of enum_recv() from SQL.