{"id":435,"date":"2007-12-28T23:44:37","date_gmt":"2007-12-28T21:44:37","guid":{"rendered":"http:\/\/www.mitternachtshacking.de\/blog\/435-24c3-just-in-time-compilers"},"modified":"2018-05-31T16:47:05","modified_gmt":"2018-05-31T15:47:05","slug":"24c3-just-in-time-compilers","status":"publish","type":"post","link":"https:\/\/www.mitternachtshacking.de\/blog\/435-24c3-just-in-time-compilers","title":{"rendered":"24C3: Just in Time Compilers"},"content":{"rendered":"<p>It&#8217;s so nasty, nasty, nasty &#8230; und die Virtuellen Maschinen wie Java werden in Zukunft sicher mehr. Die beiden \u00d6sterreicher Roland Lezuo und Peter Molnar haben sich in ihrem Vortrag &#8222;<a href=\"http:\/\/events.ccc.de\/congress\/2007\/Fahrplan\/events\/2247.en.html\">Just in Time Compilers &#8211; breaking a VM<\/a>&#8220; intensiv mit der Cacao OpenSource JavaVM besch\u00e4ftigt und eine Reihe von M\u00f6glichkeiten gefunden, aus den Beschr\u00e4nkungen der Virtual Maschine auszubrechen und au\u00dferhalb der Kontrolle eines Security Reference Monitors beliebigen Programmcode auszuf\u00fchren.<\/p>\n<p>Die meisten L\u00fccken die in Cacao gefunden wurden sind <a href=\"http:\/\/en.wikipedia.org\/wiki\/Integer_overflow\">Integer Overflows<\/a> und alle sind wohl Programmierfehler, z.B. wenn 32bit-Code f\u00fcr 64bit-Systeme kompiliert wird und die gr\u00f6\u00dferen Integer nicht ber\u00fccksichtigt.\u00c2\u00a0 Ein weiteres Problem kann darin liegen, dass die Entwickler des JIT-Compilers von den Eigenschaften der Programmiersprache ausgehen und nicht von den M\u00f6glichkeiten im verwendeten Bytecode. Ein Angriff bestand deshalb darin, speziell angepassten Bytecode zu erzeugen, der eine Schw\u00e4che des JIT-Compilers nutzt.<\/p>\n<p>Die Gefahr dieser Angriffe ist durchaus real, in praktisch allen Browsern werken inzwischen eine Vielzahl von Vitual Maschines. Java, Flash, Silverlight, &#8230; und es werden eher mehr. <a href=\"https:\/\/www.flashsec.org\/wiki\/Main_Page\">Fukami<\/a> ist an dem Thema Flash ja schon seit geraumer Zeit dran.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It&#8217;s so nasty, nasty, nasty &#8230; und die Virtuellen Maschinen wie Java werden in Zukunft sicher mehr. Die beiden \u00d6sterreicher Roland Lezuo und Peter Molnar haben sich in ihrem Vortrag &#8222;Just in Time Compilers &#8211; breaking a VM&#8220; intensiv mit der Cacao OpenSource JavaVM besch\u00e4ftigt und eine Reihe von M\u00f6glichkeiten gefunden, aus den Beschr\u00e4nkungen der [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[13,8],"tags":[],"_links":{"self":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts\/435"}],"collection":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/comments?post=435"}],"version-history":[{"count":0,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts\/435\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/media?parent=435"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/categories?post=435"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/tags?post=435"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}