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>
Sun, 27 Feb 2011 17:16:20 +0000 (18:16 +0100)
commit43babef991feedbe2acb77d27254d302ab107fa8
tree3f1184591a69f886ef6ba84e4ea4000a155dee68
parenta7aab3330f8bac43c86fdf3770daa0c42828a29c
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.
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