Skip to content

Conversation

@michalz-zoom
Copy link
Member

OpenPGP.js (different PGP library, unrelated to Keybase or KBPGP) recently had an issue where extraneous compressed Literal packet would override the message returned during verification, even if it was not signed.

KBPGP always reads armored PGP buffers to end and rejects packet lists where there is more than one Literal packet. Also, "signers" are a property of the literal packet itself, and we always check the signer of the literal packet we are about to return cleartext data from.

OpenPGP.js (different PGP library, unrelated to Keybase or KBPGP)
recently had an issue where extraneous compressed Literal packet would
override the message returned during verification, even if it was not
signed.

KBPGP always reads armored PGP buffers to end and rejects packet lists
where there is more than one Literal packet. Also, "signers" are a
property of the literal packet itself, and we always check the signer of
the literal packet we are about to return cleartext data from.
@michalz-zoom michalz-zoom force-pushed the dev/michal/pgp-spoofing-test branch from 866d20a to 7dcdca6 Compare June 24, 2025 11:09
@michalz-zoom
Copy link
Member Author

@heronhaye can you take a look? Is it worth to merge this here?

Hope this works - too bad we don't have CI here. I still need to re-run this branch as is, because my node_modules is unclean from all the various experiments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants