oss-sec mailing list archives
Re: Retrospective by 'gpg.fail' authors
From: Werner Koch <wk () gnupg org>
Date: Wed, 16 Sep 2026 11:13:44 +0200
On Wed, 16 Sep 2026 02:27, Sam James said:
Werner Koch <wk () gnupg org> writes:Hi!Thank you Werner!On Mon, 14 Sep 2026 21:28, Clemens Lang said:(1) A RCE in `gpgsm` 2.4.9 when invoked as `gpgsm --debug all --import bad.cert`, with the bad.cert file at [1]. This is apparently a 0-day,Actually in all versions > 2.2 if you use --debug x509. The result is that you get garbled output on stderr. Using the certificates from their Git repo we have not been able to get more than a segv. That is obvious because the DER is used as printf format string. How it is possible to get a an RCE is not clear to me - at least not with the sample certificate. We need a real reproducers. Maybe the presentation used a custom build. It uses libgcrypt 1.12.4 which is not yet used in any binary we released. This is the fix: if (DBG_X509) - log_debug(skider, skiderlen, "ski is:"); + log_printhex (skider, skiderlen, "ski is:"); We did not used -Wformat-nonliteral which would have caught it due to gcc problems and distros requiring -Werror.You should feel free these days to use whatever -W* you want/need to. No distros should be using -Werror without at least being willing to
Yes, sure. But 2003 was a different time and that part of the code was
simply forgotten:
commit 8ab35a7d26707dfa0032b3b0dbde6a984a9683cb
Author: Werner Koch <wk () gnupg org>
AuthorDate: Wed Dec 17 12:26:38 2003 +0000
* gettime.c (asctimestamp): Add a note on a non-avoidable gcc warning.
* util.h [!HAVE_VASPRINTF]: Add printf format attribute to the
replacement function.
The more interesting thing is that no source code scanning or AI found
the really obvious bug introduced 6 years ago:
commit b1694987bb6484405d41d34046a5290176feadd0
Author: Werner Koch <wk () gnupg org>
AuthorDate: Wed May 13 21:21:24 2020 +0200
sm: Support import and verification of EdDSA certificates.
* sm/certdump.c (gpgsm_get_serial): New.
* sm/certcheck.c (gpgsm_check_cert_sig): Support EdDSA signatures.
Salam-Shalom,
Werner
--
The pioneers of a warless world are the youth that
refuse military service. - A. Einstein
Attachment:
openpgp-digital-signature.asc
Description:
Current thread:
- Retrospective by 'gpg.fail' authors Sam James (Sep 12)
- Re: Retrospective by 'gpg.fail' authors Peter Gutmann (Sep 13)
- Re: Retrospective by 'gpg.fail' authors Clemens Lang (Sep 14)
- Re: Retrospective by 'gpg.fail' authors Werner Koch (Sep 15)
- Re: Retrospective by 'gpg.fail' authors Sam James (Sep 15)
- Re: Retrospective by 'gpg.fail' authors Werner Koch (Sep 16)
- Re: Retrospective by 'gpg.fail' authors Soatok Dreamseeker (Sep 16)
- Re: Retrospective by 'gpg.fail' authors Peter Gutmann (Sep 16)
- Re: Removing dead code (was: Retrospective by 'gpg.fail' authors) Jacob Bachmeyer (Sep 17)
- Re: Removing dead code (was: Retrospective by 'gpg.fail' authors) Peter Gutmann (Sep 18)
- Re: Retrospective by 'gpg.fail' authors Werner Koch (Sep 15)
- Re: Retrospective by 'gpg.fail' authors Werner Koch (Sep 17)
