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

CVE-2024-39322

CVE-2024-39322 Improper Access Control in Aimeos
📅 PUBLISHED: 2024-07-02 20:19 UTC 🔄 UPDATED: 2026-09-23 20:29 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.48%
👁️
0.48% probability
12.0× 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
5.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-39322 is an improper access control vulnerability in the Aimeos e-commerce JSON API for administrative tasks (ai-admin-jsonadm). The flaw allows authenticated users with the "editor" role to remove admin group and locale configuration settings in the Aimeos backend. This is a privilege escalation issue where a lower-privileged user can perform actions that should be restricted to administrators. The vulnerability affects multiple version branches of the package, with fixes released in versions 2020.10.13, 2021.10.6, 2022.10.3, 2023.10.4, and 2024.4.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

This vulnerability affects the aimeos/ai-admin-jsonadm PHP package, which is distributed via Composer/Packagist. Organizations using Aimeos should verify their dependency version and update to a patched release. The package is a core administrative component, making this a high-risk supply chain issue for any Aimeos-based e-commerce deployment.

CVSS Breakdown & Threat Level

  • CVSS Score: 5.5 (Medium)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L
  • Attack Vector: Network
  • Attack Complexity: Low
  • Privileges Required: Low (editor role)
  • User Interaction: None
  • Scope: Unchanged
  • Confidentiality Impact: None
  • Integrity Impact: Low
  • Availability Impact: Low

The medium severity rating reflects the low privileges required and the potential for integrity and availability impacts on backend configuration. While not critical, the ability for editors to remove admin groups and locale settings can disrupt administrative operations and cause configuration drift.

Deep Dive & Mechanics

The vulnerability resides in the JSON API endpoints of the ai-admin-jsonadm package. The API is designed to allow administrative tasks such as managing groups, locales, and other backend configurations. The flaw is in the access control logic: the system incorrectly grants "editor" role users the ability to perform DELETE operations on admin group and locale resources.

In Aimeos, the typical permission hierarchy includes:

  • admin: Full access to all backend features
  • editor: Limited access, intended for content management but not system configuration

The vulnerable code fails to check the user's role against the required permission level for deleting admin groups and locales. This allows an editor to send a crafted DELETE request to the appropriate API endpoint and remove these critical configuration items.

The attack flow:

  1. Authenticate as an editor user
  2. Identify the API endpoint for admin groups or locales (e.g., /admin/jsonadm/group/delete or similar)
  3. Send a DELETE request with the target resource ID
  4. The server processes the request without proper authorization checks
  5. The admin group or locale configuration is removed

Vulnerable vs. Patched Code

Vulnerable Code (simplified example):

// In a controller method handling DELETE requests
public function deleteAction($id) {
    // No role check performed
    $this->getContext()->getGroupManager()->deleteItem($id);
    return $this->successResponse();
}

Patched Code (simplified example):

// In a controller method handling DELETE requests
public function deleteAction($id) {
    // Added access control check
    if (!$this->getContext()->getUser()->hasGroup('admin')) {
        throw new \Aimeos\MShop\Exception('Insufficient permissions');
    }
    $this->getContext()->getGroupManager()->deleteItem($id);
    return $this->successResponse();
}

The patch adds a permission check to ensure only users with the 'admin' group can perform delete operations on admin groups and locales. The exact implementation may vary, but the principle is to validate the user's role before allowing the action.

Exploitation & Lab Setup

Red Team

Prerequisites:

  • Access to an Aimeos instance with a valid editor account
  • Knowledge of the API endpoint structure (typically /admin/jsonadm/)

Exploitation Steps:

  1. Identify the target endpoint:

    # Discover available endpoints
    curl -X OPTIONS https://target.com/admin/jsonadm/ -H "Authorization: Bearer <editor_token>"
    
  2. Delete an admin group:

    # Replace <group_id> with the actual ID of an admin group
    curl -X DELETE https://target.com/admin/jsonadm/group?id=<group_id> \
      -H "Authorization: Bearer <editor_token>"
    
  3. Delete a locale configuration:

    # Replace <locale_id> with the actual ID of a locale
    curl -X DELETE https://target.com/admin/jsonadm/locale?id=<locale_id> \
      -H "Authorization: Bearer <editor_token>"
    

Expected Outcome: The editor user successfully removes the specified admin group or locale, causing disruption to administrative access or localization settings.

Blue Team

Detection and Response:

  1. Monitor API logs for DELETE requests to /admin/jsonadm/group or /admin/jsonadm/locale from non-admin users.
  2. Alert on configuration changes to admin groups or locales, especially if performed by editor accounts.
  3. Implement additional logging for all DELETE operations on sensitive resources.
  4. Review user permissions regularly to ensure least privilege principles are enforced.
  5. Apply the patch immediately to prevent exploitation.

Indicators of Compromise (IOCs)

  • Network IOCs:

    • DELETE requests to /admin/jsonadm/group or /admin/jsonadm/locale from editor-level accounts
    • Unusual patterns of configuration changes in Aimeos backend logs
  • System IOCs:

    • Missing admin groups or locale entries in the database
    • Error logs showing failed admin operations due to missing groups
    • Unexpected changes to user permissions or group memberships
  • File IOCs:

    • Modified configuration files in ./config/ directory (if applicable)
    • Changes to database tables related to groups (mshop_group) or locales (mshop_locale)

Detection Engineering

YARA Rule

rule CVE_2024_39322_Aimeos_Access_Control {
    meta:
        description = "Detects potential exploitation of CVE-2024-39322 in Aimeos ai-admin-jsonadm"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "https://nvd.nist.gov/vuln/detail/CVE-2024-39322"
        severity = "medium"
    strings:
        $s1 = "deleteAction" nocase
        $s2 = "getGroupManager" nocase
        $s3 = "deleteItem" nocase
        $s4 = "admin/jsonadm" nocase
    condition:
        all of ($s1, $s2, $s3) or ($s4 and any of ($s1, $s2, $s3))
}

Sigma Rule

title: CVE-2024-39322 - Aimeos Improper Access Control
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects DELETE requests to Aimeos admin JSON API endpoints from non-admin users
author: Valters IT
date: 2024-01-01
logsource:
    category: webserver
    product: apache
    service: access
detection:
    selection:
        http.method: "DELETE"
        http.url|contains: 
            - "/admin/jsonadm/group"
            - "/admin/jsonadm/locale"
    condition: selection
falsepositives:
    - Legitimate admin users performing maintenance
level: medium
tags:
    - attack.privilege_escalation
    - cve.2024.39322

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2024-39322 - Aimeos Improper Access Control Attempt";
    flow:to_server;
    http.method; content:"DELETE";
    http.uri; content:"/admin/jsonadm/";
    http.uri; content:"group" or content:"locale";
    classtype:attempted-admin;
    sid:1000001;
    rev:1;
    reference:cve,2024-39322;
    priority:2;
)

Remediation & Mitigation

Immediate Actions:

  1. Update the package to the patched version for your branch:

    • For Aimeos 2020.x: Update to 2020.10.13 or later
    • For Aimeos 2021.x: Update to 2021.10.6 or later
    • For Aimeos 2022.x: Update to 2022.10.3 or later
    • For Aimeos 2023.x: Update to 2023.10.4 or later
    • For Aimeos 2024.x: Update to 2024.4.2 or later
  2. Review user roles and ensure editor accounts do not have unnecessary permissions.

  3. Implement additional access controls at the web server or application firewall level to restrict DELETE requests to sensitive endpoints.

Long-term Mitigations:

  • Adopt a least-privilege model for all user roles
  • Implement regular security audits of API endpoints
  • Use Web Application Firewall (WAF) rules to block unauthorized DELETE requests
  • Enable detailed logging and monitoring for all administrative actions
  • Consider implementing two-factor authentication for admin-level operations

Workarounds (if patching is not immediately possible):

  • Temporarily disable the JSON API for non-admin users
  • Implement a custom middleware that checks user roles before processing DELETE requests
  • Restrict network access to the admin API endpoints

Valters IT
Senior DevSecOps & Cyber Threat Intelligence Expert
Report generated for CVE-2024-39322

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