CVE-2013-2104: python-keystoneclient Token Expiry Check Bypass

python-keystoneclient Updated 02 Oct 2025

Summary

21/01/2014
Yes i
High
7.5

CVE-2013-2104: python-keystoneclient before 0.2.4, as used in OpenStack Keystone (Folsom), does not properly check expiry for PKI tokens, which allows remote authenticated users to (1) retain use of a token after it has expired, or (2)... Affects python-keystoneclient versions < 0.2.4. Fixed in 0.2.4. How to fix ↓

Also tracked for

The same CVE-2013-2104 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

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.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Mobile apps built by Devnack Design, build and launch iOS and Android apps with a senior product team. From idea to store release Start a project

Background

python-keystoneclient is a Python library used in OpenStack Keystone (Folsom) for interacting with the Keystone identity service. It provides authentication and authorization services for other OpenStack services. The library allows users to manage and authenticate tokens for accessing OpenStack resources.

Vulnerability Detail

The vulnerability identified as CVE-2013-2104 affects python-keystoneclient versions prior to 0.2.4. It relates to the improper expiry check for PKI tokens. This flaw enables remote authenticated users to exploit two scenarios: (1) retain the use of a token even after it has expired, and (2) utilize a revoked token once it expires. The absence of proper token expiry validation can lead to unauthorized access and potential security breaches within OpenStack Keystone deployments.

How To Fix

Latest published version: 6.0.0 as of 23 Oct 2026

pip install --upgrade "python-keystoneclient==6.0.0"

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

0.2.4

This is the first release that contains the fix.

pip install --upgrade "python-keystoneclient==0.2.4"

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

As a temporary workaround, users can manually implement additional token expiry checks within their applications or scripts that utilize python-keystoneclient. This can be achieved by validating the token's expiry time against the current time before allowing any further operations. Here's an example in Python:

import time
from keystoneclient import session

def validate_token_expiry(token):
    current_time = int(time.time())
    if token.expires_at < current_time:
        raise Exception('Token has expired')

# Usage
token = session.get_token()
validate_token_expiry(token)

Conclusion

The vulnerability identified as CVE-2013-2104 in python-keystoneclient allows remote authenticated users to bypass token expiry checks, potentially leading to unauthorized access and security breaches. It is crucial to upgrade to python-keystoneclient version 0.2.4 or later to mitigate this vulnerability. Additional token expiry checks can be implemented as a temporary workaround. For further support and assistance in vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for python-keystoneclient →

Share this vulnerability

FAQ

python-keystoneclient is a Python library used in OpenStack Keystone (Folsom) for authentication and authorization services. It allows users to manage and authenticate tokens for accessing OpenStack resources.

Versions of python-keystoneclient prior to 0.2.4 are affected by this vulnerability.

This vulnerability allows remote authenticated users to retain the use of expired tokens or utilize revoked tokens once they expire. This can lead to unauthorized access and potential security breaches within OpenStack Keystone deployments.

To fix this vulnerability, it is recommended to upgrade python-keystoneclient to version 0.2.4 or later. This version includes the necessary fixes to properly check the expiry of PKI tokens.

As a temporary workaround, users can manually implement additional token expiry checks within their applications or scripts that utilize python-keystoneclient. This involves validating the token's expiry time against the current time before allowing any further operations.

Related vulnerabilities

Recent vulnerabilities recorded for python-keystoneclient.

How To Fix

Latest published version: 6.0.0 as of 23 Oct 2026

pip install --upgrade "python-keystoneclient==6.0.0"

Upgrading to it may include breaking changes; the version below is the minimum fixed release for this vulnerability.

If you need the minimum change

0.2.4

This is the first release that contains the fix.

pip install --upgrade "python-keystoneclient==0.2.4"

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback