Windows API StretchDIBits 的代码中存在一个BUG(已测试xp sp2和xp sp3),通过利用这个BUG,我们可以精心构筑一个PE文件,当我们使用Explorer.exe 查看含有这个文件的文件夹时,可以让Exploer.exe发生崩溃。
StretchDIBits的函数原型:
WINGDIAPI BOOL WINAPI StretchDIBits(
HDC hdc,
int XDest,
int YDest,
int nDestWidth,
int nDestHeight,
int XSrc,
int YSrc,
int nSrcWidth,
int nSrcHeight,
CONST VOID* lpBits,
CONST BITMAPINFO* lpBitsInfo,
UINT iUsage,
DWORD dwRop
);