Java - kolejne luki

0

Witam,
Kolejne doniesienia o lukach w javie, czy myślicie że mają one wpływ na to że firmy przestaną korzystać z oprogramowania napisanego w javie i będą wybierać inna technologię ?

0

Windows przez lata był dziurawy jak sito (przy typowym użytkowaniu), a jakoś firmy z niego masowo nie rezygnowały. Dziury trzeba załatać, nawet Linux nie jest szczelny.

4

no, na pewno zrezygnują, zainwestują lata czasu i niewyobrażalne (w skali świata) pieniądze na przepisanie całego swojego softu i/lub zmianę środowisk produkcyjnych/testowych/deweloperskich, a setki tysięcy programistów przekwalifikują się ot-tak.

0

Ale jednak Apple wyłączył javę na makach, taka prawda.

2

Po pierwsze Java to jest obecnie głównie backend, a te dziury tego nie dotyczą. Dziury dotyczą tylko uruchamiania niezaufanego kodu.
Po drugie dziury w przeglądarkach i pluginach przeglądarek były, są i będą. Trzeba łatać i tyle.

1
Wibowit napisał(a):

Windows przez lata był dziurawy jak sito (przy typowym użytkowaniu), a jakoś firmy z niego masowo nie rezygnowały. Dziury trzeba załatać, nawet Linux nie jest szczelny.

Liczba exploitów na Windows to pikuś w porównaniu z liczbą exploitów na Javę. Obecnie 50% WSZYSTKICH exploitów to Java (na drugim miejscu jest acrobat reader 25%). Gdzieś w poniżej 1% są exploity na explorera. Exploity na jądro Windowsa to całkowita rzadkość. Statystyki wg Kasperskyego (http://www.securelist.com/en/analysis/204792250/IT_Threat_Evolution_Q3_2012). Exploity w Javie pisze się prosto (dzięki zwalonemu Secuirty Modelowi) i do tego są one przenośne i stabilne co się bezpośrednio przekłada na zyski dla twórców malware'u.
Czy to jakoś wpłynie na popularność Javy? Wątpie - exploitowane są głównie aplety, które od dawna zdychają. A Java to przede wszystkim server side.

4
0x200x20 napisał(a):

Obecnie 50% WSZYSTKICH exploitów to Java (na drugim miejscu jest acrobat reader 25%).

A to ciekawe... czyli jak napiszę 1000 programów wykorzystujących na 1000 sposobów jedną dziurę... to będę miał 1000 exploitów? Bo chyba na takiej zasadzie ta statystyka? była cały czas jedna dziura, której nikt nie załatał (aby tylko ją ukrywali, w nadziei nie wiem na co)

0x200x20 napisał(a):

Exploity w Javie pisze się prosto
Nie wiem nawet jak to zaadresować...

0x200x20 napisał(a):

i do tego są one przenośne i stabilne co się bezpośrednio przekłada na zyski dla twórców malware'u.
Ah, tak, przenośne, stabilne, potrafią wyłączyć lodówkę, odkręcić kran i sprawić, że przypalisz jajecznicę.
W Oraclowej implementacji był błąd - na Linuksie domyślna to OpenJDK, i jak testowałem te exploity, tak żaden jakoś mi na OpenJDK nie odpalił.

Z tym nagłasnianiem wszędzie exploita to paranoja... załatali go w końcu i po sprawie. A tydzień później znaleziono dziurę we flashu, łup, cisza... załatali, nawet nikt nie zauważył, że 0day był. W Chrome ktoś znalazł dziurę i też nie było [CIACH!] o deinstalacji Chroma... po prostu opublikował ją dopiero po załataniu.

A popularnośc Javy dzięki temu exploitowi, to może spaść jedynie wśród debili. (co prawda, niestety typowy user to debil)

0

"Gdyby murarze budowali domy tak,
jak programiści piszą programy,
to jeden dzięcioł zniszczyłby całą cywilizację."

Nie ma takich zabezpieczen, ktorych nie da sie obejsc, po prostu jedne wymagaja mniej czasu inne wiecej.

4

A to ciekawe... czyli jak napiszę 1000 programów wykorzystujących na 1000 sposobów jedną dziurę... to będę miał 1000 exploitów? Bo chyba na takiej zasadzie ta statystyka? była cały czas jedna dziura, której nikt nie załatał (aby tylko ją ukrywali, w nadziei nie wiem na co)

Tak - dokładnie na takiej zasadzie działa ta statystyka. I ta statystyka mówi też jaka jest szansa, że jeśli użytkownik natrafi na exploita to będzie to java.
I można sobie gadać, że inny soft ma więcej dziur. Tylko że nawet jeśli tak jest - to twórcy exploitów ich nie wykorzystują na tak masową skale jak ma to miejsce w przypadku Javy.

Exploity w Javie pisze się prosto
Nie wiem nawet jak to zaadresować...

Widziałeś kiedyś jakiegoś exploita w Javie i exploita natywnego? Obecnie, żeby napisać exploita natywnego trzeba obejść:

  • ASLR
  • DEP
  • SAFESEH
  • SEHOP
  • Stack Canaries
  • sandboxa (jeżeli aplikacja używa sandboxa, jak np. Chrome)
  • inne zabezpieczenia jak chociażby EMET
    Dziury wyszukuje się dłubiąc w assemblerze.
    Żeby napisać exploita na Javę wystarczy obejść sandboxa Javy. Dziur szuka się w kodzie Javowym, ewentualnie w kodzie OpenJDK. Nie ma potrzeby dłubania w assemblerze, pisania shellcodów, przebijania się przez niższe warstwy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1