{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-78191","assignerOrgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","state":"PUBLISHED","assignerShortName":"CPANSec","dateReserved":"2026-08-23T18:38:50.604Z","datePublished":"2026-10-31T14:34:30.167Z","dateUpdated":"2026-10-31T14:34:30.167Z"},"containers":{"cna":{"affected":[{"collectionURL":"https://cpan.org/modules","defaultStatus":"unaffected","modules":["WebDyne"],"packageName":"WebDyne","packageURL":"pkg:cpan/WebDyne","programFiles":["lib/WebDyne/Constant.pm","lib/WebDyne/Request/PAGI.pm","lib/WebDyne/Request/PSGI.pm"],"repo":"https://github.com/aspeer/WebDyne","versions":[{"lessThan":"3.022","status":"affected","version":"2.031","versionType":"custom"}]}],"descriptions":[{"lang":"en","value":"WebDyne versions from 2.031 before 3.022 for Perl execute files with .psp anywhere in the name as Perl pages.\n\nWebDyne decides whether to run a requested file as a page by matching its name against WEBDYNE_PSP_EXT_RE, which has no end anchor.\n\nAn application that accepts uploads by checking only the final extension lets a remote attacker upload a file such as report.psp.pdf and run its embedded Perl by requesting it."}],"problemTypes":[{"descriptions":[{"cweId":"CWE-777","description":"CWE-777 Regular Expression without Anchors","lang":"en","type":"CWE"}]}],"providerMetadata":{"orgId":"9b29abf9-4ab0-4765-b253-1875cd9b441e","shortName":"CPANSec","dateUpdated":"2026-10-31T14:34:30.167Z"},"references":[{"tags":["release-notes"],"url":"https://metacpan.org/release/ASPEER/WebDyne-3.022/changes"}],"solutions":[{"lang":"en","value":"Upgrade to WebDyne 3.022 or later."}],"source":{"discovery":"UNKNOWN"},"title":"WebDyne versions from 2.031 before 3.022 for Perl execute files with .psp anywhere in the name as Perl pages","x_generator":{"engine":"cpansec-cna-tool 0.1"}}}}