Python stringobject.c多个远程溢出漏洞                
                
                    所属分类:
                        网络安全 / 漏洞分析                    
                    阅读数:
                        103
                    
                        收藏 0赞 0分享
                    
                 
                
                    受影响系统:
Python Software Foundation Python <= 2.5.2
描述:
--------------------------------------------------------------------------------
BUGTRAQ  ID: 28749
Python是一种开放源代码的脚本编程语言。
Python的核心API提供了多个用于分配字符串对象的函数,其中一个API调用允许分配或重新分配PyStringObject,这个函数为PyString_FromStringAndSize(),该函数获取了两个参数,分别为一个指针和一个有符整数。如果指针非空的话,就会将指向该指针的内存重新分配为第二个参数所指定的大小;如果指针为空,就会分配整数所指定的字节数并返回。
在这个操作期间,没有验证第二个参数是否为负数,而该值与PyStringObject的大小相加并用作了分配函数的长度,可能导致错误的内存分配。 PyBytes_FromStringAndSize()和PyUnicode_FromStringAndSize()函数中也可能存在类似的错误。
以下是Python-2.5.2/Objects/stringobject.c文件中的漏洞代码:
52  PyObject *
53  PyString_FromStringAndSize(const char *str, Py_ssize_t size)
54  {                                                           
55          register PyStringObject *op;
56          assert(size >= 0);
57          if (size == 0 && (op = nullstring) != NULL) {
[...]
63          }
64          if (size == 1 && str != NULL &&
65              (op = characters[*str & UCHAR_MAX]) != NULL)
66          {
[...]
72          }
73
74          /* Inline PyObject_NewVar */
75 op = (PyStringObject *)PyObject_MALLOC(sizeof(PyStringObject)  
size);
type Py_ssize_t被定义为有符型,在56行的assert()试图确认是否过滤了第二个参数,但在非调试版本中遗漏了assert(),然后在75行将字符串对象的大小参数和字符串对象的大小相加并作为参数传送给了PyObject_MALLOC()。
<*来源:Justin Ferguson (jferguson@ioactive.com)
  
  链接:http://marc.info/?l=bugtraq&m=120794763804162&w=2
        http://bugs.python.org/issue2587
*>
建议:
--------------------------------------------------------------------------------
厂商补丁:
Python Software Foundation
--------------------------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://svn.python.org/view?rev=62271&view=rev
http://svn.python.org/view?rev=62272&view=rev
                                    
             
            
                
                2007年12月网络安全漏洞总结
 声明:本十大安全漏洞由NSFOCUS安全小组根据安全漏洞的严重程度、影响范围等因素综合评出,仅供参考
  1.2007-12-11 Microsoft消息队列服务栈溢出漏洞
  综述:
  Microsoft Windows是微软发布的非常流行的操
                    
                    收藏 0赞 0分享
OmniPCX Enterprise存在远程命令注入漏洞
受影响系统:  
Alcatel-Lucent OmniPCX Enterprise <= 7.1  
不受影响系统:  
Alcatel-Lucent OmniPCX Enterprise 7.1 patch F5.401.19  
Alcatel-Luc
                    
                    收藏 0赞 0分享
Sun Java jpiexp32.dll对象名称含空指针引用漏洞
受影响系统: 
Sun JRE < 5.0 Update 14 
不受影响系统: 
Sun JRE 5.0 Update 14 
描述: 
Solaris系统的Java运行时环境(JRE)为JAVA应用程序提供可靠的运行环境。  
JRE处理畸
                    
                    收藏 0赞 0分享
InterBase和Firebird远程栈缓冲区溢出漏洞
受影响系统: 
Borland InterBase WI-V8.1.0.257 
Borland InterBase WI-V8.0.0.123 
Borland InterBase WI-V7.5.1.80 
Borland InterB
                    
                    收藏 0赞 0分享
IE 存在document.open()方式地址欺骗漏洞
受影响系统: 
Microsoft Internet Explorer 7.0 
Microsoft Internet Explorer 6.0 SP1 
Microsoft Internet Explorer 6.0 
Microsoft
                    
                    收藏 0赞 0分享
Microsoft IE onunload事件地址栏欺骗漏洞
受影响系统: 
Microsoft Internet Explorer 7.0 
Microsoft Internet Explorer 6.0 SP1 
Microsoft Internet Explorer 6.0 
Microsoft Internet Ex
                    
                    收藏 0赞 0分享
F2blog XMLRPC 上传任意文件漏洞
刚从官方下载的最新版:F2blog-v1.2_build_03.01_full
存在漏洞文件:xmlrpc.php,
影响:可上传任意文件到服务器。
原理:get_http_raw_post_data()是获取最原始的传递过来的数据,也是说不会因为PHP环境的ma
                    
                    收藏 0赞 0分享
FTP客户端目录遍历漏洞可向任意位置写文件
FFFTP是一款小型的FTP客户端软件。FFFTP客户端没有正确地验证FTP服务器所返回的LIST命令响应中包含有目录遍历序列(斜线)的文件名,如果用户受骗从恶意的FTP服务器下载的目录包含有带有恶意文件名的文件的话,就可能导致向用户系统的任意位置写入文件。  
    受影
                    
                    收藏 0赞 0分享
                 查看更多