Atvērtā koda firma izlaiž Internet Explorer ielāpu

Pirms vairāk kā nedēļas parādījās informācija par to, ka Internet Explorer lietotājus ar īpaši izveidotas adreses palīdzību var diezgan vienkārši maldināt un viltus lapas var tikt piedāvātas kā reālas.

The vulnerability is caused due to an input validation error, which can be exploited by including the “%01” and “%00” URL encoded representations after the username and right before the “@” character in an URL.

Successful exploitation allows a malicious person to display an arbitrary FQDN (Fully Qualified Domain Name) in the address and status bars, which is different from the actual location of the page.

Pow komentāros ir iemetis stāsta turpinājumu. The Age ziņu lapā ir atrodama informācija par to, ka kāda kompānija, kas nodarbojas ar atvērtā koda programmatūru ir izlaidusi ielāpu šai Internet Explorer ievainojamībai.

Visi interesenti var iet uz http://security.openwares.org/ un lāpīties, kamēr Microsoft kasa pakausi…

36 thoughts on “Atvērtā koda firma izlaiž Internet Explorer ielāpu

  1. Aidus

    Man poha.Šitāda lāpīšanās laikam te nederēs 🙁 Būtu jau labi ka paģiru rītā novelc kautko no kautkurienes un esi salāpījies }:

    Atbildēt
  2. --

    Tie testa piemēri arī ļoti labi strādā ar Firebird..
    http://www.paypal.com%01@security.openwares.org/Paypal.htm
    WinXP, Mozilla Firebird 0.7

    Atbildēt
  3. aiai

    –, Tu laikam nesaprati šā cauruma būtību. nesapačots ie iekš adress bar rādīs tikai to paypal.com, tas tā, ja nu kādas uztveres probēmas.

    Atbildēt
  4. --

    runa iet par sho:
    http://www.theage.com.au/articles/2003/12/12/1071125632006.html

    http://www.mozillazine.org/talkback.html?article=4078
    (aiai: nevis address bar, bet status bar)

    Atbildēt
  5. ui

    vispar jau shis “ielaps” pats izskatas biistams. papeetot taa izejas kodu, faila IETray.cpp atrodam intrsantas lietas:
    char surl[256];
    strcpy(surl,”http://www.openwares.org/cgi-bin/exploit.cgi?”);
    char sFake[256];
    char sTrue[256];

    strcat(surl,sFake);
    strcat(surl,”&”);
    strcat(surl,sTrue);
    diemzhel nebija vairak laika, lai to kodu peetiitu, tachu jau pec shiem fragmentiem izskatas, ka tur iespejams elementars buffera exploits… mozh kaads c++ guru var pieslegties?!

    Atbildēt
  6. Delerium

    Nav grūti konstatēt, ka tas ielāps nav bīstams – Tu vismaz pārbaudīji, ko dara tas exploit.cgi uz openwares servera? Tas skripts informēt lietotāju par spoofinga faktu.
    Kā Tev šķiet, exploitus source kodos meklē pēc atslēgas vārda “exploit” ?

    Atbildēt
  7. Pow

    Delerium, ko tu bezjeegaa vari d*st. Tu c esi kodeejis kaadreiz? zini kas ir buffer overflow?
    ui, nav laika skatiities kas notiek …, bet izskataas, ka elementaari sanaak buffer overflow, ja strlen(sFake) + strlen(sTrue) > 256 – taa const url stringa garums.

    Atbildēt
  8. Delerium

    Pow, nevajag jau uzreiz kļūt stulbam un lamāties. Ja jau esi eksperts, tad Tev nevajag daudz laika, lai apskatītu pārdesmit rindiņas koda.

    Atbildēt
  9. ui

    1) ir jau tai sourcee pa vidam (kur liku daudzpunktu) lietots strlen() ar =’’, tachu mani aizdomigu dara strcat() nevis strncat() lietoshana un sizeof() nelietoshana…
    2) tomer negribas ticet, ka security experti pashi atstatu expliotam vietu

    Atbildēt
  10. Pow

    Delerium, es maacos no tevis, jo tavs teksts uz kuru es atbildeeju izklausiijaas peec uzbrauciena cilveekam, kas piedaavaaja publikai savas pamatotaas aizdomas uz koda liikumu. Toties tu, vispaar neko neceerot par teemu, izsaki savu beernudaarza liimenja uzbraucienu – Kā Tev šķiet, exploitus source kodos meklē pēc atslēgas vārda “exploit” ?
    ui, ieej slashdot komentos, tur cilveeki arii to ir atradushi un ir vienaas domaas par to ka kods reaali sakko. taa ka security eksperti no vinjiem (openwares.org) nekaadi labie nesanaaks 🙂
    bet ideja jau nebija par teemu – “tagad aidaa visi likt sho ielaapu”, bet gan par faktu vispaar, jo tas nenotiek biezji, kad nemicrosoftisti izlaizj ielaapus microsoft kodam (iespeejams paarkaapjot DMCA, microsoft EULA un veelsazinko).

    Atbildēt
  11. ui

    man arii sakuma bij jautajums, vai ir labi pachot M$a DLLus. bet, cik paspeju izpetit, tad imho shis pieregjistrejas ka kautkads URLu partverejs, kas tur meklee “@&”. tadu partvereju/adwaaru jau pilna pasaule, diezvai to vajag licenceet…
    aciis iekrita shis koments no slashdot: Next time there’s a hole in MSIE so big you can drive a cart through it, MS will release a patch in a week and say: “See! We told you we’re more secure than open source. We have a patch out already and openwares.org hasn’t yet!”
    iespejams, ka par aatru bus bazuunets, lai visi liek shito ielaapu…

    Atbildēt
  12. ui

    piekritu Benvenuto, ka razhotaja (M$) lielaapiem mes vispar nedabujam sourci un nezinam, ko jamaa exes dara! bet shaja gadijuma, JA to bufferi var exploiteet, tad ar tadu ielaapu var nodariit lielaaku skaadi, nekaa vienkarshi redzot nepareizu urlu…

    Atbildēt
  13. Delerium

    Ok, es kļūdījos, jo nepareizi uztvēru ui komentāru un norādi uz exploit.cgi, neiedziļinoties būtībā, bet praktiski pārbaudīju, ka patch novērš problēmu. Tikai pēc tam paskatījos pašu source, jo c eksperts nēesmu, bet dažas funkcijas atpazīstu.
    Jebkurā gadījumā – lai arī patch nav perfekts, tad es parastam userim labāk uzliktu tādu, nekā atstātu vispār bez, jo:
    1) tas uzskatāmi pabrīdina par spoofingu (tiesa, ne vienmēr)
    2) man vairāk šķiet, ka iespējamais buffer overflow kaitīgums šajā gadījumā ir niecīgs, jo URL sakums tomēr norādīs uz openwares.org
    3) spoofojot iekārojamus domēnus tipa paypal.com, microsoft.com utt. grūti nejauši uzrauties uz overflow, jo domēnu garums ir ierobežots.
    Varēji mācīties no manis nelamāties, nevis attīstīt “nāvīgu uzbraucienu” detektēšanas spējas.

    Atbildēt
  14. Delerium

    to ui:
    Kamēr kāds izdomās, VAI VAR eksploitēt, tikmēr var uzcept 100 un 1 paypal.com vai freexbox.microsoft.com saitu.

    Atbildēt
  15. ui

    Delerium, davai nekoncentrejamies uz cilvekiem, bet uz problemu! 😉
    manuprat, ja caur to partvereja DLLu iziet visas izsauktaas (tatad, ne tikai apzinati uzspiestaas, bet ari bildes, iframe etc) URLas, tad ir ljoti iespejams uzrauties uz shaadu paaraak garu, kas ari var but atsutita pa mailu, vai kaa citaadi redirekteeta, ne?

    Atbildēt
  16. Delerium

    Vispār te jau var pārliecināties, ka sapačots IE nosprāgst:
    http://www.heise.de/security/dienste/browsercheck/demos/ ie/e5_18.shtml

    Bet es laikam labāk pārdzīvotu IE crashu, nekā faktu, ka esmu ievadījis nepareizā saitā savu VISA informāciju.

    Atbildēt
  17. coolynx

    Ņjā, bet jautrākais visā šajā pasākumā ir tas, ka neviens no jums nelieto ēzelīti. Bet apspriest apspriež visi 🙂

    Atbildēt
  18. ndqc

    tas nav patch bet gan modulis kas pieregistrējas kautkur api un paartver url’us un meklē tos %01 vai kā tur. un tad redirektē uz to openwares cgi skriptu. un tauta slašdotā teicās ka atradusi tur pat memory leaku. vispār kautkas stipri līks. bet interesanti kā uz to reaģēs m$.

    Atbildēt
  19. ui

    pag CLX, mani useri eezeli diemzhel lieto 🙁 tachu es labak stingri painformeju, ka lai visas svarigas URLas raksta ar roku+Enter, nekaa instaleeju shaadus pachus…

    Atbildēt
  20. Lupus

    iekš Full-Disclose (secjuriti mailinglists):
    I’d say it’s worse than that. From a quick look at the source, I’d say
    this one may actually be malicious. (Stupid too, but it looks
    malicious)…
    In the BeforeNavigateEvent() funcion of IETray.cpp, the URL is first
    truncated to 256 bytes:
    char *dest = (char *)malloc(256*sizeof(char));
    WideCharToMultiByte( CP_ACP, 0, (BSTR)url->bstrVal, -1,
    dest, 256, NULL, NULL );
    Safe enough, I suppose, though it will likely lead to a sub-optimal
    browsing experience. Then, if one of the “malicious” characters is
    found, the allocates and populates the following buffer:
    char surl[256];
    strcpy(surl,”http://www.openwares.org/cgi-bin/exploit.cgi?”);
    At the end of the function, determining what the “real” and “fake” URLs
    were, the code unsafely appends them to the buffer:
    strcat(surl,sFake);
    strcat(surl,”&”);
    strcat(surl,sTrue);
    Copies the result to another string:
    MultiByteToWideChar( CP_ACP, 0, surl, -1,
    url, 256 );
    And proceeds to send it to the authors of the code (or whomever controls
    http://www.openwares.org/):
    m_smtWB->Navigate(url,0,0,0,0);
    Summary: Not only is there a stupid, possibly exploitable, buffer
    overflow here, but the place I’m seeing it is in a section of the code
    whose main purpose appears to be submitting information about what you
    browse back to the code’s authors. I’d say this is malicious… the user
    is certainly not warned of this prior to downloading the patch. Since I
    never executed it, I have no idea of whether or not they are warned by
    an installer. Call it a trojan, call it spyware, but don’t execute it.

    Atbildēt
  21. ui

    Lupus, par to (ka ne vienmēr nozīmē) jau bija citeetaja komentaa no slashdota. tb, pasham M$am ir izdeviga shada greiza “pacha” paradishanaas, lai pec tam varetu teikt, ka luuk, mes jau bridinajam, ka opensource nav labaaks… tomer, nedomaju, ka pats Bills sho “ielaapu” ir uzkodeejis, jo tajaa ir paaraak daudz stupidity…

    Atbildēt
  22. ui

    brrr. salidzinot sho kodu ar iepriekshejo, varetu teikt, ka tagad ir parrakstijushi uz C++ (agrak bija vairak C) lidz ar to, vispar neko vairs nevar saprast 😉 uzticiba shim kantorim ari zudusi…

    Atbildēt

Atbildēt uz komentāru -- Atcelt atbildi

Tava e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti kā *