☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
CVSS: 5.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N 🐛 CWE-287
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2025-62649

CVE-2025-62649 Authentication Bypass in Restaurant brands international
📅 PUBLISHED: 2025-10-17 00:00 UTC 🔄 UPDATED: 2026-08-12 14:52 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.11%
👁️
0.11% probability
2.8× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 5.8
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: U Scope Unchanged
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
5.8
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-62649 exposes a critical authentication bypass vulnerability in the Restaurant Brands International (RBI) assistant platform, affecting all versions through 2025-09-06. The platform relies exclusively on client-side authentication for submission of equipment orders, meaning any user with network access can forge or replay authentication tokens to submit unauthorized orders. This flaw allows an unauthenticated attacker to place equipment orders on behalf of any franchisee or store, potentially disrupting supply chains, causing financial loss, and eroding trust in the ordering system.

The vulnerability is classified as CWE-287: Improper Authentication and carries a CVSS v3.1 base score of 5.8 (Medium). The attack vector is network-based, requires low complexity, and no privileges or user interaction. The impact is limited to integrity and availability of the ordering function, with no direct data confidentiality breach.

No public exploit code, proof-of-concept, or patch is currently available. The vendor has not released a security update, and the patch status remains unknown. The EPSS score of 0.0% indicates very low exploitation activity in the wild as of the report date.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability is not related to any open-source package ecosystem (NPM, PyPI, Go, Ruby). It affects a proprietary web application platform used by Restaurant Brands International. However, if the platform integrates third-party libraries for client-side authentication (e.g., JWT libraries, OAuth SDKs), those components should be reviewed for known vulnerabilities.

CVSS Breakdown & Threat Level

Metric Value
Attack Vector (AV) Network (N)
Attack Complexity (AC) Low (L)
Privileges Required (PR) None (N)
User Interaction (UI) None (N)
Scope (S) Unchanged (U)
Confidentiality (C) Low (L)
Integrity (I) Low (L)
Availability (A) None (N)
Base Score 5.8 (Medium)

Threat Level: Medium. The vulnerability is easy to exploit remotely without authentication, but the impact is limited to placing unauthorized equipment orders. An attacker cannot directly access sensitive customer data or payment information through this flaw.

Deep Dive & Mechanics

The RBI assistant platform implements client-side authentication for equipment order submission. This means the authentication decision (e.g., verifying a user's identity or authorization to place an order) is performed entirely in the user's browser or client application, rather than on the server.

How it works (vulnerable design):

  1. The client application (web or mobile) sends an HTTP request to the server to submit an equipment order.
  2. The request includes an authentication token (e.g., a JWT, session cookie, or API key) that is generated or validated on the client side.
  3. The server trusts the token without independently verifying its validity or the user's identity.
  4. An attacker can intercept, modify, or forge the token to impersonate any user or bypass authentication entirely.

Attack scenario:

  • An attacker discovers the API endpoint for order submission (e.g., POST /api/orders).
  • The attacker captures a legitimate request (e.g., via a proxy like Burp Suite) and observes that the authentication token is a simple base64-encoded string or a predictable value.
  • The attacker modifies the token to impersonate a franchisee or store manager.
  • The server accepts the forged token and processes the order, leading to unauthorized equipment shipments.

Why this is dangerous:

  • No server-side validation: The server does not verify the token against a database of valid users or sessions.
  • No cryptographic signing: The token is not signed with a server-side secret, so it can be easily forged.
  • No replay protection: The same token can be reused multiple times, allowing an attacker to submit many orders.

Vulnerable vs. Patched Code

Since no patch is available, the following comparison illustrates the vulnerable pattern and the expected secure implementation.

Vulnerable (Client-Side Authentication):

// Client-side code (JavaScript)
function submitOrder(orderData) {
    const token = btoa(JSON.stringify({ userId: "admin", role: "franchisee" }));
    fetch('/api/orders', {
        method: 'POST',
        headers: {
            'Authorization': 'Bearer ' + token,
            'Content-Type': 'application/json'
        },
        body: JSON.stringify(orderData)
    });
}

Patched (Server-Side Authentication):

// Server-side code (Node.js example)
const jwt = require('jsonwebtoken');

app.post('/api/orders', (req, res) => {
    const token = req.headers.authorization?.split(' ')[1];
    if (!token) return res.status(401).send('Unauthorized');

    try {
        const decoded = jwt.verify(token, process.env.JWT_SECRET);
        // Verify user exists and has permission to place order
        const user = db.users.find(u => u.id === decoded.userId);
        if (!user || user.role !== 'franchisee') {
            return res.status(403).send('Forbidden');
        }
        // Process order
        processOrder(req.body, user);
        res.status(200).send('Order placed');
    } catch (err) {
        res.status(401).send('Invalid token');
    }
});

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Network access to the RBI assistant platform (e.g., https://assistant.rbi.com)
  • A web proxy tool (e.g., Burp Suite, OWASP ZAP)
  • Basic understanding of HTTP requests and authentication tokens

Step-by-step exploitation:

  1. Identify the order submission endpoint:

    • Browse the platform and place a legitimate order while capturing traffic.
    • Look for a POST request to /api/orders, /submit-order, or similar.
  2. Analyze the authentication token:

    • Extract the Authorization header or cookie from the captured request.
    • Decode the token (e.g., base64, JWT without signature) to understand its structure.
  3. Forge a token:

    • Modify the token to impersonate a different user (e.g., change userId or role).
    • If the token is a simple base64-encoded JSON, decode, modify, and re-encode.
  4. Submit unauthorized orders:

    • Use the forged token in a new request to the order endpoint.
    • Observe that the server accepts the order without server-side validation.

Example using cURL:

# Capture a legitimate token (example)
TOKEN=$(echo -n '{"userId":"123","role":"franchisee"}' | base64)

# Forge a token for a different user
FORGED_TOKEN=$(echo -n '{"userId":"456","role":"franchisee"}' | base64)

# Submit an unauthorized order
curl -X POST https://assistant.rbi.com/api/orders \
  -H "Authorization: Bearer $FORGED_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"item":"Grill","quantity":10,"storeId":"789"}'

Blue Team

Detection and response steps:

  1. Monitor for anomalous order patterns:

    • Alert on orders placed outside business hours.
    • Alert on orders from IP addresses not associated with known franchisees.
    • Alert on orders with unusually large quantities or high-value items.
  2. Review server logs:

    • Check for repeated failed authentication attempts (if any server-side checks exist).
    • Look for requests with missing or malformed authentication tokens.
  3. Implement server-side validation:

    • Immediately add server-side token verification using a cryptographic secret.
    • Ensure tokens are signed and verified on the server.
  4. Rate limiting:

    • Apply rate limiting to the order submission endpoint to slow down automated attacks.
  5. Incident response:

    • If unauthorized orders are detected, contact affected franchisees and cancel the orders.
    • Rotate any API keys or secrets that may have been exposed.

Indicators of Compromise (IOCs)

Type Indicator Description
Network POST /api/orders with missing or malformed Authorization header Suspicious order submission attempt
Network Repeated requests to /api/orders from a single IP in a short time Automated exploitation attempt
Log "Invalid token" or "Unauthorized" errors in server logs Failed exploitation attempts
Log Orders placed with userId or role values not matching known users Successful exploitation
File Base64-encoded JSON tokens in HTTP requests Indicator of client-side authentication bypass

Detection Engineering

YARA Rule

rule CVE_2025_62649_RBI_Auth_Bypass {
    meta:
        description = "Detects client-side authentication bypass in RBI assistant platform"
        author = "Valters IT"
        date = "2025-09-06"
        reference = "CVE-2025-62649"
    strings:
        $token_pattern = /Authorization:\s*Bearer\s*[A-Za-z0-9+/=]{10,}/ nocase
        $order_endpoint = /POST\s+\/api\/orders/i
        $client_side_auth = /btoa\(|atob\(|JSON\.stringify\(.*userId/i
    condition:
        $order_endpoint and ($token_pattern or $client_side_auth)
}

Sigma Rule

title: CVE-2025-62649 - RBI Assistant Client-Side Authentication Bypass
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects exploitation attempts against CVE-2025-62649
author: Valters IT
date: 2025-09-06
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-62649
logsource:
    category: webserver
    product: apache
    service: http
detection:
    selection:
        cs-method: 'POST'
        cs-uri-stem: '/api/orders'
        sc-status: 200
    filter:
        cs-uri-query: '*Authorization*'
    condition: selection and not filter
falsepositives:
    - Legitimate order submissions with valid tokens
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-62649 - RBI Assistant Client-Side Auth Bypass"; flow:to_server; http.method; content:"POST"; http.uri; content:"/api/orders"; http.header_names; content:"Authorization"; pcre:"/Bearer\s+[A-Za-z0-9+/=]{10,}/Ri"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate actions (no patch available):

  1. Implement server-side authentication: Modify the server to verify authentication tokens using a cryptographic secret (e.g., HMAC or RSA-signed JWT).
  2. Add session management: Require users to log in and obtain a server-generated session token that is validated on every request.
  3. Enable logging and monitoring: Log all order submission attempts and alert on anomalies.
  4. Apply rate limiting: Limit the number of orders per user/IP per time period.

Long-term fixes: 5. Conduct a security audit: Review all API endpoints for similar client-side authentication flaws. 6. Adopt OWASP best practices: Follow the OWASP Authentication Cheat Sheet for secure authentication design. 7. Engage the vendor: Contact Restaurant Brands International for an official patch or security update.

Workaround:

  • If the platform allows, disable the online ordering feature until a patch is available.
  • Use a Web Application Firewall (WAF) to block requests with suspicious or missing authentication tokens.

Valters IT

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.title:"RBI Assistant"
http.html:"Restaurant Brands International" "equipment order"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2025-62649/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.