Fix denial of service - memory corruption.
authorJeremy Allison <jra@samba.org>
Sun, 27 Feb 2011 17:16:20 +0000 (18:16 +0100)
committerKarolin Seeger <kseeger@samba.org>
Mon, 28 Feb 2011 13:52:18 +0000 (14:52 +0100)
commitfeb3fcd0fa4bda0967b881315595d7702f4d1752
treed1dbcfdd58fed95847082a330f47fab5d7a3caa5
parentdff57d78ee0c5528c67a5a86bb356e9729107b11
Fix denial of service - memory corruption.

CVE-2011-0719

Fix bug #7949 (DoS in Winbind and smbd with many file descriptors open).

All current released versions of Samba are vulnerable to
a denial of service caused by memory corruption. Range
checks on file descriptors being used in the FD_SET macro
were not present allowing stack corruption. This can cause
the Samba code to crash or to loop attempting to select
on a bad file descriptor set.

A connection to a file share, or a local account is needed
to exploit this problem, either authenticated or unauthenticated
(guest connection).

Currently we do not believe this flaw is exploitable
beyond a crash or causing the code to loop, but on the
advice of our security reviewers we are releasing fixes
in case an exploit is discovered at a later date.
(cherry picked from commit 43babef991feedbe2acb77d27254d302ab107fa8)
18 files changed:
lib/tevent/tevent_select.c
lib/tevent/tevent_standard.c
nsswitch/wb_common.c
source3/client/client.c
source3/client/dnsbrowse.c
source3/lib/events.c
source3/lib/packet.c
source3/lib/readline.c
source3/lib/select.c
source3/lib/util_sock.c
source3/lib/wbclient.c
source3/libaddns/dnssock.c
source3/libads/cldap.c
source3/libsmb/nmblib.c
source3/nmbd/nmbd_packets.c
source3/utils/smbfilter.c
source3/winbindd/winbindd.c
source3/winbindd/winbindd_dual.c