FreeBSD FreeBSD
nazwa.pl FreeBSD
SA-05:05.cvs PDF Drukuj Email
Wpisał: crash   
22.04.2005.
FreeBSD-SA-05:05.cvs                                 Security Advisory
                                                       The FreeBSD Project
 
Temat:          Różne błędy w CVS
 
Kategoria:      contrib
Moduł:          cvs
Ogłoszono:      2005-04-22
Podziękowania:  Alen Zukich
Podatne wersje: Wszystkie wydania FreeBSD 4.x
                Wszystkie wydania FreeBSD 5.x do 5.4-RELEASE
Poprawiono:     2005-04-22 18:01:04 UTC (RELENG_5, 5.4-STABLE)
                2005-04-22 18:03:18 UTC (RELENG_5_4, 5.4-RELEASE)
                2005-04-22 18:07:10 UTC (RELENG_5_3, 5.3-RELEASE-p10)
                2005-04-22 18:13:30 UTC (RELENG_4, 4.11-STABLE)
                2005-04-22 18:17:22 UTC (RELENG_4_11, 4.11-RELEASE-p4)
                2005-04-22 18:16:15 UTC (RELENG_4_10, 4.10-RELEASE-p9)
Nazwa CVE:      CAN-2005-0753
 

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

Concurrent Version System (CVS) jest systemem kontroli wersji. Może on być użyty dwojako: lokalnie jak również zdalnie stosując różne metody. W momencie dostępu zdalnego, miejsce docelowe połączenia, uruchamia serwer CVS w pełni odpowiadający na rządania klienta.

II. Opis problemu

W CVS zostały znalezione róznego rodzaju błędy programistyczne. W jednym przypadku, dlugość zmiennej zakowej kopiowana jest do stałej wielności bufora, bez wcześniejszego sprawdzenia tej wielkości; innym błędem jest odwołanie do wskaźnika o wartości NULL, co daje możliwość użycia niezainicjowanych zmiennych, oraz wycieku pamięci.

III. Wpływ

Serwery CVS ("cvs server" lub tryb :pserver:) są podatne na te problemy. Przepełnienie bufora może potencjalnie zostać wykorzystane do wykonania przygotowanego kodu. Inne błędy mogą powodować unieruchomienie uslugi.

IV. Obejście

Brak dla serwerów CVS; Klienci cvs nie są podatne.

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.10]

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:05/cvs410.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:05/cvs410.patch.asc

[FreeBSD 4.11 and 5.3]

# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:05/cvs.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-05:05/cvs.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/contrib/cvs/src/login.c                                     1.3.2.6
  src/contrib/cvs/src/patch.c                                 1.1.1.7.2.7
  src/contrib/cvs/src/rcs.c                                      1.19.2.7
RELENG_4_11
  src/UPDATING                                              1.73.2.91.2.5
  src/sys/conf/newvers.sh                                   1.44.2.39.2.8
  src/contrib/cvs/src/login.c                                 1.3.2.5.2.1
  src/contrib/cvs/src/patch.c                             1.1.1.7.2.6.2.1
  src/contrib/cvs/src/rcs.c                                  1.19.2.6.2.1
RELENG_4_10
  src/UPDATING                                             1.73.2.90.2.10
  src/sys/conf/newvers.sh                                  1.44.2.34.2.11
  src/contrib/cvs/src/login.c                                 1.3.2.4.6.1
  src/contrib/cvs/src/patch.c                             1.1.1.7.2.5.6.1
  src/contrib/cvs/src/rcs.c                                  1.19.2.5.6.1
RELENG_5
  src/contrib/cvs/src/login.c                                     1.8.2.1
  src/contrib/cvs/src/patch.c                                1.1.1.13.2.1
  src/contrib/cvs/src/rcs.c                                      1.27.2.1
RELENG_5_4
  src/UPDATING                                             1.342.2.24.2.4
  src/contrib/cvs/src/login.c                                     1.8.6.1
  src/contrib/cvs/src/patch.c                                1.1.1.13.6.1
  src/contrib/cvs/src/rcs.c                                      1.27.6.1
RELENG_5_3
  src/UPDATING                                            1.342.2.13.2.13
  src/sys/conf/newvers.sh                                  1.62.2.15.2.15
  src/contrib/cvs/src/login.c                                     1.8.4.1
  src/contrib/cvs/src/patch.c                                1.1.1.13.4.1
  src/contrib/cvs/src/rcs.c                                      1.27.4.1 
- -------------------------------------------------------------------------
 

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

iD8DBQFCaUaaFdaIBMps37IRAvkoAJ47xsv+CGE12jJxGRMZrS8nFgx9XQCfVs5W
ZqGIq4p/ylx2yUZvZTjh34o=
=ldk9

-----END PGP SIGNATURE-----

 
© 2008 FreeBSD - Inside
Joomla! is Free Software released under the GNU/GPL License.