SA-05:08.kmem
piątek, 06 maja 2005 15:51
FreeBSD-SA-05:08.kmem Security Advisory
The FreeBSD Project
Temat: Lokalne ujawnienie pamięci jądra
Kategoria: core
Moduł: sys
Ogłoszono: 2005-05-06
Podziękowania: Christian S.J. Peron
Podatne wersje: Wszystkie wydania FreeBSD do 5.4-RELEASE
Poprawiono: 2005-05-06 02:50:00 UTC (RELENG_5, 5.4-STABLE)
2005-05-06 02:51:10 UTC (RELENG_5_4, 5.4-RELEASE)
2005-05-06 02:50:35 UTC (RELENG_5_3, 5.3-RELEASE-p13)
2005-05-06 02:48:46 UTC (RELENG_4, 4.11-STABLE)
2005-05-06 02:49:35 UTC (RELENG_4_11, 4.11-RELEASE-p7)
2005-05-06 02:49:08 UTC (RELENG_4_10, 4.10-RELEASE-p12)
Nazwa CVE: CAN-2005-1406
Dla 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/]
0. Historia wydań
v1.0 2005-05-06 Wydanie początkowe
v1.1 2005-05-07 Aktualizacja, dołączenie patch'a na błąd który zgłosił Uwe Doering.
I. Podstawy
W wielu częściach jąrda systemu FreeBSD, nazwy (punktów montnowania, urządzeń, plików itd.) są manipulowane jako ciąg znaków NULL-terminal, lecz dostarczane sa do aplikacji juz po ustaleniu wielkości bufora.
II. Opis problemu
W kilku miejscach, dlugości zmiennych znakowych są kopiowane do dostosowanej wielkości bufora bez zerowania go wcześniej.
III. Wpływ
Poprzednia zawartość z nowej części bufora bedzie odkryta przez aplikację. Pamięć ta może zawierać różne informacje, takie jak części plik cache'u lub buforu terminala. Informacje te mogą być bezpośrednio użyte, lub mogą mieć wpływ w pewnym przypadku przy uzyskaniu wyższych uprawnień. Na przykład, bufor terminala może zawierać wpisane hasło przez użytkownika.
IV. Obejście
Brak.
V. Rozwiązanie
Wykonać jedno z poniższych:
1) Uaktualnić wadliwy system do 4-STABLE lub 5-STABLE, lub do 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 i 5.3.
a) Pobrać odpowiednią łatkę z lokalizacji podanych poniżej. Sprawdzić podpis PGP, narzędziem jakie posiadasz.
[FreeBSD 4.x]
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:08/kmem4x.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:08/kmem4x.patch.asc
[FreeBSD 5.x]
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:08/kmem5x.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:08/kmem5x.patch.asc
b) Wykonać będąc zalogowanym jako root:
# cd /usr/src
# patch < /path/to/patch
c) Przebudować cały system jak opisano w dokumentacji na stronie: <URL:http://www.freebsd.org/doc/handbook/makeworld.html>
VI. Szczegóły poprawki
Poniższa lista zawiera numery poszczególnych wersji plików które zostały poprawione.
Gałąź Wersja
Ścieżka
- -------------------------------------------------------------------------
RELENG_4
src/sys/kern/vfs_subr.c 1.249.2.32
src/sys/net/if_mib.c 1.8.2.3
src/sys/netinet/ip_divert.c 1.42.2.8
src/sys/netinet/raw_ip.c 1.64.2.20
src/sys/netinet/udp_usrreq.c 1.64.2.20
RELENG_4_11
src/UPDATING 1.72.2.91.2.8
src/sys/conf/newvers.sh 1.44.2.39.2.11
src/sys/kern/vfs_subr.c 1.249.2.31.6.1
src/sys/net/if_mib.c 1.8.2.2.2.1
src/sys/netinet/ip_divert.c 1.42.2.7.2.1
src/sys/netinet/raw_ip.c 1.64.2.19.2.1
src/sys/netinet/udp_usrreq.c 1.64.2.19.6.1
RELENG_4_10
src/UPDATING 1.73.2.90.2.13
src/sys/conf/newvers.sh 1.44.2.34.2.14
src/sys/kern/vfs_subr.c 1.249.2.31.4.1
src/sys/net/if_mib.c 1.8.2.1.16.2
src/sys/netinet/ip_divert.c 1.42.2.6.6.1
src/sys/netinet/raw_ip.c 1.64.2.18.4.1
src/sys/netinet/udp_usrreq.c 1.64.2.19.4.1
RELENG_5
src/sys/kern/subr_bus.c 1.156.2.7
src/sys/kern/vfs_subr.c 1.522.2.5
src/sys/net/if_mib.c 1.13.4.2
src/sys/netinet/ip_divert.c 1.98.2.3
src/sys/netinet/raw_ip.c 1.142.2.5
src/sys/netinet/udp_usrreq.c 1.162.2.8
RELENG_5_4
src/UPDATING 1.342.2.24.2.7
src/sys/kern/subr_bus.c 1.156.2.5.2.1
src/sys/kern/vfs_subr.c 1.522.2.4.2.1
src/sys/net/if_mib.c 1.13.4.1.2.1
src/sys/netinet/ip_divert.c 1.98.2.2.2.1
src/sys/netinet/raw_ip.c 1.142.2.4.2.1
src/sys/netinet/udp_usrreq.c 1.162.2.7.2.1
RELENG_5_3
src/UPDATING 1.342.2.13.2.16
src/sys/conf/newvers.sh 1.62.2.15.2.18
src/sys/kern/subr_bus.c 1.156.2.2.2.1
src/sys/kern/vfs_subr.c 1.522.2.1.2.1
src/sys/net/if_mib.c 1.13.6.1
src/sys/netinet/ip_divert.c 1.98.4.1
src/sys/netinet/raw_ip.c 1.142.2.2.2.1
src/sys/netinet/udp_usrreq.c 1.162.2.3.2.1
- -------------------------------------------------------------------------
Najnowsza wersja jest dostępna pod adresem:
ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-05:08.kmem.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (FreeBSD)
iD8DBQFCfe9TFdaIBMps37IRAoANAJ9SvXgbD8c2Pw4akOWba95PklG1NgCeOPce
Ib7DiBQuu7LR2ZG70BP+eKQ=
=8wrv
-----END PGP SIGNATURE-----