{"id":798,"date":"2008-12-28T16:42:50","date_gmt":"2008-12-28T15:42:50","guid":{"rendered":"http:\/\/www.mitternachtshacking.de\/blog\/798-25c3-vulnerability-discovery-in-encrypted-closed-source-php-applications"},"modified":"2009-02-06T00:10:26","modified_gmt":"2009-02-05T23:10:26","slug":"25c3-vulnerability-discovery-in-encrypted-closed-source-php-applications","status":"publish","type":"post","link":"https:\/\/www.mitternachtshacking.de\/blog\/798-25c3-vulnerability-discovery-in-encrypted-closed-source-php-applications","title":{"rendered":"25C3: Vulnerability discovery in encrypted closed source PHP applications"},"content":{"rendered":"<p><a href=\"http:\/\/events.ccc.de\/congress\/2008\/Fahrplan\/events\/2678.en.html\">Stefan Esser<\/a> ist wahrscheinlich einer der besten PHP Security Spezialisten, die es gibt. Bekannt wurde er insbesondere durch einen <a href=\"http:\/\/www.php-security.org\/\">Month of PHP Bugs<\/a>, als er jeden Tag eine neue PHP Sicherheitsl\u00fccke ver\u00f6ffentlichte.<\/p>\n<p>\u00dcbersicht der Produkte<\/p>\n<ul>\n<li>ZendGuard<\/li>\n<li>onCube PHP Encoder<\/li>\n<li>Source Guardian (unter verschiedenen Namen)<\/li>\n<\/ul>\n<p>\u00dcbersicht der Techniken<\/p>\n<ul>\n<li>PHP Bytecode Encryption<\/li>\n<li>Obfuscation<\/li>\n<li>Anti-Fuzzing Protection<\/li>\n<\/ul>\n<p>Der PHP Bytecode besteht aus: Opcode, Result(-Operand), Operand 1, Operand 2, Extension, PHP Source Code Line Number. Insbesondere vergessen einige Encrypter, die Source Code Line Number zu entfernen. Das erleichtert sp\u00e4ter eine Zuordnung und Analyse. In der ZendEngine gibt es f\u00fcnf Operand-Typen: CONST, TMP (temporary variable), VAR, CV (compiled variable) und UNUSED. Der Executor f\u00fchrt den Bytecode aus, dabei hat jeder Opcode mit jedem Operand-Typen seinen eigenen Opcode-Handler.<\/p>\n<p>Stefan Esser hat sich umfangreich mit allen M\u00f6glichkeiten besch\u00e4ftigt, verschl\u00fcsselten PHP-Bytecode wieder zu decrypten. Seine verwendeten Techniken sind recht cool aber wie bei einigen anderen Vortr\u00e4gen hat das f\u00fcr mich leider keine echte praktische Relevanz. Stefan Esser plant, seine Software im Januar zu ver\u00f6ffentlichen<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Stefan Esser ist wahrscheinlich einer der besten PHP Security Spezialisten, die es gibt. Bekannt wurde er insbesondere durch einen Month of PHP Bugs, als er jeden Tag eine neue PHP Sicherheitsl\u00fccke ver\u00f6ffentlichte. \u00dcbersicht der Produkte ZendGuard onCube PHP Encoder Source Guardian (unter verschiedenen Namen) \u00dcbersicht der Techniken PHP Bytecode Encryption Obfuscation Anti-Fuzzing Protection Der PHP [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[13],"tags":[],"_links":{"self":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts\/798"}],"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=798"}],"version-history":[{"count":0,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/posts\/798\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/media?parent=798"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/categories?post=798"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mitternachtshacking.de\/blog\/wp-json\/wp\/v2\/tags?post=798"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}