{"id":398,"date":"2007-07-22T21:33:11","date_gmt":"2007-07-22T11:33:11","guid":{"rendered":"http:\/\/www.somethinkodd.com\/oddthinking\/2007\/07\/22\/python-3000-exposes-dos-vulnerability-in-oo-brain\/"},"modified":"2007-10-07T19:32:52","modified_gmt":"2007-10-07T09:32:52","slug":"python-3000-exposes-dos-vulnerability-in-oo-brain","status":"publish","type":"post","link":"https:\/\/www.somethinkodd.com\/oddthinking\/2007\/07\/22\/python-3000-exposes-dos-vulnerability-in-oo-brain\/","title":{"rendered":"Python 3000 exposes DOS vulnerability in OO Brain"},"content":{"rendered":"<p>Our security researchers are still investigating, but there have been early reports that a description of <a href=\"http:\/\/www.artima.com\/weblogs\/viewpost.jsp?thread=208549\">Python 3.0<\/a> (codenamed Python 3000) reveals a potentially dangerous vulnerability in the brains of Object-Oriented programmers.<\/p>\n<p>This exploit was detected when an unpatched brain was used to read the following text:<\/p>\n<blockquote>\n<ul>\n<li>\nYou can specify the bases dynamically, e.g.:<br \/>\n<code><br \/>\nbases = (B1, B2)<\/p>\n<p>class C(*bases):<br \/>\n    ...<\/code><\/li>\n<\/ul>\n<\/blockquote>\n<p>As a result of reading this text, the brain of the test subject (codenamed Julian), formally trained in Object-Oriented Methods, entered an infinite loop. He was live-locked considering the implications, implementations and possible driving forces for this feature. Fortunately, he was found, still gibbering on the floor, in under 3 hours after the exploit event, and was able to be rebooted successfully, without lasting damage.<\/p>\n<p>We hope to find the corresponding PEP documentation soon to see the justification for being about to dynamically choose base classes. (Caution: Do not think about this too carefully, until appropriate patches are made available!)<\/p>\n<p>We urge users to take precautions to only read Python 3000 documentation under appropriate medical supervision until tools are made available in Python to properly represent UML class diagrams as animated GIFs.<\/p>\n<p>We look forward to seeing the new applications that are enabled by this change, including [[Security Alert! Text quarantined.]]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dynamically choosing base classes considered harmful.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_s2mail":"","footnotes":""},"categories":[28,30,34],"tags":[371,81,69],"class_list":["post-398","post","type-post","status-publish","format-standard","hentry","category-doubleplus-geek","category-humour","category-software-development","tag-humour","tag-python","tag-software"],"_links":{"self":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/posts\/398","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/comments?post=398"}],"version-history":[{"count":0,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/posts\/398\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/media?parent=398"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/categories?post=398"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.somethinkodd.com\/oddthinking\/wp-json\/wp\/v2\/tags?post=398"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}