<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link rel="hub" href="http://tumblr.superfeedr.com/" xmlns:atom="http://www.w3.org/2005/Atom"/><description></description><title>Python Security</title><generator>Tumblr (3.0; @pythonsecurity)</generator><link>http://pythonsecurity.tumblr.com/</link><item><title>Taint Mode For Python</title><description>&lt;p&gt;Juanjo Conti has done some fantastic work for &lt;a href="http://www.owasp.org"&gt;OWASP&lt;/a&gt; implementing a &lt;a href="http://www.juanjoconti.com.ar/taint/"&gt;taint mode&lt;/a&gt; in Python through a library. Taint mode is a language feature which can highlight injection flaws by tracing untrusted user input through the code by tracking the &amp;#8220;taintedness&amp;#8221; of variables. In taint mode, developers identify untrusted inputs, sanitization functions, and sensitive sinks. User input variables are initially marked as tainted, and the taintedness will be propagated as new variables are created based on already tainted variables. Tainted variables can be sanitized, after which they will be marked as untainted. Taint mode will prevent tainted data from going to identified sensitive sinks such as an interpreter or browser.&lt;/p&gt;
&lt;p&gt;Sounds simple enough, but the real power here is in the propagation of taint information. As just one example, if you concatenate a tainted variable with an untainted variable, the result will be tainted. In this way the taintedness can traced through the program from the source to the sink.&lt;/p&gt;
&lt;p&gt;Previous taint mode implementations required modifying the interpreter. Juanjo has done it in a library by implementing subclasses of the primitive datatypes that allows for propagation of taint information. This comes at the cost of needing to modify the application code, but the decorators and shortcuts Juanjo provides makes it easy.&lt;/p&gt;
&lt;p&gt;Juanjo presented at OWASP App Sec 2010 in Stockholm. You can &lt;a href="http://www.juanjoconti.com.ar/2010/07/06/talk-taint-mode-for-python-via-a-library-slides/"&gt;read&lt;/a&gt; or &lt;a href="http://www.juanjoconti.com.ar/2010/07/23/talk-taint-mode-for-python-via-a-library-video/"&gt;watch&lt;/a&gt; his presentation online. The source code for the library is available &lt;a href="http://svn.juanjoconti.com.ar/dyntaint/trunk/"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;More information about taint mode can be found on the &lt;a href="http://www.pythonsecurity.org/wiki/taintmode/"&gt;PythonSecurity.org wiki&lt;/a&gt;.&lt;/p&gt;</description><link>http://pythonsecurity.tumblr.com/post/857505579</link><guid>http://pythonsecurity.tumblr.com/post/857505579</guid><pubDate>Sun, 25 Jul 2010 13:24:25 -0400</pubDate></item><item><title>Thinking About Using exec? Think Again!</title><description>&lt;a href="http://www.codekoala.com/blog/2010/security-and-pythons-exec/"&gt;Thinking About Using exec? Think Again!&lt;/a&gt;</description><link>http://pythonsecurity.tumblr.com/post/828032582</link><guid>http://pythonsecurity.tumblr.com/post/828032582</guid><pubDate>Sun, 18 Jul 2010 11:06:15 -0400</pubDate></item><item><title>web2py - A Framework That Cares About Security</title><description>&lt;p&gt;A huge round of applause is in order for &lt;a href="http://www.web2py.com/"&gt;web2py&lt;/a&gt; because &lt;a href="http://www.web2py.com/examples/default/security"&gt;they care about security&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The web2py creators clearly kept security in mind from the design phase, and it shows in the end result. web2py is immune to many attacks on session management and routing because those components were designed with security in mind.&lt;/p&gt;
&lt;p&gt;This underscores an important aspect of security in any application: Security cannot be tacked on afterwards, it &lt;em&gt;must&lt;/em&gt; be built in from the start. While you can add on cryptography or more escaping to an application, preventing attacks on sessions or user management may require redesigning those components.&lt;/p&gt;
&lt;p&gt;Check out &lt;a href="http://www.pythonsecurity.org/wiki/web2py/"&gt;web2py&amp;#8217;s page&lt;/a&gt; on &lt;a href="http://www.pythonsecurity.org"&gt;PythonSecurity.org&lt;/a&gt; for more details specific to web2py.&lt;/p&gt;</description><link>http://pythonsecurity.tumblr.com/post/807089821</link><guid>http://pythonsecurity.tumblr.com/post/807089821</guid><pubDate>Tue, 13 Jul 2010 12:59:44 -0400</pubDate></item><item><title>Cloudsecurity.org Interviews Guido van Rossum: Google App Engine, Python and Security</title><description>&lt;a href="http://cloudsecurity.org/blog/2008/07/01/cloudsecurityorg-interviews-guido-van-rossum-google-app-engine-python-and-security.html"&gt;Cloudsecurity.org Interviews Guido van Rossum: Google App Engine, Python and Security&lt;/a&gt;</description><link>http://pythonsecurity.tumblr.com/post/750306571</link><guid>http://pythonsecurity.tumblr.com/post/750306571</guid><pubDate>Tue, 29 Jun 2010 13:28:08 -0400</pubDate></item><item><title>A Challenge To Break Python Security</title><description>&lt;a href="http://tav.espians.com/a-challenge-to-break-python-security.html"&gt;A Challenge To Break Python Security&lt;/a&gt;</description><link>http://pythonsecurity.tumblr.com/post/750305547</link><guid>http://pythonsecurity.tumblr.com/post/750305547</guid><pubDate>Tue, 29 Jun 2010 13:27:49 -0400</pubDate></item></channel></rss>
