CVE-2018-18074

Insufficiently Protected Credentials in Requests

Verified by Precogs Threat Research
Last Updated: Oct 21, 2024
Base Score
9.8CRITICAL

Executive Summary

CVE-2018-18074 is a critical severity vulnerability affecting pii-secrets. It is classified as an undisclosed flaw. Ensure your systems and dependencies are patched immediately to mitigate exposure risks.

Precogs AI Insight

"Architecturally, this flaw occurs due to within The Requests package, allowing the mishandling of memory allocation boundaries. Adversaries commonly weaponize this defect by trigger a denial of service state, crashing critical operational components. Precogs identifies and blocks the exfiltration of personally identifiable information to harden the environment against lateral movement."

Exploit Probability (EPSS)
Low (0.2%)
Public POC
Available
Exploit Probability
High (84%)
Public POC
Available
Affected Assets
pii secretsNVD Database

What is this vulnerability?

CVE-2018-18074 is categorized as a critical Sensitive Data Exposure flaw. Based on our vulnerability intelligence, this issue occurs when the application fails to securely handle untrusted data boundaries.

The Requests package through 2.19.1 before 2018-09-14 for Python sends an HTTP Authorization header to an http URI upon receiving a same-hostname https-to-.

This architectural defect enables adversaries to bypass intended security controls, directly manipulating the application's execution state or data layer. Immediate strategic intervention is required.

Risk Assessment

MetricValue
CVSS Base Score9.8 (CRITICAL)
Vector StringN/A
PublishedOctober 29, 2018
Last ModifiedOctober 21, 2024
Related CWEsN/A

Impact on Systems

Authentication Bypass: Leaked credentials allow attackers to impersonate legitimate users or systems.

Data Breach: Exposed PII triggers regulatory violations (GDPR/CCPA) and massive reputational damage.

Lateral Movement: Exposed API tokens can be used to pivot deeper into internal infrastructure.

How to fix this issue?

Implement the following strategic mitigations immediately to eliminate the attack surface.

1. Secret Management Migrate all hardcoded secrets to a secure vault (e.g., AWS Secrets Manager, HashiCorp Vault).

2. Data Masking Implement automated redaction for logs to prevent PII/credentials from leaking into observability platforms.

3. Automated Scanning Deploy Precogs Secrets Scanner in pre-commit hooks and CI pipelines to prevent secret commits.

Vulnerability Signature

// Generic Secrets Exposure Vector
// DANGEROUS: Hardcoded secrets in source control or logs
const apiKey = "sk_live_1234567890abcdef";
console.log(`Connecting to API with key $\{apiKey\}`);

// SECURED: Secrets fetched from environment at runtime
const apiKey = process.env.API_SECRET_KEY;
if (!apiKey) throw new Error("API configuration missing");
// Never log secrets
console.log('Connecting to API... [REDACTED]');

References and Sources

Vulnerability Code Signature

Attack Data Flow

StageDetail
SourceSource code repository or API response
VectorSecrets embedded directly in the codebase or PII leaked in response
SinkVersion control system or HTTP response
ImpactData breach, unauthorized access, compliance violation

Vulnerable Code Pattern

// ❌ VULNERABLE: Hardcoded credential & PII Leak
public class Config {
    // Taint sink: secret embedded in code
    public static final String API_KEY = "sk_live_1234567890abcdef";
}

// ... API Response leaks full user details including SSN ...

Secure Code Pattern

// ✅ SECURE: Environment variables & Data Masking
public class Config {
    // Sanitized configuration
    public static final String API_KEY = System.getenv("STRIPE_API_KEY");
}

// ... API Response masks SSN and restricts PII exposure ...

How Precogs Detects This

Precogs PII & Secrets Scanner continuously monitors codebases and API responses for hardcoded secrets and unintended PII exposure.\n

Is your system affected?

Precogs AI detects CVE-2018-18074 in compiled binaries, LLMs, and application layers — even without source code access.