Remote Code Execution Vulnerability in IPython Notebook
Summary
DEBIAN-CVE-2014-3429: IPython Notebook 0.12 through 1.x before 1.2 does not validate the origin of websocket requests, which allows remote attackers to execute arbitrary code by leveraging knowledge of the kernel id and a crafted page. Affects ipython versions < 1.2.0~rc1-1. Fixed in 1.2.0~rc1-1. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
IPython is an interactive computing environment that allows users to create and share documents that contain live code, equations, visualizations, and narrative text. It is widely used in data science, machine learning, and scientific computing. The vulnerability in question affects versions 0.12 through 1.x before 1.2, where the application fails to validate the origin of websocket requests, making it susceptible to remote code execution attacks.
Vulnerability Detail
The vulnerability arises from the lack of validation for the origin of websocket requests in IPython Notebook versions 0.12 through 1.x prior to 1.2. This flaw allows remote attackers to execute arbitrary code by leveraging knowledge of the kernel ID and sending crafted websocket requests. The implications of this vulnerability are severe, as it could lead to unauthorized access and control over the user's environment, potentially compromising sensitive data and system integrity.
How To Fix
Minimum fixed version
1.2.0~rc1-1
This is the first release that contains the fix.
sudo apt-get install --only-upgrade ipython
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
As a temporary workaround, users can restrict access to the IPython Notebook server by implementing firewall rules or using a VPN to limit exposure to trusted networks only. Additionally, disabling websocket connections can mitigate the risk until the package is updated.
Conclusion
The IPython Notebook vulnerability (CVE-2014-3429) poses a significant risk due to its potential for remote code execution. Users are strongly advised to update to the latest patched version to safeguard their systems. Implementing workarounds can provide temporary relief until the update is applied.
See every vulnerability recorded for ipython →
FAQ
The vulnerability allows remote attackers to execute arbitrary code due to improper validation of websocket request origins.
Versions 0.12 through 1.x before 1.2 are affected by this vulnerability.
You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without any signup.
The risks include unauthorized access to the user's environment, execution of arbitrary code, and potential compromise of sensitive data.
Yes, you can restrict access to the IPython Notebook server and disable websocket connections as a temporary measure.
References
Related vulnerabilities
Recent vulnerabilities recorded for ipython.