Opera 9.25 memory exhaust and 100% CPU exploit
Grudzień 28th, 2007 by aleksander
„The coolest, fastest, and most secure Web browser available” – opera.com
vs
„The top league of global online marketing” – zanox.com
exploit :
open http://www.zanox.com
Who’s fault is it?
UPDATE :
It is a feature, but it’s fixed in Opera 9.50 build 9656 ;)
Podobne wpisy:
Ja rozumiem że Opera to niszowa przeglądarka i że każda strona WWW nie musi być 100% z nią kompatybilna ale warto by sprawdzić czy czasem nasza twórczość przynajmniej jej nie zawiesza ;)
No ładnie. W 9.23 na Win/Lin też jest problem, nawet po kliknięciu Stop zużycie pamięci rośnie. No, ale przynajmniej nie ma restartu komputera, jak w którymś bugu w FF jakiś czas temu ;)
Okazuje się, że jednak nie jest to bug opery, ale strony; co więcej, takie zachowanie jest w pełni zgodne ze specyfikacja dom2 events – „Content that is tested with Gecko or older Safari versions tend to expect only one load event because these browsers do not support load event capture. Such content may fail in Opera because a script that expects to be run only once (for example to initialise the page) may be run hundreds of times.” (http://dev.opera.com/articles/view/event-capture-explained/). Dokładnie to dzieje się z zanox.com, występuje nieskończona pętla niedługo po załadowaniu strony, która w nieskończoność ładuje cały czas ten sam skrypt tworząc nowe event’y zakończenia ładowania tychże skryptów z procedury obsługi poprzedniego eventa. W normalnych warunkach wystąpiłby stack overflow, no ale maszyny wirtualne to nie są normalne warunki :). Tak więc, reasumując — to jest feature, nie bug :)
specyfikacja:
http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-flow-capture
Wszystko już wiemy, ale nie mów że zajęcie 400mb RAM w parę sekund jest zgodne z jakakolwiek specyfikacja ?
mam opera 9.50b, i 100% to norma przy zamykaniu, bamkch proxy i wielu innych, crashe -> codziennosc. :)