NumPy是一个Python科学计算包,它支持大量的维度数组与矩阵计算,同时针对数据运算提供大量的数学函数库。
NumPy 1.16.0及之前版本中存在安全漏洞,该漏洞程序没有安全地使用pickle模块(Python)。远程攻击者可借助特制的序列化对象利用该漏洞执行任意代码。
** 有争议 ** NumPy 1.9.x 中 ctors.c 的 PyArray_NewFromDescr_int 函数中存在缓冲区溢出漏洞,当从 Python 代码中指定大维度(超过 32 个)数组时,这可能会让恶意用户导致拒绝服务。注意:供应商不同意这是一个漏洞;在(非常有限的)情况下,用户可能会引发缓冲区溢出,用户很可能已经拥有至少通过耗尽内存来引发拒绝服务的特权。进一步触发此操作需要使用不常见的 API(复杂的结构化数据类型),非特权用户不太可能使用该 API。
NumPy 1.22.0 之前的 numpy.core 组件中的不完整字符串比较允许攻击者通过构造特定字符串对象来触发稍微不正确的复制。注意:供应商声明此报告的代码行为是“完全无害的”。
** 有争议 ** 由于缺少返回值验证,NumPy < 中的 numpy.sort 和 PyArray_DescrNew 函数中的 1.19 中存在空指针取消引用漏洞,这使得攻击者可以通过重复创建排序数组来进行 DoS 攻击。注意:虽然正确的是缺少验证,但只有内存耗尽才会发生错误。如果用户可以耗尽内存,则他们已经拥有特权。此外,实际上不可能构建一个可以针对恰好在此位置发生的内存耗尽的攻击。
** DISPUTED ** NumPy < 1.19 中 fortranobject.c 的 array_from_pyobj 函数中的缓冲区溢出,这使得攻击者可以通过小心地构造具有负值的数组来进行拒绝服务攻击。注意:供应商不同意这是一个漏洞;负维度只能由已经拥有特权的用户(或内部)创建。
imageio 是一个 Python 库,它提供了一个简单的接口来读取和写入各种图像数据,包括动画图像、体积数据和科学格式。此软件包的受影响版本容易受到任意代码注入的影响。
评论