SA-06:15.ypserv
sobota, 23 września 2006 02:30
FreeBSD-SA-06:15.ypserv Security Advisory
The FreeBSD Project
Temat: Bezskuteczna kontrola dostępu w ypserv(8).
Kategoria: core
Moduł: ypserv
Ogłoszono: 2006-05-31
Podziękowania: Hokan
Podatne wersje: All FreeBSD 5.x, 6.x
Poprawiono: 2006-05-31 22:31:21 UTC (RELENG_6, 6.1-STABLE)
2006-05-31 22:31:42 UTC (RELENG_6_1, 6.1-RELEASE-p1)
2006-05-31 22:32:04 UTC (RELENG_6_0, 6.0-RELEASE-p8)
2006-05-31 22:32:22 UTC (RELENG_5, 5.5-STABLE)
2006-05-31 22:32:49 UTC (RELENG_5_5, 5.5-RELEASE-p1)
2006-05-31 22:33:17 UTC (RELENG_5_4, 5.4-RELEASE-p15)
2006-05-31 22:33:41 UTC (RELENG_5_3, 5.3-RELEASE-p30)
Nazwa CVE: CVE-2006-2655
W celu pogłębienia informacji dotyczącej Ogłoszeń Bezpieczeństwa FreeBSD, włączając opisy pól powyżej, gałęzi bezpieczeństwa oraz poniższych sekcji proszę odwiedzić:
[URL:http://www.freebsd.org/security/]
I. Podstawy
Narzędzie ypserv(8) jest serwerem dystrybucji bazy danych NIS do klienta systemu w domenie NIS.
II. Opis problemu
Istnieją dwie udokumentowane metody pozwalające ograniczyć dostęp do map NIS, poprzez ypserv(8):
- wykorzystanie pliku /var/yp/securenets
- wykorzystanie pliku /etc/hosts.allow
Odkąd oba mechanizmy są zaimplementowane w serwerze, oile zmiana w procesie budowania powoduje nieuważne wyłączenie restrykcji związanych z dostępem poprzez "securenets".
III. Wpływ
ypserv(8) nie będzie ładował lub przetwarzał żadnych sieci/host'ów zapisanych w pliku /var/yp/securenets. Uważając ten rodzaj zabezpieczenia za nieskuteczny.
IV. Obejście
Jedyne możliwe obejście, jest możliwe poprzez wykorzystanie pliku /etc/hosts.allow do kontroli dostępu, w sposób jaki jest przedstawiony w przykadzie pliku.
Innym obejściem może być zastosowanie firewall'a (np. ipfw, ip, pf) aby zmniejszyć limit dostępu do funkcji RPC z niezaufanych systemów lub sieci. Stworzenie reguly, która by taką operację wykonywała, jest dość trudnym zadaniem - komplikacja występuje przy chęci zablokowania specyficznego zapytania z pominięciem blokady wszystkich zapytań.
V. Rozwiązanie
Wykonać jedno z poniższych:
1) Uaktualnić wadliwy system do 4-STABLE, 5-STABLE, 6-STABLE lub do RELENG_6_1, RELENG_6_0, RELENG_5_4, RELENG_5_3, RELENG_4_11, RELENG_4_10 z danej gałęzi bezpieczeństwa wydanej po dacie poprawki.
2) Aby załatać obecny system:
Poniższe poprawki zostały sprawdzone w działaniu z FreeBSD 4.10, 4.11, 5.3, 5.4, 6.0, 6.1.
a) Pobrać odpowiednią łatkę z lokalizacji podanych poniżej. Sprawdzić podpis PGP, narzędziem jakie posiadasz.
# fetch http://security.FreeBSD.org/patches/SA-06:15/ypserv.patch
# fetch http://security.FreeBSD.org/patches/SA-06:15/ypserv.patch.asc
b) Wykonać będąc zalogowanym jako root:
# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/usr.sbin/ypserv
# make obj && make depend && make && make install
VI. Szczegóły poprawki
Poniższa lista zawiera numery poszczególnych wersji plików które zostały poprawione.
Gałąź
Ścieżka Przegląd
- -------------------------------------------------------------------------
RELENG_5
src/usr.sbin/ypserv/yp_access.c 1.22.6.1
RELENG_5_5
src/UPDATING 1.342.2.35.2.1
src/sys/conf/newvers.sh 1.62.2.21.2.3
src/usr.sbin/ypserv/yp_access.c 1.22.18.1
RELENG_5_4
src/UPDATING 1.342.2.24.2.24
src/sys/conf/newvers.sh 1.62.2.18.2.20
src/usr.sbin/ypserv/yp_access.c 1.22.10.1
RELENG_5_3
src/UPDATING 1.342.2.13.2.33
src/sys/conf/newvers.sh 1.62.2.15.2.35
src/usr.sbin/ypserv/yp_access.c 1.22.8.1
RELENG_6
src/usr.sbin/ypserv/yp_access.c 1.22.12.1
RELENG_6_1
src/UPDATING 1.416.2.22.2.3
src/sys/conf/newvers.sh 1.69.2.11.2.3
src/usr.sbin/ypserv/yp_access.c 1.22.16.1
RELENG_6_0
src/UPDATING 1.416.2.3.2.13
src/sys/conf/newvers.sh 1.69.2.8.2.9
src/usr.sbin/ypserv/yp_access.c 1.22.14.1
- -------------------------------------------------------------------------
VII. Odnośniki
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-2655
Najnowsza wersja jest dostępna pod adresem:
ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-06 :15.ypserv.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (FreeBSD)
iD8DBQFEfhuUFdaIBMps37IRAhH5AJ9cpTLcR+aWSRPUa1zUDYThhKDqowCggYr1
4OyjFHW/C+NB9nMIX8Wf7IE=
=NNUN
-----END PGP SIGNATURE-----