<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://db.gcve.eu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-15T05:38:26.129241+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@gcve.eu</email>
  </author>
  <link href="https://db.gcve.eu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://db.gcve.eu/vuln/brew-ansible-cve-2026-49265</id>
    <title>BREW-ansible-CVE-2026-49265 — Oauthlib: Timing Attack Vulnerability in PKCE code_verifier Comparison (CWE-208)</title>
    <updated>2026-10-15T05:38:26.174243+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Homebrew: ansible</p>
<p>## Summary</p>
<p>A timing side-channel vulnerability exists in the PKCE (RFC 7636) implementation 
of the Authorization Code Grant flow. The `code_challenge_method_plain` function 
uses Python's standard `==` operator for string comparison instead of a 
constant-time comparison function, potentially allowing timing-based attacks.</p>
<p>## Affected Component</p>
<p>- File: `oauthlib/oauth2/rfc6749/grant_types/authorization_code.py`
- Functions: `code_challenge_method_plain`, `code_challenge_method_s256`
- Vulnerability Type: CWE-208 (Observable Timing Discrepancy)</p>
<p>## Technical Details</p>
<p>Python's `==` operator uses short-circuit evaluation when comparing strings:
1. Returns `False` immediately if lengths differ
2. Compares characters left-to-right, stopping at first mismatch</p>
<p>This means comparison time varies linearly with the length of the common prefix 
between the attacker-supplied verifier and the stored challenge, creating a 
measurable timing oracle.</p>
<p>## Proof of Concept</p>
<p>Tested locally against oauthlib source (network jitter eliminated to isolate 
pure Python execution time):</p>
<p>| Input | Result | Time (10M iterations) |
|---|---|---|
| Wrong first char (`B` + `A`*49) | Fast reject | 0.34106s |
| 49 chars correct (`A`*49 + `B`) | Deep compare | 0.37847s |
| **Difference** | | **0.03741s** |</p>
<p>The ~37ms delta over 10M iterations corresponds to nanosecond-level differences 
per call, which are statistically exploitable under controlled conditions.</p>
<p>## Attack Scenario</p>
<p>1. Attacker intercepts…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/brew-ansible-cve-2026-49265"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/cleanstart-2026-no84858</id>
    <title>CLEANSTART-2026-NO84858 — Security fix for CVE-2026-49265 applied in: airflow-3 3.1.8-r13, airflow-3 3.2.1-r11, airflow-3 3.0.6-r9, airflow-3 3.2…</title>
    <updated>2026-10-15T05:38:26.174391+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> CleanStart: airflow-3</p>
<p>CVE-2026-49265 affects multiple packages. This issue is resolved in later releases. See references for individual vulnerability details.</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/cleanstart-2026-no84858"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/fkie_cve-2026-49265</id>
    <title>fkie_cve-2026-49265</title>
    <updated>2026-10-15T05:38:26.174435+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>OAuthLib is an implementation of the OAuth request-signing logic for Python 3.6+. From 3.0.0 until 4.0.0, OAuthLib's PKCE checks in oauthlib/oauth2/rfc6749/grant_types/authorization_code.py compare attacker-supplied code_verifier values with stored challenges using ordinary string equality in code_challenge_method_plain and code_challenge_method_s256. Because the comparison can return after a length difference or the first mismatching character, repeated token endpoint measurements can reveal common-prefix timing information that could potentially allow recovery of the code_verifier, unauthorized access-token acquisition, and account takeover. Practical exploitation requires an intercepted, single-use authorization code and enough measurements to overcome real-world network noise; the local timing benchmark does not establish practical remote account takeover, so the weakness remains a defense-in-depth concern. This issue is fixed in version 4.0.0.</p>
      </div>
    </content>
    <link href="https://db.gcve.eu/vuln/fkie_cve-2026-49265"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/ghsa-xpv3-w29h-x7cv</id>
    <title>GHSA-xpv3-w29h-x7cv — Oauthlib: Timing Attack Vulnerability in PKCE code_verifier Comparison (CWE-208)</title>
    <updated>2026-10-15T05:38:26.174486+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: oauthlib</p>
<p>## Summary</p>
<p>A timing side-channel vulnerability exists in the PKCE (RFC 7636) implementation 
of the Authorization Code Grant flow. The `code_challenge_method_plain` function 
uses Python's standard `==` operator for string comparison instead of a 
constant-time comparison function, potentially allowing timing-based attacks.</p>
<p>## Affected Component</p>
<p>- File: `oauthlib/oauth2/rfc6749/grant_types/authorization_code.py`
- Functions: `code_challenge_method_plain`, `code_challenge_method_s256`
- Vulnerability Type: CWE-208 (Observable Timing Discrepancy)</p>
<p>## Technical Details</p>
<p>Python's `==` operator uses short-circuit evaluation when comparing strings:
1. Returns `False` immediately if lengths differ
2. Compares characters left-to-right, stopping at first mismatch</p>
<p>This means comparison time varies linearly with the length of the common prefix 
between the attacker-supplied verifier and the stored challenge, creating a 
measurable timing oracle.</p>
<p>## Proof of Concept</p>
<p>Tested locally against oauthlib source (network jitter eliminated to isolate 
pure Python execution time):</p>
<p>| Input | Result | Time (10M iterations) |
|---|---|---|
| Wrong first char (`B` + `A`*49) | Fast reject | 0.34106s |
| 49 chars correct (`A`*49 + `B`) | Deep compare | 0.37847s |
| **Difference** | | **0.03741s** |</p>
<p>The ~37ms delta over 10M iterations corresponds to nanosecond-level differences 
per call, which are statistically exploitable under controlled conditions.</p>
<p>## Attack Scenario</p>
<p>1. Attacker intercepts…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/ghsa-xpv3-w29h-x7cv"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/pysec-2026-4114</id>
    <title>PYSEC-2026-4114 — Oauthlib: Timing Attack Vulnerability in PKCE code_verifier Comparison (CWE-208)</title>
    <updated>2026-10-15T05:38:26.174560+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: oauthlib</p>
<p>## Summary</p>
<p>A timing side-channel vulnerability exists in the PKCE (RFC 7636) implementation 
of the Authorization Code Grant flow. The `code_challenge_method_plain` function 
uses Python's standard `==` operator for string comparison instead of a 
constant-time comparison function, potentially allowing timing-based attacks.</p>
<p>## Affected Component</p>
<p>- File: `oauthlib/oauth2/rfc6749/grant_types/authorization_code.py`
- Functions: `code_challenge_method_plain`, `code_challenge_method_s256`
- Vulnerability Type: CWE-208 (Observable Timing Discrepancy)</p>
<p>## Technical Details</p>
<p>Python's `==` operator uses short-circuit evaluation when comparing strings:
1. Returns `False` immediately if lengths differ
2. Compares characters left-to-right, stopping at first mismatch</p>
<p>This means comparison time varies linearly with the length of the common prefix 
between the attacker-supplied verifier and the stored challenge, creating a 
measurable timing oracle.</p>
<p>## Proof of Concept</p>
<p>Tested locally against oauthlib source (network jitter eliminated to isolate 
pure Python execution time):</p>
<p>| Input | Result | Time (10M iterations) |
|---|---|---|
| Wrong first char (`B` + `A`*49) | Fast reject | 0.34106s |
| 49 chars correct (`A`*49 + `B`) | Deep compare | 0.37847s |
| **Difference** | | **0.03741s** |</p>
<p>The ~37ms delta over 10M iterations corresponds to nanosecond-level differences 
per call, which are statistically exploitable under controlled conditions.</p>
<p>## Attack Scenario</p>
<p>1. Attacker intercepts…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/pysec-2026-4114"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/rhsa-2026:82368</id>
    <title>RHSA-2026:82368 — Red Hat Security Advisory: Red Hat AI Inference 3.5.2 (cuda)</title>
    <updated>2026-10-15T05:38:26.174626+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>libxml2: Stack Buffer Overflow in xmllint Interactive Shell Command Handling sqlite: SQLite: Arbitrary code execution via crafted FTS5 full-text search data sqlite: SQLite: Arbitrary code execution and crash via heap-based buffer overflow in FTS5 python: cpython: CPython: tarfile extraction filter bypass allows escaping the destination directory pip: pip: Arbitrary file installation via malicious package indexes GDBusServer: glib2: GDBusServer pre-authentication DoS via unbounded SASL line buffering xdgmime: heap-based buffer overflow in _xdg_mime_magic_parse_magic_line() in xdgmimemagic.c urllib3: urllib3: Information disclosure via cross-origin redirects forwarding sensitive headers urllib3: urllib3: Denial of Service due to excessive HTTP response decompression vim: Vim: Arbitrary Code Execution via crafted directory names vim: Vim: Arbitrary code execution via crafted step-definition patterns oauthlib: oauthlib: Unsafe JSONP callback injection in RevocationEndpoint allows arbitrary JavaScript response generation oauthlib: oauthlib: Timing attack vulnerability in PKCE code_verifier/code_challenge comparison allows authorization code recovery vim: Vim: Arbitrary code execution via Python omni-completion acl: Symlink traversal privilege escalation via libacl functions linux-pam: Plaintext password recovery via timing discrepancy in pam_userdb module vim: Vim: Out-of-bounds Write in Spell File Word Count vim: Vim: Denial of Service via stack out-of-bounds write in spell_soun…</p>
      </div>
    </content>
    <link href="https://db.gcve.eu/vuln/rhsa-2026:82368"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/suse-su-2026:24139-1</id>
    <title>SUSE-SU-2026:24139-1 — Security update for python-oauthlib</title>
    <updated>2026-10-15T05:38:26.174848+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Security update for python-oauthlib</p>
      </div>
    </content>
    <link href="https://db.gcve.eu/vuln/suse-su-2026:24139-1"/>
  </entry>
</feed>
