• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    Python stringobject.c多个远程溢出漏洞

    发布者: 涵韵 | 发布时间: 2025-6-28 22:53| 查看数: 51| 评论数: 0|帖子模式

    受影响系统:
    Python Software Foundation Python <= 2.5.2
    描述:
    --------------------------------------------------------------------------------
    BUGTRAQ  ID: 28749Python是一种开放源代码的脚本编程语言。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


    来源:https://www.jb51.net/hack/5409.html
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表