SA-06:02.ee

środa, 11 stycznia 2006 21:11

FreeBSD-SA-06:02.ee                          			Security Advisory
                                                       The FreeBSD Project
Temat:          Eskalacja przywilejów tymczasowych plików Texindex

Kategoria:      core
Moduł:          ee
Ogłoszono:      2006-01-11
Podziękowania:  Christian S.J. Peron
Podatne wersje: Wszystkie wersje
Poprawiono:           2006-01-11 08:02:16 UTC (RELENG_6, 6.0-STABLE)
2006-01-11 08:03:18 UTC (RELENG_6_0, 6.0-RELEASE-p2)
2006-01-11 08:03:55 UTC (RELENG_5, 5.4-STABLE)
2006-01-11 08:04:33 UTC (RELENG_5_4, 5.4-RELEASE-p9)
2006-01-11 08:05:54 UTC (RELENG_5_3, 5.3-RELEASE-p24)
2006-01-11 08:06:47 UTC (RELENG_4, 4.11-STABLE)
2006-01-11 08:07:18 UTC (RELENG_4_11, 4.11-RELEASE-p14)
2006-01-11 08:08:08 UTC (RELENG_4_10, 4.10-RELEASE-p20)
Nazwa CVE:      CVE-2006-0055

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/]

I.    Podstawy
ee jest konsolowym narzędziem do edycji tekstu. Edytor ten jest bardzo popularny, ponieważ jest łatwy w obsłudze

II.    Opis problemu
Funkcja ispell_op używana przez ee(1), podczas gdy wykonuje operacje sprawdzania poprawności tekstu, wykonuje niebezpieczną metodę generowania tymczasowych plików. Metoda ta przedstawia przewidywalne nazwy plików, bazujące na procesie ID oraz błędy do poprawy która ścieżka ma zostać poprawiona przez użytkownika.

Opcja ispell powinna zostać dołączona do opcji opcjonalnych i jednakowo należało by umieścic tekst że można ten błąd wykorzystać.

III.    Wpływ
Tymczasowe nazwy plików sa źródłem problemu, gdyż umożliwiają one wyścig kondycji przy wykonaniu atakowanego symlinka, który pozwala mu nadpisanie pliku w systemie w kontekscie użytkownika uzywającego edytor ee(1).

IV.    Obejście
Nie wywoływać ispell poprzez ee(1), jedynie bezpośrednio.

V.    Rozwiązanie
Wykonać jedno z poniższych:

1) Uaktualnić wadliwy system do 4-STABLE, 5-STABLE, 6-STABLE lub do 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.
a) Pobrać odpowiednią łatkę z lokalizacji podanych poniżej. Sprawdzić podpis PGP, narzędziem jakie posiadasz.

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-06:02/ee.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-06:02/ee.patch.asc

b) Wykonać będąc zalogowanym jako root:

# cd /usr/src
# patch < /path/to/patch
# cd /usr/src/usr.bin/ee
# 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_4
usr.bin/ee/ee.c 1.16.2.9
RELENG_4_11
src/UPDATING 1.73.2.91.2.15
src/sys/conf/newvers.sh 1.44.2.39.2.18
usr.bin/ee/ee.c 1.16.2.7.6.1
RELENG_4_10
src/UPDATING 1.73.2.90.2.21
src/sys/conf/newvers.sh 1.44.2.34.2.22
usr.bin/ee/ee.c 1.16.2.7.4.1
RELENG_5
usr.bin/ee/ee.c 1.31.4.2
RELENG_5_4
src/UPDATING 1.342.2.24.2.18
src/sys/conf/newvers.sh 1.62.2.18.2.14
usr.bin/ee/ee.c 1.31.4.1.2.1
RELENG_5_3
src/UPDATING 1.342.2.13.2.27
src/sys/conf/newvers.sh 1.62.2.15.2.29
usr.bin/ee/ee.c 1.31.6.1
RELENG_6
usr.bin/ee/ee.c 1.32.2.1
RELENG_6_0
src/UPDATING 1.416.2.3.2.7
src/sys/conf/newvers.sh 1.69.2.8.2.3
usr.bin/ee/ee.c 1.32.4.1
- -------------------------------------------------------------------------

VII. Odnośniki
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2006-0055

Najnowsza wersja jest dostępna pod adresem:
ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-06:02.ee.asc
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (FreeBSD)

iD8DBQFDxL4YFdaIBMps37IRAlL2AJ4x+2WoVU3OJMEab2ch6sbBRaLoogCglFSE
n4bkyDA2e6afV7tG4ja8foA=
=42lw
-----END PGP SIGNATURE-----