Tweets by @buherablog
profile for buherator at IT Security Stack Exchange, Q&A for IT security professionals

A BitBetyár Blog

Túljártál a nagyokosok eszén? Küldd be a mutatványodat! (e-mail a buherator gmailkomra jöhet)

Full-Disclosure / Névjegy / Coming out


Promó

H.A.C.K.

Címkék

0day (110) adobe (87) adobe reader (21) anonymous (26) apple (60) az olvasó ír (49) blackhat (20) botnet (22) bug (200) buherablog (44) buhera sörözés (39) bukta (49) deface (38) dns (22) dos (29) esemény (82) facebook (26) firefox (64) flash (33) gondolat (31) google (59) google chrome (36) hacktivity (37) hírek (117) incidens (224) internet explorer (88) iphone (35) java (50) jog (22) kína (21) kriptográfia (68) kultúra (21) linux (24) malware (43) microsoft (142) móka (48) mozilla (23) office (26) oracle (40) os x (43) patch (197) php (20) politika (31) privacy (58) programozás (22) safari (34) sql injection (62) windows (85) xss (77) Címkefelhő

Licensz

Creative Commons Licenc

MySQL/MariaDB autentikáció megkerülés

2012.06.11. 16:29 | buherator | 3 komment

Sergei Golubchik egy igen tanulságos MariaDB/MySQL hibáról számolt be nem rég az oss-security listán. A probléma lényegében jelszó nélküli hozzáférést enged a sebezhető adatbázisszerver installációkhoz. A hiba gyökere az, hogy a fejlesztők nem számoltak azzal, hogy a memcmp() függvény néha a [-128,127] intervallumon kívüli értéket is visszaadhat. Ez az érték az autentikációhoz használt kihívás-válasz hash-ek összevetésére szolgáló check_scramble() függvény visszatérési értékeként my_bool-ra, azaz char-ra kasztolódik, így akkor is felveheti a 0 értéket, ha a memcmp() sikertelen volt, vagyis a hash-ek nem egyeztek meg. Skatulya-elv alapján 300 próbálkozásból egyszer jó eséllyel előjön az anomália, ennyi próbálkozás pedig pillanatok alatt lejátszható:

for i in `seq 1 1000`; do mysql -u root --password=tokmindegy -h 127.0.0.1 2>/dev/null; done

Öröm az ürömben, hogy a probléma nem érint minden csomagot illetve platformot. Az Ubuntu, az OpenSUSE és a Fedora 64-bites változatai biztosan érintettek. HD Moore számításai szerint tízezrével lehetnek sebezhető MySQL kiszolgálók a netre lógatva.

A MySQL az 5.1.63-as illetve 5.5.24-es verziókban, a MariaDB a 3144-es revízióban javított.

Címkék: patch bug mysql mariadb

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Robika 2012.06.15. 00:10:16

Mi kell még ehhez, hogy reprodukálni lehessen?

Probáltam ubuntun (5.1.61-0ubuntu0.10.10.1) és debianon (percona 5.1.50-rel11.4), de 1000 próbálkozásból nem engedett be.

domi007 2012.06.15. 01:20:48

@Robika: idézet a linkelt eredeti levélből:

Whether a particular build of MySQL or MariaDB is vulnerable, depends on
how and where it was built. A prerequisite is a memcmp() that can return
an arbitrary integer (outside of -128..127 range). To my knowledge gcc
builtin memcmp is safe, BSD libc memcmp is safe. Linux glibc
sse-optimized memcmp is not safe, but gcc usually uses the inlined
builtin version.

As far as I know, official vendor MySQL and MariaDB binaries are not
vulnerable.