• mogyi925
    #22
    Figyu kishaver: hol, mikor és ki állított olyat, hogy a bug nem létezik? A tisztánlátás kedvéért:

    1. Nem hív le senki semmit textboxba javascriptből. A FF kitölti a név/pass formot, és submitolja, te pedig szerveroldalon megkapod, mit írt be a böngésző. Sehol semmilyen JS nem kell hozzá. Az kell, hogy te a támadó weboldalon lemásold egy másik weboldal bejelentkezőformját, és tárold a szerveren a kapott adatokat. Jobb fórumoknál ez a lehetőség kizárva, pont a BBCode miatt. Pl. itt SG.hu-n nem lenne lehetőségem a te SG-s jelszavad ellopni, csak ha először készítek egy tükröt az SG.hu-ról, és ráveszlek, hogy nézd meg. Véletlenül is megtörténhet, hogy két teljesen különböző lap egymástól függetlenül ugyanazt a bejelentkező formot használja, pl. a kismillió PHPNuke alapú portál, ezeknél jelenthet hibát ez a bug, de nem a 2.0 előtti FF változatoknál. Különben már régen felfedezték volna.

    2. "másrészt, ha bbcode is van, akkor is az oldal üzemeltetője (vagy bárki aki lapot tud késziteni rá) ellophatja az összes jelszavadat"
    Az oldal üzemeltetője bug nélkül is megnézheti a jelszavadat, habár jobb helyeken minimum saltolt md5-tel tárolják a jelszavakat, ezért is látsz sok oldalon jelszó-újragenerálást emlékeztető helyett. A jelszavadat nem akkor lophatják el, _ha firefoxozol_, hanem ha megjegyezteted vele őket. Én pl. az ilyen feature-öket alapból kikapcsolom minden böngészőben. Ha biztonságos böngészőt szeretnél, használj links-et.

    "ügyes fiú, meg is válaszoltad magadnak, hogy hülyeségeket irogatsz...
    ajax cross domain bug (felfedezve) még nincs firefoxban, tehát ajax kilőve."

    Akkor nézzük meg mégegyszer, ki mit írt. Te:

    "Akármilyen oldalról (lehetne az éppen ez a forum is) van rajta egy láthatatlan rész (akár frame) amiben ott vannak az adatokat bekérő textboxok (de te nem látod) és az oldal irója (vagy éppen valamelyik felhasználó, ha a postjával be tud csempészni valami kódot) egy kis javascriptel le tudja hivni a textboxokba az összes elmentett nevedet-jelszavadat a firefox-ból és elküldeti őket a saját szerveré"

    Tehát azt állítod, hogy egy hidden textboxba JavaScript-tel be tudod tölteni a user összes tárolt jelszavát, és submitolhatod a szerverre. Erre én:

    "JavaScripttel honnan/hogyan hívod le textboxba a kódot? (Minek ide a textbox? Mehetne egyből fel a szerverre a név/pass páros AJAX-on - mgj: csak domainen belül.) És utána mit csinálsz vele?"

    Kicsit részletesebben: JavaScripttel jelszót lopni az automatikus kiegészítéssel 1 módon lehetne: betölti a FF az oldalt, megtalálja a bejelentkezőformot, és a megfelelő adatokkal submitolja (a hiba ott van, hogy csak a form szignatúrát veszi figyelembe, a domaint nem), JS-ből hozzáfűzhetsz egy onsubmit eseménykezelőt az adott formhoz, amelyben egy return false-szal máris megállítottad a form elküldését az eredeti szerverre, viszont a jelszó és a név bennevan. Kiolvasod JS-ből, majd egy XMLHTTPRequest-en keresztül elküldenéd a saját szerveredre, ha nem lenne letiltva a cross-site scripting, de sajnos akkora exception-t dob egy ilyen kód, mint a ház. Magyarul nem tudsz vele mit kezdeni. Ezzel csak arra szeretnék rávilágítani, hogy a hiba kihasználásához gyakorlatilag NINCS ÉRTELME JavaScriptet használni, és nem is kell. A FF biztonsági rése a HTML-Injection ellen védetlen lapokat érinti (de az ilyen lapok a többi böngészőt is meg tudják trükközni), illetve akkor jelent még gondot, ha két oldalnak egyforma a bejelentkezőformja (pl az egyik egy phishing-site).

    Változatlanul arra kérlek, ne szakértsél, ha nem értesz hozzá, vagy írj egy olyan javascriptet, ami a FF szóban forgó sérülékenységét használja ki, akkor bocsánatot fogok kérni. De ilyen JavaScriptet sajnos nem tudsz nekem mutatni.