From wk на gnupg.org Tue Mar 6 09:02:45 2007 From: wk на gnupg.org (Werner Koch) Date: Tue, 06 Mar 2007 09:02:45 +0100 Subject: [gnupg-ru] [Announce] Multiple Messages Problem in GnuPG and GPGME Message-ID: <873b4ibxzu.fsf@wheatstone.g10code.de> Multiple Messages Problem in GnuPG and GPGME ============================================== 2007-03-05 Summary ======= Gerardo Richarte from Core Security Technologies identified a problem when using GnuPG in streaming mode. The problem is actually a variant of a well known problem in the way signed material is presented in a MUA. It is possible to insert additional text before or after a signed (or signed and encrypted) OpenPGP message and make the user believe that this additional text is also covered by the signature. The Core Security advisory describes several variants of the attack; they all boil down to the fact that it might not be possible to identify which part of a message is actually signed if gpg is not used correctly. [ Please do not send private mail in response to this message. The mailing list gnupg-devel is the best place to discuss this problem (please subscribe first so you don't need moderator approval [1]). ] Impact ====== All applications using GnuPG without properly using the status interface to verify signed or signed and encrypted messages. All GPGME versions up to and including 1.1.3. Starting with version 1.4.7 and 2.0.3, GnuPG implements an additional and sufficient protection against this common usage problem. Detached signatures are in no way affected by this problem. Description =========== When using gpg (or gpg2) in a pipeline or with redirected input and output additional data may be inserted into a message. This allows to forge a signed message by prefixing it with arbitrary material. A way to create such a message is: echo "This is my sneaky plaintext message" > foobar.txt gpg -z0 --output prefix.gpg --store foobar.txt cat prefix.gpg original-signed-message.gpg > forged.gpg Using gpg naively this results in: $ gpg " [...] and thus gives the impression that the sneaky message is part of the signed Groucho quote. The correct way to use gpg with redirection is by taking care of the status interface: $ gpg --status-fd 1 gpg: Good signature from "Alfa Test (demo key) " [...] Here the PLAINTEXT status lines clearly identify the start of a new message. Note, that using gpg on the command line is in almost all cases not done with redirection but by letting gpg save the the signed message. In this case gpg will save the message to different files or in case the file names are identical, prompt the over to overwrite the first one again. Because the problem of identifying the actual signed content when mixing the signed data and the signature is very common, the long standing suggestion for all digital signatures is to use a detached signature. A detached signature allows to clearly identify what is signed and what is the signature. This is also the reason why PGP/MIME signed messages are in general to be preferred over the old style clear signed messages. Solution ======== Given that there are many applications in use which are subject to the described problem, we have decided to change GnuPG so that such forged OpenPGP messages are detected and the signature verification will fail. GnuPG 1.4.7 has been released today and is available from the usual places [2]. If you don't want to update, a minimal patch against GnuPG 1.4.6 is available at ftp://ftp.gnupg.org/gcrypt/gnupg/patches/gnupg-1.4.6-multiple-message.patch Many applications are using the library GPGME which implements an easy way to process OpenPGP messages using gpg. We have updated GPGME to make it immune against this problem even if an old version of gpg is being used. GPGME 1.1.4 is available from the usual places [2]. A patch (against version 1.1.3 or 1.1.2) is available at ftp://ftp.gnupg.org/gcrypt/gpgme/patches/gpgme-1.1.3-multiple-message.patch Please note that - after applying one of these patches - some vulnerable applications (mainly MUAs) may fail to handle certain messages which are composed of several OpenPGP messages. To continue the support of such messages fixing the application is required as there is no way for GnuPG to do it. Support ======= g10 Code GmbH [3], a Duesseldorf based company owned and headed by GnuPG's principal author, is currently funding GnuPG development. Support contracts or other financial backing will greatly help us to improve the quality of GnuPG. Thanks ====== Gerardo Richarte found this problem. David Shaw greatly helped to analyse and describe the core of the problem. [1] See http://lists.gnupg.org/mailman/listinfo/gnupg-devel [2] See http://www.gnupg.org/download/ [3] See http://www.gnupg.org/service.html ----------- следущая часть ----------- Вложение не в текстовом формате было извлечено… Имя : отсутствует Тип : application/pgp-signature Размер : 196 байтов Описание: отсутствует Url : /pipermail/attachments/20070306/ce639d51/attachment-0001.pgp ----------- следущая часть ----------- _______________________________________________ Gnupg-announce mailing list Gnupg-announce на gnupg.org http://lists.gnupg.org/mailman/listinfo/gnupg-announce From wk на gnupg.org Thu Mar 8 15:36:30 2007 From: wk на gnupg.org (Werner Koch) Date: Thu, 08 Mar 2007 15:36:30 +0100 Subject: [gnupg-ru] [Announce] GnuPG 2.0.3 released Message-ID: <87tzwvvm35.fsf@wheatstone.g10code.de> Hello! We are pleased to announce the availability of a new stable GnuPG-2 release: Version 2.0.3 This is bug fix release. There are also some minor enhancements. The GNU Privacy Guard (GnuPG) is GNU's tool for secure communication and data storage. It can be used to encrypt data, create digital signatures, help authenticating using Secure Shell and to provide a framework for public key cryptography. It includes an advanced key management facility and is compliant with the OpenPGP and S/MIME standards. GnuPG-2 has a different architecture than GnuPG-1 (e.g. 1.4.6) in that it splits up functionality into several modules. However, both versions may be installed alongside without any conflict. In fact, the gpg version from GnuPG-1 is able to make use of the gpg-agent as included in GnuPG-2 and allows for seamless passphrase caching. The advantage of GnuPG-1 is its smaller size and the lack of dependency on other modules at run and build time. We will keep maintaining GnuPG-1 versions because they are very useful for small systems and for server based applications requiring only OpenPGP support. GnuPG is distributed under the terms of the GNU General Public License (GPL). GnuPG-2 works best on GNU/Linux or *BSD systems. Getting the Software ==================== Please follow the instructions found at http://www.gnupg.org/download/ or read on: GnuPG 2.0.3 may be downloaded from one of the GnuPG mirror sites or direct from ftp://ftp.gnupg.org/gcrypt/gnupg/ . The list of mirrors can be found at http://www.gnupg.org/mirrors.html . Note, that GnuPG is not available at ftp.gnu.org. On the FTP server and ist mirrors you should find the following files in the *gnupg* directory: gnupg-2.0.3.tar.bz2 (3.8M) gnupg-2.0.3.tar.bz2.sig GnuPG source compressed using BZIP2 and OpenPGP signature. gnupg-2.0.3-2.0.3.diff.bz2 (29k) A patch file to upgrade a 2.0.2 GnuPG source. The patch file does not include updates of the language files. Note, that we don't distribute gzip compressed tarballs. Checking the Integrity ====================== In order to check that the version of GnuPG which you are going to install is an original and unmodified one, you can do it in one of the following ways: * If you already have a trusted version of GnuPG installed, you can simply check the supplied signature. For example to check the signature of the file gnupg-2.0.3.tar.bz2 you would use this command: gpg --verify gnupg-2.0.3.tar.bz2.sig This checks whether the signature file matches the source file. You should see a message indicating that the signature is good and made by that signing key. Make sure that you have the right key, either by checking the fingerprint of that key with other sources or by checking that the key has been signed by a trustworthy other key. Note, that you can retrieve the signing key using the command finger wk ,at' g10code.com or using a keyserver like gpg --recv-key 1CE0C630 The distribution key 1CE0C630 is signed by the well known key 5B0358A2. If you get an key expired message, you should retrieve a fresh copy as the expiration date might have been prolonged. NEVER USE A GNUPG VERSION YOU JUST DOWNLOADED TO CHECK THE INTEGRITY OF THE SOURCE - USE AN EXISTING GNUPG INSTALLATION! * If you are not able to use an old version of GnuPG, you have to verify the SHA-1 checksum. Assuming you downloaded the file gnupg-2.0.3.tar.bz2, you would run the sha1sum command like this: sha1sum gnupg-2.0.3.tar.bz2 and check that the output matches the first line from the following list: 4680bcb96873191b331252ae40b35e39589c58ca gnupg-2.0.3.tar.bz2 901b8d9fe430e12c14d16365a08d50389c305f9a gnupg-2.0.2-2.0.3.diff.bz2 What's New =========== * By default, do not allow processing multiple plaintexts in a single stream. Many programs that called GnuPG were assuming that GnuPG did not permit this, and were thus not using the plaintext boundary status tags that GnuPG provides. This change makes GnuPG reject such messages by default which makes those programs safe again. --allow-multiple-messages returns to the old behavior. * New --verify-option show-primary-uid-only. * gpgconf may now reads a global configuration file to select which options are changeable by a frontend. The new applygnupgdefaults tool may be used by an admin to set default options for all users. * The PIN pad of the Cherry XX44 keyboard is now supported. The DINSIG and the NKS applications are now also aware of PIN pads. Internationalization ==================== GnuPG comes with support for 27 languages. Due to a lot of new and changed strings most translations are not entirely complete. The Swedish, Turkish, German and Russian translations should be complete. Documentation ============= We are currently working on an installation guide to explain in more detail how to configure the new features. As of now the chapters on gpg-agent and gpgsm include brief information on how to set up the whole thing. Please watch the GnuPG website for updates of the documentation. In the meantime you may search the GnuPG mailing list archives or ask on the gnupg-users mailing lists for advise on how to solve problems. Many of the new features are around for several years and thus enough public knowledge is already available. KDE's KMail is the most prominent user of GnuPG. In fact it has been developed along with the Kmail folks. Mutt users might want to use the configure option "--enable-gpgme" and "set use_crypt_gpgme" in ~/.muttrc to make use of GnuPG-2 to enable S/MIME in addition to a reworked OpenPGP support. The manual is also available online in HTML format at http://www.gnupg.org/documentation/manuals/gnupg/ and as an PDF at http://www.gnupg.org/documentation/manuals/gnupg.pdf . Support ======= Improving GnuPG is costly, but you can help! We are looking for organizations that find GnuPG useful and wish to contribute back. You can contribute by reporting bugs, improve the software, or by donating money. Commercial support contracts for GnuPG are available, and they help finance continued maintenance. g10 Code GmbH, a Duesseldorf based company owned and headed by GnuPG's principal author, is currently funding GnuPG development. We are always looking for interesting development projects. A service directory is available at: http://www.gnupg.org/service.html Thanks ====== We have to thank all the people who helped with this release, be it testing, coding, translating, suggesting, auditing, administering the servers, spreading the word or answering questions on the mailing lists. Happy Hacking, The GnuPG Team (David, Marcus, Werner and all other contributors) -- Werner Koch The GnuPG Experts http://g10code.com ----------- следущая часть ----------- Вложение не в текстовом формате было извлечено… Имя : отсутствует Тип : application/pgp-signature Размер : 196 байтов Описание: отсутствует Url : /pipermail/attachments/20070308/12872c7f/attachment.pgp ----------- следущая часть ----------- _______________________________________________ Gnupg-announce mailing list Gnupg-announce на gnupg.org http://lists.gnupg.org/mailman/listinfo/gnupg-announce