CherryPy is vulnerable to a directory traversal that could allow attackers to read and write arbitrary files.
Package | dev-python/cherrypy on all architectures |
---|---|
Affected versions | < 3.0.2-r1 |
Unaffected versions | revision >= 2.2.1-r2 >= 3.0.2-r1 |
CherryPy is a Python-based, object-oriented web development framework.
CherryPy does not sanitize the session id, provided as a cookie value, in the FileSession._get_file_path() function before using it as part of the file name.
A remote attacker could exploit this vulnerability to read and possibly write arbitrary files on the web server, or to hijack valid sessions, by providing a specially crafted session id. This only affects applications using file-based sessions.
Disable the "FileSession" functionality by using "PostgresqlSession" or "RamSession" session management in your CherryPy application.
All CherryPy 2.2 users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=dev-python/cherrypy-2.2.1-r2"
All CherryPy 3.0 users should upgrade to the latest version:
# emerge --sync # emerge --ask --oneshot --verbose ">=dev-python/cherrypy-3.0.2-r1"
Release date
January 27, 2008
Latest revision
January 27, 2008: 01
Severity
normal
Exploitable
remote
Bugzilla entries