{"id":"CVE-2026-59231","state":"PUBLISHED","title":"Server-Side Request Forgery in Pentestify PDF export via unvalidated image URLs","description":"Server-Side Request Forgery in the PDF export component in maalfer Pentestify before 1.1.0 allows authenticated users to cause outbound HTTP GET requests from the server to arbitrary attacker-chosen destinations via unvalidated URLs stored in the finding images field or the report client_logo field, which the server-side headless browser fetches while rendering the report.","publishedAt":"2026-07-31T15:06:05.441Z","updatedAt":"2026-07-31T17:41:34.238Z","severity":{"score":5.3,"label":"Medium","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N","source":"Secur0"},"assigner":"Secur0","products":["ccyl13 Pentestify"],"affected":[{"vendor":"ccyl13","product":"Pentestify","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.1.0","versionType":"semver"}],"repo":"https://github.com/ccyl13/Pentestify","programFiles":["backend/schemas.py","backend/main.py","js/app.js"]}],"references":["https://github.com/ccyl13/Pentestify/commit/a058a22b42c6311895622645265df79a60265b1d","https://github.com/ccyl13/Pentestify/releases/tag/v1.1.1","https://secur0.com/en/cna/cve-list/cve-2026-59231-ssrf-in-pentestify-via-unvalidated-image-urls-cve-id-cve-2026-59231"],"weaknesses":["CWE-918"],"ingestedAt":"2026-10-29T20:12:32.778Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/59xxx/CVE-2026-59231.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-59231","state":"PUBLISHED","datePublished":"2026-07-31T15:06:05.441Z","dateUpdated":"2026-07-31T17:41:34.238Z","assignerShortName":"Secur0","assignerOrgId":"4daa8cea-433a-44bd-9456-53b127fc289a","dateReserved":"2026-07-03T11:24:39.241Z"},"containers":{"cna":{"title":"Server-Side Request Forgery in Pentestify PDF export via unvalidated image URLs","descriptions":[{"lang":"en","value":"Server-Side Request Forgery in the PDF export component in maalfer Pentestify before 1.1.0 allows authenticated users to cause outbound HTTP GET requests from the server to arbitrary attacker-chosen destinations via unvalidated URLs stored in the finding images field or the report client_logo field, which the server-side headless browser fetches while rendering the report."}],"affected":[{"vendor":"ccyl13","product":"Pentestify","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.1.0","versionType":"semver"}],"repo":"https://github.com/ccyl13/Pentestify","programFiles":["backend/schemas.py","backend/main.py","js/app.js"]}],"references":[{"url":"https://github.com/ccyl13/Pentestify/commit/a058a22b42c6311895622645265df79a60265b1d","tags":["patch"]},{"url":"https://github.com/ccyl13/Pentestify/releases/tag/v1.1.1","tags":["release-notes"]},{"url":"https://secur0.com/en/cna/cve-list/cve-2026-59231-ssrf-in-pentestify-via-unvalidated-image-urls-cve-id-cve-2026-59231","tags":["technical-description"]}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"LOW","attackRequirements":"NONE","privilegesRequired":"LOW","userInteraction":"NONE","vulnConfidentialityImpact":"LOW","subConfidentialityImpact":"LOW","vulnIntegrityImpact":"LOW","subIntegrityImpact":"LOW","vulnAvailabilityImpact":"NONE","subAvailabilityImpact":"NONE","exploitMaturity":"NOT_DEFINED","Safety":"NOT_DEFINED","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","version":"4.0","baseSeverity":"MEDIUM","baseScore":5.3,"vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-918","lang":"en","description":"CWE-918 Server-Side request forgery (SSRF)","type":"CWE"}]}],"providerMetadata":{"shortName":"Secur0","orgId":"4daa8cea-433a-44bd-9456-53b127fc289a","dateUpdated":"2026-07-31T15:06:05.441Z"},"impacts":[{"capecId":"CAPEC-664","descriptions":[{"lang":"en","value":"CAPEC-664 Server Side Request Forgery"}]}],"cpeApplicability":[{"operator":"OR","nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:ccyl13:pentestify:*:*:*:*:*:*:*:*","versionStartIncluding":"0","versionEndExcluding":"1.1.0"}]}]}],"tags":["x_open-source"],"solutions":[{"lang":"en","value":"Upgrade to version 1.1.0 or higher. The fix was not tagged: the earliest tagged release containing it is v1.1.1.","supportingMedia":[{"type":"text/html","base64":false,"value":"Upgrade to version 1.1.0 or higher.&nbsp;The fix was not tagged: the earliest tagged release containing it is <code>v1.1.1</code>."}]}],"credits":[{"lang":"en","value":"Marcos Turrión García (marcosturriongarcia2005)","type":"finder"},{"lang":"en","value":"Xoán M. Otero Jorge","type":"analyst"},{"lang":"en","value":"Secur0 CNA","type":"coordinator"},{"lang":"en","value":"Mario Álvarez Fernández (maalfer)","type":"remediation developer"},{"lang":"en","value":"Cristian Fernandez Cornejo","type":"analyst"}],"source":{"discovery":"UNKNOWN"},"x_generator":{"engine":"Vulnogram 1.0.4"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-07-31T17:41:06.458188Z","id":"CVE-2026-59231","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-07-31T17:41:34.238Z"}}]}}}