<div dir="ltr">Hey all,<div><br></div><div>As reported in <a href="https://github.com/ipython/ipython/issues/6246">https://github.com/ipython/ipython/issues/6246</a>, MathJax will load over HTTP if using the notebook with an unecncrypted connection (e.g. <a href="http://127.0.0.1:8888">http://127.0.0.1:8888</a>). Someone with an appropriate network position (the router at your local internet cafe for example) could modify the mathjax javascript before it gets to you, adding their own javascript. This would result in being able to run code on your IPython kernel with just a little bit of javascript (`<span style="color:rgb(0,128,255);font-family:Menlo,monospace;font-size:11px;white-space:pre-wrap">IPython.notebook.kernel.execute(code)</span>`).</div>
<div><br></div><div><div style="font-family:arial,sans-serif;font-size:13px">This issue was fixed in the git master branch (development branch for upcoming v. 2.2) with commit cf793ebc4, on 7/31/2014:</div><div style="font-family:arial,sans-serif;font-size:13px">
<br></div><div style="font-family:arial,sans-serif;font-size:13px"><a href="https://github.com/ipython/ipython/commit/cf793ebc4f9e8483f104667e4c73748357fa8c56" target="_blank">https://github.com/ipython/ipython/commit/cf793ebc4f9e8483f104667e4c73748357fa8c56</a></div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Mitigations:</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">
* Run the notebook with SSL (see <a href="http://ipython.org/ipython-doc/2/notebook/public_server.html#securing-a-notebook-server" target="_blank">http://ipython.org/ipython-doc/2/notebook/public_server.html#securing-a-notebook-server</a>). This will load MathJax over SSL via the MathJax CDN.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">* Install mathjax locally</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div>
<div style="font-family:arial,sans-serif;font-size:13px">    from IPython.external.mathjax import install_mathjax</div><div style="font-family:arial,sans-serif;font-size:13px">    install_mathjax()</div></div><div><br></div>
<div>We have requested a CVE for this via the oss-security mailing list.</div><div><br></div><div>--</div><div>Kyle Kelley (@rgbkrk; <a href="http://lambdaops.com">http://lambdaops.com</a>)</div></div>