Ja, és tegyük hozzá, hogy a FF fenti sérülékenysége csak olyan oldalon használható ki, ahol a támadni kívánt user pontosan 1 jelszót mentett el, illetve csak az adott domainen belül lehet alkalmazni, ezen feltételek együttállása esetén viszont észrevétlenül, és majdnem teljesen automatikusan (JavaScript kell hozzá, ha azt akarjuk, hogy a user ne tudjon róla). Tapasztalataim szerint a 2.0 elõtti utolsó FF, az 1.5.0.8 nem érintett a hibában.
A hibához tehát mindenképpen szükség van arra, hogy egy adott domain alá a támadó tetszõleges HTML-kódot tudjon juttatni, ha viszont ezt megteheti, akkor gyakorlatilag minden elõvigyázatlan felhasználótól ki tudja csalni a jelszavát böngészõhiba nélkül is (elég hozzá egy, az eredeti bejelentkezõlap pontos másolata, amelynek onsubmit eseményéhez egy olyan JavaScript eseménykezelõt rendelünk, amely a háttérben eljuttatja a támadóhoz a begépelt jelszót, majd továbbengedi az ûrlapot az eredeti domainre - ennek minden JS-et támogató grafikus böngészõ bedõl).
Szvsz az is elõvigyázatlan felhasználó, aki egyáltalán használja a jelszavak megjegyzése funkciót bármelyik böngészõben, ezek ugyanis többnyire titkosítatlanul pihennek valahol a vinyón, így tehát bárki megnézheti, aki a géphez hozzá tud férni.
A jelszót nem is lehet benne látni. Mindenesetre legyen elég annyi, hogy el lehet lopni bárki felhasználónevét (azaz nem kell hozzá jelszó), és megváltoztatni az illetõ jelszavát. Természetesen aki látott már webet közelebbrõl (webmesterek pl), innentõl el tudja képzelni, hogy mûködik a dolog, aki meg nem, annak egyelõre legyen elég ennyi. Ha most ide leírnám, hogyan kell felhasználót lopni a fórumból, szerinted hányan próbálnának meg minimum moderátor accountokat szerezni?
Küldtem az SG-nek levelet, amint javítják, leírom részletesen, hogy mi volt a hiba (mmint ide, nekik már megírtam). Legyen elég annyi, hogy a saját gépemen beléptem a fórumra, ezt követõen egy másik gépen tudtam használni az accountom, és persze a másik gépen nem jelentkeztem be (és az illetõ géppel nem is vagyunk egy hálózaton).
Egyébként kértem már a moderátorokat, hogy a 23-24-25 üzeneteimet, de ezek szerint eddig nem történt semmi...
mogyi, nem értem, ez csak az aktuális sg-s adatait látja, pedig a böngészõm full tele van más domain cookie-jaival, jelszavaival (beírtam pár dummy-t)... A nem-sg-seket nem látja :(. Mit csinálok rosszul?
Csak annyit jegyeznék meg, hogy nem kell semmiféle böngészõhiba, se vírus, se más, hogy gyakorlatilag bármelyik elõvigyázatlan SG.hu fórumozó accountját el tudd lopni...
Ezt írtam én is. Az a fajta lopási eljárás akkor mûködik/mûködhet, ha a név/jelszó mezõk kitöltésre kerülnek, teljesen mindegy, hogy ez automatikusan, vagy kézzel beírva történik. Az, hogy valakinek az összes jelszavát egyszerre ellopják ezzel a módszerrel, az egyenesen baromság.
A cikkben leírt jelszólopásos módszer akkor is mûködik, ha egy oldalhoz több felhasználónév is tartozik? (Mert akkor nekem nem tölti ki automatikusan, mert választanom kell.)
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.
"Egyébként az a link a cikkben is szerepel, láttam. Nem vitt el egy jelszavamat sem. Együgyûkém... "
együgyûkém, tudod mi az a proof of concept? ennek nem feladata egyetlen jelszavadat sem ellopni, csak megmutatja, hogy mûködik az eljárás... (legalábbis firefox-on, ie-n nem) És mivel - firefox esetén - semmi köze nem kell legyen a támadó kód domainjének az ellopott user domainjéhez, igy bizony az összes jelszót el tudja lopni.
Saját forrást adj, mielõtt hülyeséget írsz. Egyébként az a link a cikkben is szerepel, láttam. Nem vitt el egy jelszavamat sem. Együgyûkém...
Itt lehet kipróbálni, hogy kinek milyen is böngészõje... FF-on röhögve viszik a jelszavad, ie alatt nem...
Írj/mutass már egy példát, hogy ezt miképpen teszed meg! Pláne úgy, hogy az _összes_ letárolt név/jelszót ellopod. Ha ezt megtetted, utána hajlandó vagyok elhinni. De addig ez üres fecsegés.
"Az a honlap egyébként már helybõl rossz, ahol HTML-t lehet közvetlenül beírni, nem véletlenül találták ki a BBCode-ot."
egyrészt a kutyát nem érdekli a bbcode, kismillió nem bbcode-os oldal van és ezeken firefox-on megszivtad, 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, ha firefoxozol. Szóval ne szakértsél butaságokot... (myspace-en nincs bbcode, okoska?)
"egybõl fel a szerverre a név/pass páros AJAX-on - mgj: csak domainen belül"
ü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.
"JavaScripttel honnan/hogyan hívod le textboxba a kódot?"
mivel a rejtett form ugyanazon a domainen van/lehet, simán lehivom az adatokat js-el.
Használjatok Roboformot, az csak akkor tölti ki az ûrlapot, ha megengeded neki. (csak három hónapig ingyenes vigyázat)
AZ FF 3.x-et érinti a dolog? Láttam van belõle Alpha verzió ...
Milyen JavaScript? Tudtommal HTML-injection-ön keresztül lehet a hibát kihasználni, például egy rejtett frame-mel, de csak ha az adott oldalhoz pontosan 1 név/jelszó páros tartozik. Az a honlap egyébként már helybõl rossz, ahol HTML-t lehet közvetlenül beírni, nem véletlenül találták ki a BBCode-ot.
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? Ha meg te sem érted, mit beszélsz, ne szakértsél, pls, köszi.
nem érted a lényeget. Itt nem phising oldalakról van szó. 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é (mégcsak nem is az adott oldalt kiszolgáló szerverre). Ez igen durva dolog. Aki ie-t használ az annyival védettebb, hogy csak azt a nevet-jelszót tudja lenyúlni a rosszfiu ami az éppen látogatott oldalé. Tehát, ha itt az sg-n lenne ilyen becsempészve, akkor a firefoxosoktól az összeset elvinné (ebankingtól a webmail-ig) ie esetén csak az sg-s bejelentkezésedet tudná ellopni.
Automatikusan csak akkor tölt ki jelszót a FF, ha az aktuális oldalhoz csak 1 adat (n/p) tartozik. Ha már legalább 2 van, akkor nem automatikus, hanem ki kell választani azt, amit éppen használni akar az ember. De ez egyébként tökmindegy, hogy automatikus-e vagy sem, ha hamis oldalra kerül. És ha hamis oldalra kerül, akkor már tökmindegy, hogy ez automatikus kitöltéssel, vagy éppen kézzel való beírással történik. Nem értem a cikkben lévõ problémát. Ha ez a cikk azt akarná kidomborítani, hogy nem mûködik jól az adathalászat elleni megoldás, akkor oké, de annak semmi köze az automatikus kitöltéshez. Egyébként meg engem többszörösen sem érint, mert az adathalászat elleni védelmet nem használom, és közösségi oldalakra meg egyébként sem vagyok beregisztrálva, számomra semmit nem nyúltanak :)
Okos usernek elsõ dolga, hogy kikapcsolja a jelszavak eltárolását. A buta user meg így járt :D
igazából az jóval nagyobb gáznak tartom, amit mesterjelszó kapcsán mûvelnek az ff-ben. ha nem állítasz be semmit, akkor ugye lehívható az összes jelszó/lap. ha meg igen, mindig kéri a mesterjelszót, ha bármilyen oldalra mész fel, amihez tárolt jelszót. namost ha ugye van vmi szép trójai/keylogger, akkor pillanatok alatt kideríthetõ mi is lehet. nesze neked brute force átták. ez ami totálisan el van cseszve, nem az h kideríthetik a blogod jelszavát...
Mondj egy olyan hírt, ami megjelenése után mondjuk egy héttel még hír...