The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2020-7692

CVE-2020-7692: Google OAuth Client Auth Bypass Vulnerability

CVE-2020-7692 is an authentication bypass flaw in Google OAuth Client Library for Java caused by improper PKCE implementation. Attackers can intercept authorization codes to gain unauthorized access. This article covers technical details, affected versions, impact, and mitigation strategies.

Published: March 4, 2026

CVE-2020-7692 Overview

CVE-2020-7692 is an Authorization Bypass vulnerability affecting the Google OAuth Client Library for Java. PKCE (Proof Key for Code Exchange) support is not implemented in accordance with the RFC for OAuth 2.0 for Native Apps. Without the use of PKCE, the authorization code returned by an authorization server is not enough to guarantee that the client that issued the initial authorization request is the one that will be authorized. An attacker is able to obtain the authorization code using a malicious app on the client-side and use it to gain authorization to the protected resource.

Critical Impact

This vulnerability allows attackers to intercept OAuth authorization codes and gain unauthorized access to protected resources by exploiting the missing PKCE implementation in native OAuth flows.

Affected Products

  • Google OAuth Client Library for Java (versions before 1.31.0)
  • Applications using com.google.oauth-client:google-oauth-client package
  • Apache Druid (dependent library)

Discovery Timeline

  • 2020-07-09 - CVE-2020-7692 published to NVD
  • 2024-11-21 - Last updated in NVD database

Technical Details for CVE-2020-7692

Vulnerability Analysis

This vulnerability stems from improper implementation of the OAuth 2.0 security specification for native applications. The Google OAuth Client Library for Java failed to implement PKCE (Proof Key for Code Exchange) as mandated by RFC 7636 and RFC 8252. PKCE is a critical security extension designed to protect the authorization code grant flow from interception attacks, particularly in public clients like mobile and native applications where the client secret cannot be securely stored.

Without PKCE, the OAuth flow relies solely on the authorization code for client authentication. This creates a window of opportunity where an attacker with a malicious application on the same device can intercept the authorization code through various means such as custom URI scheme hijacking, app impersonation, or malicious redirects. The impact extends to both confidentiality and integrity of protected resources, as successful exploitation grants the attacker full authorization to access and modify data on behalf of the legitimate user.

Root Cause

The root cause is the missing implementation of PKCE support in the AuthorizationCodeRequestUrl and AuthorizationCodeFlow classes. The library did not generate or validate the code_verifier and code_challenge parameters required by the PKCE specification, leaving the authorization code exchange vulnerable to interception attacks.

Attack Vector

The attack exploits the network-accessible OAuth authorization flow. An attacker positions a malicious application on the victim's device that registers the same custom URI scheme used by the legitimate OAuth client. When the user initiates an OAuth flow:

  1. The authorization server issues an authorization code
  2. The malicious app intercepts the redirect containing the authorization code
  3. The attacker exchanges the stolen authorization code for access tokens
  4. The attacker gains full access to the protected resource

This attack requires no special privileges and can be executed without user interaction once the malicious app is installed.

java
// Security patch adding PKCE support to AuthorizationCodeRequestUrl.java
// Source: https://github.com/googleapis/google-oauth-java-client/commit/13433cd7dd06267fc261f0b1d4764f8e3432c824
 
package com.google.api.client.auth.oauth2;
 
+import com.google.api.client.util.Key;
+
import java.util.Collection;
import java.util.Collections;

The fix introduces PKCE support by adding the necessary imports and implementing code_challenge and code_verifier parameters in the authorization flow. A new sample module was also added to demonstrate proper PKCE implementation:

text
// Build configuration update adding PKCE sample
// Source: https://github.com/googleapis/google-oauth-java-client/commit/13433cd7dd06267fc261f0b1d4764f8e3432c824
    <module>google-oauth-client-java6</module>
    <module>google-oauth-client-jetty</module>
    <module>samples/dailymotion-cmdline-sample</module>
+    <module>samples/keycloak-pkce-cmdline-sample</module>
 
    <!-- For deployment reasons, a deployable artifact must be the last one. -->
    <module>google-oauth-client-assembly</module>

Detection Methods for CVE-2020-7692

Indicators of Compromise

  • OAuth authorization codes being redeemed from unexpected IP addresses or user agents
  • Multiple token exchange attempts using the same authorization code
  • Unusual access patterns to protected resources following OAuth authentication
  • Authorization code exchanges occurring without corresponding code_verifier parameters

Detection Strategies

  • Implement dependency scanning to identify applications using com.google.oauth-client:google-oauth-client versions prior to 1.31.0
  • Monitor OAuth authorization server logs for authorization codes exchanged without PKCE parameters
  • Audit application dependencies using tools like OWASP Dependency-Check or Snyk
  • Review OAuth flow implementations to ensure PKCE is properly configured

Monitoring Recommendations

  • Enable detailed logging on OAuth authorization servers to track code_challenge parameter presence
  • Monitor for anomalous token exchange patterns that may indicate authorization code theft
  • Implement alerting for OAuth flows that complete without PKCE validation
  • Track and inventory all applications using the affected Google OAuth client library versions

How to Mitigate CVE-2020-7692

Immediate Actions Required

  • Upgrade com.google.oauth-client:google-oauth-client to version 1.31.0 or later immediately
  • Audit all applications using the Google OAuth Java Client library for vulnerable versions
  • Review OAuth implementations to ensure PKCE is enabled after upgrading
  • Invalidate and rotate any OAuth tokens that may have been compromised

Patch Information

Google has released version 1.31.0 of the OAuth Client Library for Java which includes full PKCE support. The security patch adds code_challenge and code_verifier parameter handling to the AuthorizationCodeFlow class. The fix can be reviewed in the GitHub Commit. Additional context is available in the GitHub Issue Discussion and the Snyk Vulnerability Report.

Workarounds

  • If immediate upgrade is not possible, implement server-side validation to reject OAuth flows without PKCE parameters
  • Consider implementing additional authentication factors for sensitive resource access
  • Use client secrets where possible as an additional layer of protection (though PKCE should still be implemented)
  • Monitor for authorization code interception attempts while patching is in progress
bash
# Maven dependency update example
# Update pom.xml to use patched version:
# <dependency>
#   <groupId>com.google.oauth-client</groupId>
#   <artifactId>google-oauth-client</artifactId>
#   <version>1.31.0</version>
# </dependency>

# Verify current version in your project
mvn dependency:tree -Dincludes=com.google.oauth-client:google-oauth-client

# Force update to patched version
mvn versions:use-latest-versions -Dincludes=com.google.oauth-client:google-oauth-client

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeAuth Bypass

  • Vendor/TechGoogle Oauth Client Library

  • SeverityCRITICAL

  • CVSS Score9.1

  • EPSS Probability0.08%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityNone
  • CWE References
  • CWE-863
  • Technical References
  • GitHub Issue Discussion

  • Apache Druid Commit Thread

  • Apache Druid Commit Thread

  • Snyk Vulnerability Report

  • IETF RFC 7636 Section

  • IETF RFC 8252 Section
  • Vendor Resources
  • GitHub Commit Update
  • Related CVEs
  • CVE-2021-22573: Google OAuth Client Library Auth Bypass
Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English