Microsoft Windows CSRSS.EXE栈溢出漏洞 (MS05-0…
2008-04-09 04:23:59来源:互联网 阅读 ()
发布日期:2005-04-15
更新日期:2005-04-15
受影响系统:
Microsoft Windows 2000 SP4不受影响系统:
Microsoft Windows 2000 SP3
Microsoft Windows XP SP2
Microsoft Windows XP SP1
Microsoft Windows XP 64-bit Edition SP1
Microsoft Windows XP 64-Bit Edition 2003版(Itanium)
Microsoft Server 2003 for Itanium-based Systems
Microsoft Server 2003
Microsoft Windows XP Professional x64 Edition描述:
Microsoft Server 2003 x64 Edition
Microsoft Server 2003 SP1 for Itanium-based Sys
Microsoft Server 2003 Service Pack 1
CVE(CAN) ID: CVE-2005-0551
Windows内核是操作系统核心部分,提供系统级别服务,如设备和内存管理,分配处理器时间和管理错误处理。
Win32 API在实现命令行和其他基于字符的用户界面时使用控制台窗口。实现上述功能的特定代码位于CSRSS.EXE系统进程中。CSRSS.EXE进程的WINSRV.DLL文件创建并管理控制台窗口。如果用户从控制台窗口的系统菜单中选择了“属性”选项的话,包含有控制台窗口信息的数据结构就被拷贝到了文件映射的对象。该数据结构被称为CONSOLE_STATE_INFO,结构如下:
typedef struct _CONSOLE_STATE_INFO
{
/* 0x00 */ DWORD cbSize;
/* 0x04 */ COORD ScreenBufferSize;
/* 0x08 */ COORD WindowSize;
/* 0x0c */ POINT WindowPosition;
/* 0x14 */ COORD FontSize;
/* 0x18 */ DWORD FontFamily;
/* 0x1c */ DWORD FontWeight;
/* 0x20 */ WCHAR FaceName[32]; /* Buffer Overflow */
/* 0x60 */ DWORD CursorSize;
/* 0x64 */ BOOL FullScreen;
/* 0x68 */ BOOL QuickEdit;
/* 0x6c */ BOOL DefaultWindowPos;
/* 0x70 */ BOOL InsertMode;
/* 0x74 */ WORD ScreenColors;
/* 0x76 */ WORD PopupColors;
/* 0x78 */ BOOL HistoryNoDup;
/* 0x7c */ DWORD HistoryBufferSize;
/* 0x80 */ DWORD NumberOfHistoryBuffers;
/* 0x84 */ COLORREF ColorTable[16];
/* 0xc4 */ DWORD CodePage;
/* 0xc8 */ DWORD hwnd;
/* 0xcc */ WCHAR ConsoleTitle[2];
} CONSOLE_STATE_INFO, *PCONSOLE_STATE_INFO;
该结构中的值被传送到了WINSRV.DLL中的代码,但该代码没有正确的验证数据。攻击者可以发送全部为0的CONSOLE_STATE_INFO就可以导致CSRSS进程终止和系统崩溃(蓝屏)。
CONSOLE_STATE_INFO数据结构中还包含有指定字体名称的字符串FaceName[32]。该字符串通过wcscpy()函数拷贝到了固定大小的栈缓冲区,但没有任何检查,如下所示:
0x5FFB39DF push [ebp lpFaceName]
0x5FFB39E2 lea eax, [ebp-54h]
0x5FFB39E5 push eax
0x5FFB39E6 call j_wcscpy
攻击者可以通过提供大于32个字节的字符串触发栈溢出,这样就可以完全控制计算机,执行任意代码。
<*来源:David Fritz
链接:http://www.idefense.com/application/poi/display?id=230&type=vulnerabilities&flashstatus=true
http://www.microsoft.com/technet/security/Bulletin/MS05-018.mspx
*>
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 创建如下注册表键:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\System
添加名为DisableCMD的DWORD,将值设置为1禁用命令行提示和批处理文件,或设置为2禁用命令行提示但允许批处理文件。
厂商补丁:
Microsoft
---------
Microsoft已经为此发布了一个安全公告(MS05-018)以及相应补丁:
MS05-018:Vulnerabilities in Windows Kernel Could Allow Elevation of Privilege and Denial of Service (890859)
链接:http://www.microsoft.com/technet/security/Bulletin/MS05-018.mspx
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash