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

PHP 5.3.10 - A javítás javítása

2012.02.03. 11:22 | buherator | 6 komment

A PHP csapata nem rég adta ki a futtatókörnyezet 5.3.9-es verzióját, melyben a híres-neves hash ütközéses támadásra adtak megoldást, a max_input_vars konfigurációs direktíva bevezetésével. Ahogy a név is mutatja, ez az érték szabályozza, hogy maximum hány paramétert lehet átadni egy szkriptnek GET illetve POST paraméterben, az alapértelmezett érték 1000. 

Az új beállításhoz tartozó feldolgozó kód azonban nem sikerült hibátlanra. Ha az átadott paraméterek száma meghaladja az engedélyezettet, az utolsó paraméter pedig egy tömb, a tömb támadó által megadott értéke referenciaként közvetlenül felhasználásra kerül, kódfuttatásra adva ezzel lehetőséget. Magyarul egy DoS sebezhetőséget sikerült távoli kódfuttatássá alakítani, szép munka! :)

PoC itt látható, a PHP 5.3.10 letölthető a php.net-ről.

Címkék: php patch bug

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.

conscience 2012.02.11. 18:09:24

És a PoC kódban az off-by-one feltűnt valakinek? :D

buherator · http://buhera.blog.hu 2012.02.11. 18:35:31

@conscience: Erre gondolsz?

7 for (var i = 0; i < 1001; i++) {

Ha igen, olvass commit logot. JS-ben amúgy elég érdekes off-by-one-ról beszélni.

conscience 2012.02.11. 19:04:40

@buherator: Úgy tudtam, off-by-one alatt nem kizárólag a sebezhetőséget adó ilyen jellegű hibákat, hanem a programozó 'egy lépéssel való tévesztését' magát is értjük. Ezesetben megáll az off-by-one. Vuln nem lesz belőle, de ettől függetlenül még komikus, hogy egy ilyen kódban a szándékozott 1000 iteráció végül 1001-re sikeredik.

buherator · http://buhera.blog.hu 2012.02.12. 01:13:10

@conscience: Az nem úgy "sikeredik", hanem konkrétan így triggerelődik a hiba (még1x ld. commit log)