First published: Thu Jul 16 2015(Updated: )
POST requests exposed via the IPython REST API are vulnerable to cross-site request forgery (CSRF). Web pages on different domains can make non-AJAX POST requests to known IPython URLs, and IPython will honor them. The user's browser will automatically send IPython cookies along with the requests. The response is blocked by the Same-Origin Policy, but the request isn't. API paths with issues: * POST /api/contents/<path>/<file> * POST /api/contents/<path>/<file>/checkpoints * POST /api/contents/<path>/<file>/checkpoints/<checkpoint_id> * POST /api/kernels * POST /api/kernels/<kernel_id>/<action> * POST /api/sessions * POST /api/clusters/<cluster_id>/<action> Upstream fixes: 2.x: <a href="https://github.com/ipython/ipython/commit/a05fe052a18810e92d9be8c1185952c13fe4e5b0">https://github.com/ipython/ipython/commit/a05fe052a18810e92d9be8c1185952c13fe4e5b0</a> 3.x: <a href="https://github.com/ipython/ipython/commit/1415a9710407e7c14900531813c15ba6165f0816">https://github.com/ipython/ipython/commit/1415a9710407e7c14900531813c15ba6165f0816</a> CVE request: <a href="http://seclists.org/oss-sec/2015/q3/92">http://seclists.org/oss-sec/2015/q3/92</a>
Affected Software | Affected Version | How to fix |
---|---|---|
IPython | <2.x<3.x |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
The severity of REDHAT-BUG-1243842 is classified as high due to its potential for cross-site request forgery attacks.
To fix REDHAT-BUG-1243842, update to a version of IPython that is 3.x or later, which addresses the CSRF vulnerability.
REDHAT-BUG-1243842 affects POST requests made through the IPython REST API.
Versions of IPython from 2.x to 3.x are vulnerable to REDHAT-BUG-1243842.
Yes, web pages on different domains can exploit REDHAT-BUG-1243842 to perform non-AJAX POST requests to a user's IPython server.