__________________________________________________________ The U.S. Department of Energy Computer Incident Advisory Capability ___ __ __ _ ___ / | /_\ / \___ __|__ / \ \___ __________________________________________________________ INFORMATION BULLETIN Vulnerability in PGP Desktop January 31, 2007 18:00 GMT Number R-119 ______________________________________________________________________________ PROBLEM: There is a vulnerability in PGP Desktop. PLATFORM: PGP version 9.5 DAMAGE: May allow a remote, authenticated attacker to execute arbitrary code. SOLUTION: Upgrade to PGP version 9.5.1 ______________________________________________________________________________ VULNERABILITY The risk is MEDIUM. May allow a remote, authenticated attacker ASSESSMENT: to execute arbitrary code. ______________________________________________________________________________ LINKS: CIAC BULLETIN: http://www.ciac.org/ciac/bulletins/r-119.shtml ORIGINAL BULLETIN: http://www.ngssoftware.com/advisories/medium-risk- vulnerability-in-pgp-desktop/ ______________________________________________________________________________ [****** Next Generation Bulletin Starts ******] Medium Risk Vulnerability in PGP Desktop January 26th, 2007 Peter Winter-Smith of NGSSoftware has discovered a medium risk vulnerability in PGP Desktop which can allow a remote authenticated attacker to execute arbitrary code on a system on which PGP Desktop is installed. The vulnerability resides within the Windows Service which PGP Desktop installs (which operates under the Local System account), and as such it may be used by any local or remote user (who must be a member of at least the Everyone/ANONYMOUS LOGON groups) to run code with escalated privileges. NGSSoftware have not been able to exploit this issue in the context of a NULL session. The details of this issue are as follows: PGP Desktop installs a service (PGPServ.exe/PGPsdkServ.exe) which exposes a named pipe ‘\pipe\pgpserv’ (or ‘\pipe\pgpsdkserv’ for the PGPsdkServ.exe instance). This pipe is the endpoint for an RPC interface (uuid:15cd3850-28ca-11ce-a4e8-00aa006116cb) which takes the following format: [ uuid(15cd3850-28ca-11ce-a4e8-00aa006116cb), version(1.0), implicit_handle(handle_t rpc_binding) ] interface pgpsdkserv { error_status_t Function_00( [in] /* [ignore] void * */ long element_1 ); typedef struct { long element_2; [size_is(element_2)] [unique] byte *element_3; } TYPE_1; error_status_t Function_01( [in] /* [ignore] void * */ long element_4, [in] [size_is(element_6)] byte element_5[*], [in] long element_6, [in] long element_7, [out] [ref] TYPE_1 *element_8 ); } This interface is used to marshall various objects and information between PGP clients (PGP.dll/PGPsdk.dll) and the PGP service. The vulnerability occurs as a result of the fact that the code responsible for processing the objects which are passed over the interface to the service does not perform any kind of validation on these objects, and instead trusts that object data is completely safe in the form that it is received (i.e., absolute pointers are trusted without validation). NGSSoftware have discovered that if the following object is passed over the interface as the second parameter to function ordinal 1, an absolute pointer is trusted and executed - easily facilitating arbitrary code execution inside of the PGP service process: /* structure passed over rpc: struct { DWORD **pprgMM; // set as absolute pointer to dwUnknown_1 DWORD dwUnknown_1; // set as absolute pointer to ‘rgMM’ DWORD dwCount; // set to value 0 DWORD dwFGUB_signature; // set to value ‘FGUB’ DWORD dwUnknown_2; // set to value ‘rgMM’ DWORD dwUnknown_3; DWORD dwUnknown_4; DWORD dwUnknown_5; DWORD dwUnknown_6; PBYTE pbFunction; // set to absolute address of shellcode // etc… }; */ This issue has been resolved as of PGP Desktop 9.5.1 and NGSSoftware recommends that all users download the updated version from the PGP website: http://www.pgp.com/ NGSSoftware Insight Security Research http://www.ngssoftware.com/ http://www.databasesecurity.com/ http://www.nextgenss.com/ +44(0)208 401 0070 [****** Next Generation Bulletin Ends ******] _______________________________________________________________________________ CIAC wishes to acknowledge the contributions of Next Generation for the information contained in this bulletin. _______________________________________________________________________________ CIAC, the Computer Incident Advisory Capability, is the computer security incident response team for the U.S. Department of Energy (DOE) and the emergency backup response team for the National Institutes of Health (NIH). CIAC is located at the Lawrence Livermore National Laboratory in Livermore, California. CIAC is also a founding member of FIRST, the Forum of Incident Response and Security Teams, a global organization established to foster cooperation and coordination among computer security teams worldwide. CIAC services are available to DOE, DOE contractors, and the NIH. CIAC can be contacted at: Voice: +1 925-422-8193 (7x24) FAX: +1 925-423-8002 STU-III: +1 925-423-2604 E-mail: ciac@ciac.org Previous CIAC notices, anti-virus software, and other information are available from the CIAC Computer Security Archive. World Wide Web: http://www.ciac.org/ Anonymous FTP: ftp.ciac.org PLEASE NOTE: Many users outside of the DOE, ESnet, and NIH computing communities receive CIAC bulletins. If you are not part of these communities, please contact your agency's response team to report incidents. Your agency's team will coordinate with CIAC. The Forum of Incident Response and Security Teams (FIRST) is a world-wide organization. A list of FIRST member organizations and their constituencies can be obtained via WWW at http://www.first.org/. This document was prepared as an account of work sponsored by an agency of the United States Government. Neither the United States Government nor the University of California nor any of their employees, makes any warranty, express or implied, or assumes any legal liability or responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial products, process, or service by trade name, trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation or favoring by the United States Government or the University of California. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or the University of California, and shall not be used for advertising or product endorsement purposes. LAST 10 CIAC BULLETINS ISSUED (Previous bulletins available from CIAC) R-109: Security Vulnerabilities: Buffer Overrun in NetMail 3.52 R-110: eIQnetworks Enterprise SEcurity Analyzer Syslog Server Buffer Overflow R-111: Security Vulnerability in the Sun Ray Server Software Admin GUI R-112: Crafted TCP Packet Can Cause Denial of Service R-113: Crafted IP Option Vulnerability R-114: IPv6 Routing Header Vulnerability R-115: Oracle Critical Patch Update - January 2007 R-116: vlc -- Format String R-117: Kernel Security Update R-118: SIP Packet Reloads IOS Devices Not Configured for SIP