diff options
author | Magnus Hagander <magnus@hagander.net> | 2010-10-15 16:59:10 +0200 |
---|---|---|
committer | Magnus Hagander <magnus@hagander.net> | 2010-10-15 16:59:10 +0200 |
commit | 0e7f7071e893bb171150e53271404b0819a40669 (patch) | |
tree | 4c92bf93391229ccab1a24090a70aa58f74c6fdf /src/backend/utils/adt/xml.c | |
parent | 915116bc62db2aaec7001bde6610128f4cbd29f9 (diff) | |
download | postgresql-0e7f7071e893bb171150e53271404b0819a40669.tar.gz postgresql-0e7f7071e893bb171150e53271404b0819a40669.zip |
Fix low-risk potential denial of service against RADIUS login.
Corrupt RADIUS responses were treated as errors and not ignored
(which the RFC2865 states they should be). This meant that a
user with unfiltered access to the network of the PostgreSQL
or RADIUS server could send a spoofed RADIUS response
to the PostgreSQL server causing it to reject a valid login,
provided the attacker could also guess (or brute-force) the
correct port number.
Fix is to simply retry the receive in a loop until the timeout
has expired or a valid (signed by the correct RADIUS server)
packet arrives.
Reported by Alan DeKok in bug #5687.
Diffstat (limited to 'src/backend/utils/adt/xml.c')
0 files changed, 0 insertions, 0 deletions