CVE-2011-2765: Pyro mishandles pid files in temporary directory locations and opening the pid file as root
Summary
CVE-2011-2765: Pyro mishandles pid files in temporary directory locations and opening the pid file as root. Affects pyro versions < 3.15. Fixed in 3.15. How to fix ↓
Also tracked for
- pyro · Debian:10
The same CVE-2011-2765 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.
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
Pyro is a Python library that enables remote method invocation, object sharing, and distributed computing. It provides a way to execute code on a remote server as if it were running locally. Pyro versions before 3.15 are vulnerable to mishandling pid files in temporary directory locations and opening the pid file as root. This vulnerability allows an attacker to overwrite arbitrary files through symlinks.
Vulnerability Detail
The vulnerability in Pyro arises from the unsafe handling of pid files in temporary directory locations and opening the pid file as root. By exploiting this flaw, an attacker can create symbolic links to overwrite arbitrary files on the system. This can lead to unauthorized access, data loss, or even remote code execution depending on the targeted files. The vulnerability has a CVSS score of 7.5, indicating a high severity.
How To Fix
Minimum fixed version
3.15
This is the first release that contains the fix.
pip install --upgrade "pyro==3.15"
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
If updating Pyro is not immediately feasible, a temporary workaround is to manually modify the code to handle pid files securely. This can be achieved by ensuring that pid files are created in a secure directory with proper permissions and by not opening the pid file as root. Here is an example of how to modify the code:
# Original code
pid_file = '/tmp/pyro.pid'
# Modified code
pid_file = '/var/run/pyro.pid'
Conclusion
The vulnerability in Pyro that mishandles pid files in temporary directory locations and opening the pid file as root can lead to arbitrary file overwrites. It is crucial to update Pyro to version 3.15 or later to mitigate this vulnerability. If immediate updating is not possible, the provided workaround can be implemented. For further support on vulnerability remediation, contact DevNack.com.
See every vulnerability recorded for pyro →
FAQ
Pyro is a Python library that enables remote method invocation, object sharing, and distributed computing. It allows code execution on a remote server as if it were running locally.
This vulnerability allows an attacker to overwrite arbitrary files on the system through symlink attacks. Depending on the targeted files, this can lead to unauthorized access, data loss, or even remote code execution.
The CVSS score of this vulnerability is 7.5, indicating a high severity.
To fix this vulnerability, update Pyro to version 3.15 or later by running the command 'pip install --upgrade pyro'.
If updating Pyro is not immediately feasible, a temporary workaround is to modify the code to handle pid files securely. See the 'workaround' section for more details.
Related vulnerabilities
Recent vulnerabilities recorded for pyro.