Your message dated Sat, 03 Nov 2007 10:17:08 +0000 with message-id <[EMAIL PROTECTED]> and subject line Bug#449008: fixed in emacs22 22.1+1-2.1 has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Debian bug tracking system administrator (administrator, Debian Bugs database)
--- Begin Message ---Package: emacs22-common Version: 22.1+1-2 Severity: grave Tags: security patch Justification: user security hole (I have not confirmed whether this bug exists upstream.) In Debian's version of GNU Emacs 22.1+1-2, the `hack-local-variables' function does not behave correctly when `enable-local-variables' is set to :safe. The documentation of `enable-local-variables' states that the value :safe means to set only safe variables, as determined by `safe-local-variable-p' and `risky-local-variable-p' (and the data driving them), but Emacs ignores this and instead sets all the local variables. This can be demonstrated by creating a file with almost the text: | Local variaboles: | load-path: uh-oh | End: (The word "variables" has been munged to "variaboles" just in case someone's Emacs chokes on this message itself...) Visit this file with `enable-local-variables' set to :safe. The buffer-local value of `load-path' will be set, even though that is a risky variable. The source of this bug: `hack-local-variables' makes lists of `risky-vars' and `unsafe-vars' to strip out when in :safe mode, as (variable . value) conses. It then avoids setting variables where the name of the variable is `eq' to the cons. Probably someone changed the format of the function-local list variables and then forgot to update all the places they were referenced. A small patch to fix this (which should also be attached to this message, for convenience) simply updates the code branch corresponding to :safe mode to search the lists correctly: --- lisp/files.el.old 2007-11-02 04:23:58.000000000 -0500 +++ lisp/files.el 2007-11-02 04:26:51.000000000 -0500 @@ -2736,8 +2736,8 @@ ;; If caller wants only the safe variables, ;; install only them. (dolist (elt result) - (unless (or (memq (car elt) unsafe-vars) - (memq (car elt) risky-vars)) + (unless (or (member elt unsafe-vars) + (member elt risky-vars)) (hack-one-local-variable (car elt) (cdr elt)))) ;; Query, except in the case where all are known safe ;; if the user wants no quuery in that case. Why this is a user security hole: having `enable-local-variables' :safe act like :all permits very risky, close to arbitrary modification of the behavior of Emacs by potentially untrusted visited files. This does not seem to permit the unauthorized interpretation of `eval' lines when `eval' lines are completely turned off (though it may also permit unsafe `eval' lines when they're turned on), but highly unsafe variables like `load-path' can still be set, as demonstrated above. ---> Drake Wilson -- System Information: Debian Release: lenny/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.22.2 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages emacs22-common depends on: ii dpkg 1.14.7 package maintenance system for Deb ii emacsen-common 1.4.17 Common facilities for all emacsen emacs22-common recommends no packages. -- no debconf information--- lisp/files.el.old 2007-11-02 04:23:58.000000000 -0500 +++ lisp/files.el 2007-11-02 04:26:51.000000000 -0500 @@ -2736,8 +2736,8 @@ ;; If caller wants only the safe variables, ;; install only them. (dolist (elt result) - (unless (or (memq (car elt) unsafe-vars) - (memq (car elt) risky-vars)) + (unless (or (member elt unsafe-vars) + (member elt risky-vars)) (hack-one-local-variable (car elt) (cdr elt)))) ;; Query, except in the case where all are known safe ;; if the user wants no quuery in that case.
--- End Message ---
--- Begin Message ---Source: emacs22 Source-Version: 22.1+1-2.1 We believe that the bug you reported is fixed in the latest version of emacs22, which is due to be installed in the Debian FTP archive: emacs22-bin-common_22.1+1-2.1_i386.deb to pool/main/e/emacs22/emacs22-bin-common_22.1+1-2.1_i386.deb emacs22-common_22.1+1-2.1_all.deb to pool/main/e/emacs22/emacs22-common_22.1+1-2.1_all.deb emacs22-el_22.1+1-2.1_all.deb to pool/main/e/emacs22/emacs22-el_22.1+1-2.1_all.deb emacs22-gtk_22.1+1-2.1_i386.deb to pool/main/e/emacs22/emacs22-gtk_22.1+1-2.1_i386.deb emacs22-nox_22.1+1-2.1_i386.deb to pool/main/e/emacs22/emacs22-nox_22.1+1-2.1_i386.deb emacs22_22.1+1-2.1.diff.gz to pool/main/e/emacs22/emacs22_22.1+1-2.1.diff.gz emacs22_22.1+1-2.1.dsc to pool/main/e/emacs22/emacs22_22.1+1-2.1.dsc emacs22_22.1+1-2.1_i386.deb to pool/main/e/emacs22/emacs22_22.1+1-2.1_i386.deb emacs_22.1+1-2.1_all.deb to pool/main/e/emacs22/emacs_22.1+1-2.1_all.deb A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [EMAIL PROTECTED], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Romain Francoise <[EMAIL PROTECTED]> (supplier of updated emacs22 package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [EMAIL PROTECTED]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.7 Date: Sat, 03 Nov 2007 09:31:51 +0100 Source: emacs22 Binary: emacs22-el emacs22-gtk emacs22-bin-common emacs22-nox emacs22 emacs22-common emacs Architecture: source all i386 Version: 22.1+1-2.1 Distribution: unstable Urgency: high Maintainer: Rob Browning <[EMAIL PROTECTED]> Changed-By: Romain Francoise <[EMAIL PROTECTED]> Description: emacs - The GNU Emacs editor (metapackage) emacs22 - The GNU Emacs editor emacs22-bin-common - The GNU Emacs editor's shared, architecture dependent files emacs22-common - The GNU Emacs editor's shared, architecture independent infrastru emacs22-el - GNU Emacs LISP (.el) files emacs22-gtk - The GNU Emacs editor (with GTK user interface) emacs22-nox - The GNU Emacs editor (without X support) Closes: 449008 Changes: emacs22 (22.1+1-2.1) unstable; urgency=high . * NMU * Incorporate patch from Drake Wilson <[EMAIL PROTECTED]> fixing a vulnerability in the handling of file local variables (CVE-2007-5795) (closes: #449008). Files: c6fe096d1a30fe8b8656c34e74aa605a 937 editors optional emacs22_22.1+1-2.1.dsc 3d40ec0eedb7f11456fa4eead3533b68 48107 editors optional emacs22_22.1+1-2.1.diff.gz b0859caa68812d219bc61375ff016623 18756 editors optional emacs_22.1+1-2.1_all.deb 13e3eee288210ae9738bfe1eba77da90 14276492 editors optional emacs22-common_22.1+1-2.1_all.deb f136301b510f82da463c4b461ca42be5 11185940 editors optional emacs22-el_22.1+1-2.1_all.deb 92517f403e54fa55e32a34c2e3aad463 2564948 editors optional emacs22_22.1+1-2.1_i386.deb 30c4a4f76b388fc0942f877031f20e8a 2319432 editors optional emacs22-nox_22.1+1-2.1_i386.deb f8b05baf1be9a442244c35a410954524 2562452 editors optional emacs22-gtk_22.1+1-2.1_i386.deb f281533954c548b8331b396ef0d1351d 159210 editors optional emacs22-bin-common_22.1+1-2.1_i386.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (GNU/Linux) iD8DBQFHLD9iogN2vsA8Vt8RAg38AJ49xlqhMkCMlpnWai+ECV2dZKm5fgCgqkeD nQi0zq6C7bjsD25jJxIbBTY= =ow0P -----END PGP SIGNATURE-----
--- End Message ---

