Tarkistettaessa MySQL e-matters -komponenttia havaittiin useita ongelmia:
- COM_TABLE_DUMP: signed/unsigned-ongelma
-
SQL-pyynnöstä otettiin kaksi arvoa signed-muuttujiksi, jotka valittiin
unsigned-muuttujiksi tarkistamatta mahdollisia negatiivisia arvoja. Koska
tulokseksi saatuja numeroarvoja käytettiin memcpy()-toimintoon tämä saattoi
johtaa muistin korruptoitumiseen.
- COM_CHANGE_USER: salasanan pituuden käsittely
-
Tunnistettaessa toinen käyttäjä uudelleen MySQL ei suorittanut kaikkia
tarkistuksia jotka tehdään alkutunnistuksessa. Tämä synnytti kaksi ongelmaa:
- se mahdollisti yhden merkin pituisen salasanan pakottamiseen
(korjaus kirjautumistapahtumaan tehtiin helmikuussa 2000), jota kautta
käyttäjän oli mahdollista saada root-oikeudet tietokantaan
- oli mahdollista aiheuttaa password-puskurin ylivuoto ja pakottaa
palvelin suorittamaan mielivaltaista koodia
- libmysqlclient: read_rows()-ylivuoto
-
Käsiteltäessä SQL-palvelimen palauttamia rivejä, mahdollisia ylipitkiä rivejä
tai päättäviä NUL-merkkejä ei tarkistettu. SQL-asiakkaita on mahdollista
käyttää hyväksi tätä kautta mikäli ne ottavat yhteyden alttiiseen
MySQL-palvelimeen.
- libmysqlclient: read_one_row()-ylivuoto
-
Käsiteltäessä SQL-palvelimen palauttamaa riviä, returned-kentän kokoja ei
tarkistettu. SQL-asiakkaita on mahdollista käyttää hyväksi tätä kautta mikäli
ne ottavat yhteyden alttiiseen MySQL-palvelimeen.
Ongelma on korjattu Debian GNU/Linux 3.0-jakelun (woody) versiossa
3.23.49-8.2 ja Debian GNU/Linux 2.2-jakelun (potato) versiossa 3.22.32-6.3 .
Suosittelemme päivittämään mysql-paketit mahdollisimman pian.