Er is een kwetsbaarheid (CVE-2025-47934) vastgesteld in de OpenPGP.js-bibliotheek, waardoor een aanvaller een gewijzigd bericht kan versturen dat door de ontvanger als geverifieerd wordt beschouwd (de functies openpgp.verify en openpgp.decrypt retourneren een indicatie van succesvolle verificatie van de digitale handtekening, ondanks het feit dat de inhoud is vervangen en verschilt van de gegevens waarvoor de handtekening is gemaakt). Het beveiligingslek is verholpen in de releases OpenPGP.js 5.11.3 en 6.1.1. Het probleem heeft alleen betrekking op OpenPGP.js 5.x en 6.x branches, en niet op OpenPGP.js 4.x.
De OpenPGP.js-bibliotheek biedt een zelfstandige JavaScript-implementatie van het OpenPGP-protocol, waarmee u versleutelingsbewerkingen kunt uitvoeren en met digitale handtekeningen op basis van openbare sleutels in de browser kunt werken. Het project wordt ontwikkeld door ontwikkelaars van Proton Mail en wordt, naast het organiseren van end-to-end-encryptie van berichten in Proton Mail, gebruikt in projecten als FlowCrypt, Mymail-Crypt, UDC, Encrypt.to, PGP Anywhere en Passbolt.
De kwetsbaarheid heeft betrekking op de verificatieprocedures voor ingesloten teksthandtekeningen (openpgp.verify) en ondertekende en gecodeerde berichten (penpgp.decrypt). Een aanvaller kan bestaande ondertekende berichten gebruiken om nieuwe berichten te maken. Wanneer deze berichten worden uitgepakt door een kwetsbare versie van OpenPGP.js, worden vervangende inhoud opgehaald die verschilt van de inhoud van het oorspronkelijke ondertekende bericht. De kwetsbaarheid heeft geen betrekking op handtekeningen die los van de tekst worden verspreid (het probleem treedt alleen op als de handtekening samen met de tekst als één enkel gegevensblok wordt verzonden).
Om een vals bericht te maken, hoeft een aanvaller alleen maar over één bericht met een ingebedde of aparte handtekening te beschikken en kennis te hebben van de originele gegevens die in dit bericht zijn ondertekend. Een aanvaller kan het bericht zo aanpassen dat de aangepaste versie van de handtekening nog steeds als correct wordt beschouwd. Op vergelijkbare wijze kunnen gecodeerde berichten met een handtekening worden aangepast, zodat bij het uitpakken de door de aanvaller toegevoegde gegevens weer worden geretourneerd.
Bron: opennet.ru
