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

CVE-2025-61906

CVE-2025-61906 Race Condition in Opencast
📅 PUBLISHED: 2025-10-08 18:06 UTC 🔄 UPDATED: 2026-09-23 20:37 UTC
[ OFFICIAL PATCH DEPLOYED ↓ ] FIX: LIKELY — 2 independent sources confirm fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.29%
👁️
0.29% probability
7.3× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
Patch available — upgrade to latest release
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
2.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-61906 describes a race condition in the Opencast video editor that can lead to unintentional publication of media. The vulnerability occurs when a user with write access to an event clicks "Save & Publish" and then subsequently clicks "Save" before the first action completes. This race condition can cause the system to publish the video without the user's explicit confirmation, potentially exposing internal media. The risk is considered low because it requires specific user actions and write privileges. The issue is fixed in Opencast versions 17.8 and 18.2.

⚡ 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

Opencast is a Java-based open-source platform. The vulnerability is in the application logic, not in a third-party package. However, organizations should verify the integrity of their Opencast installation and ensure they are using official releases from the Opencast project.

CVSS Breakdown & Threat Level

  • CVSS Score: 0.0 (NVD) / Adjusted Score: 2.6 (Low)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:H/UI:R/S:U/C:L/I:N/A:N
  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: High (write access to an event)
  • User Interaction: Required (user must click "Save & Publish" then "Save")
  • Scope: Unchanged
  • Confidentiality Impact: Low (potential exposure of internal media)
  • Integrity Impact: None
  • Availability Impact: None

Threat Level: Low. Exploitation requires authenticated access with write privileges and specific user actions. The impact is limited to potential unauthorized publication of media.

Deep Dive & Mechanics

The vulnerability is a race condition in the Opencast editor's save/publish workflow. The editor provides two primary actions: "Save" (saves draft) and "Save & Publish" (saves and publishes the video). The race condition occurs when a user clicks "Save & Publish" and then quickly clicks "Save" before the first action completes. Due to asynchronous processing, the second "Save" action may override the first, causing the video to be published without the user's explicit intent.

Root Cause: The editor does not properly synchronize or debounce the "Save" and "Save & Publish" actions. When both are triggered in rapid succession, the system may process the "Save" action after the "Save & Publish" has already initiated publication, resulting in the video being published.

Attack Scenario:

  1. Attacker gains write access to an event (e.g., through compromised credentials or insider threat).
  2. Attacker opens the editor for a video they do not want to publish.
  3. Attacker clicks "Save & Publish" and then immediately clicks "Save".
  4. The race condition causes the video to be published, exposing internal media.

Vulnerable vs. Patched Code

Vulnerable Code (Conceptual):

// Vulnerable: No debouncing or state management
editor.on('saveAndPublish', function() {
    publishVideo();
    saveDraft();
});

editor.on('save', function() {
    saveDraft();
});

Patched Code (Conceptual):

// Patched: Debouncing and state management
let isPublishing = false;

editor.on('saveAndPublish', function() {
    if (isPublishing) return;
    isPublishing = true;
    publishVideo().then(() => {
        saveDraft();
        isPublishing = false;
    });
});

editor.on('save', function() {
    if (isPublishing) return;
    saveDraft();
});

The patched code introduces a flag (isPublishing) that prevents the "Save" action from executing while a "Save & Publish" is in progress. This eliminates the race condition.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Valid user account with write access to an event.
  • Access to the Opencast editor interface.

Exploitation Steps:

  1. Log in to Opencast with a user that has write access.
  2. Navigate to an event and open the editor.
  3. Click "Save & Publish" and immediately click "Save" (within milliseconds).
  4. Verify that the video is published by checking the event's publication status.

Note: No public exploit code is available. This is a manual exploitation scenario.

Blue Team

Detection:

  • Monitor for rapid successive clicks on "Save" and "Save & Publish" buttons in editor logs.
  • Alert on any publication events that occur without a corresponding "Save & Publish" action in the audit log.

Mitigation:

  • Apply the patch by upgrading to Opencast 17.8 or 18.2.
  • Implement input validation and debouncing on the client side.
  • Add server-side checks to ensure publication only occurs when explicitly requested.

Indicators of Compromise (IOCs)

  • Log Entries: Rapid succession of "save" and "saveAndPublish" events in editor logs.
  • Audit Logs: Publication events without a preceding "Save & Publish" action.
  • Network Traffic: Unusual patterns of API calls to the editor endpoint.

Detection Engineering

YARA Rule

rule CVE_2025_61906_Opencast_RaceCondition {
    meta:
        description = "Detects potential exploitation of CVE-2025-61906 in Opencast editor logs"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-61906"
    strings:
        $save = "save" nocase
        $saveAndPublish = "saveAndPublish" nocase
        $publish = "publish" nocase
    condition:
        all of ($save, $saveAndPublish, $publish) and #save > 1
}

Sigma Rule

title: CVE-2025-61906 Opencast Editor Race Condition
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects rapid successive save and publish actions in Opencast editor logs
author: Valters IT
date: 2025-04-10
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2025-61906
logsource:
    category: application
    product: opencast
detection:
    selection:
        event: "editor_action"
        action: 
            - "save"
            - "saveAndPublish"
    timeframe: 1s
    condition: selection | count() by user > 1
falsepositives:
    - Legitimate rapid clicking by users
level: low

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (msg:"CVE-2025-61906 Opencast Editor Race Condition"; flow:to_server,established; content:"POST"; http_method; content:"/editor/save"; http_uri; pcre:"/saveAndPublish.*save/"; classtype:attempted-recon; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Upgrade to Opencast 17.8 or 18.2.
  2. If upgrade is not possible, implement a Web Application Firewall (WAF) rule to block rapid successive requests to the editor endpoint.
  3. Review user permissions and ensure only trusted users have write access.

Long-term Fixes:

  • Apply the official patch from the Opencast project.
  • Implement client-side debouncing and server-side state management for editor actions.
  • Add audit logging for all publication events.

Workarounds:

  • Disable the editor for sensitive events.
  • Implement a confirmation dialog for publication actions.

Valters IT
DevSecOps & Cyber Threat Intelligence
Report generated for CVE-2025-61906

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