Python 版本: 3.8.5 张量流版本: 2.3.3
问题描述: 我为包含 tensorflow 的软件创建了 Docker 映像。必须通过名为 Sysdig 的工具扫描此图像以查找安全漏洞。Sysdig 正在检测以下文件,因为它属于 Python 版本 3.8.2
/opt/venv/lib/python3.8/site-packages/tensorflow/include/external/local_config_python/python_include/patchlevel.h
我的环境中只有 python 3.8.5 而不是 3.8.2 。
这是 patchlevel.h 的代码片段,似乎 PY_VERSION 为 3.8.2
/* Version parsed out into numeric values */
/*--start constants--*/
#define PY_MAJOR_VERSION 3
#define PY_MINOR_VERSION 8
#define PY_MICRO_VERSION 2
#define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_FINAL
#define PY_RELEASE_SERIAL 0
/* Version as a string */
#define PY_VERSION "3.8.2"
/*--end constants--*/
我什至在这里从 pypi repo 下载了轮子
解压轮盘表明 PY_VERSION 在轮盘内的 patchlevel.h 中硬编码为“3.8.2”。
- 问题 1:patchlevel.h 文件中的这个 PY_VERSION 究竟代表什么?
- 问题 2:这个 PY_VERSION 在运行时真的很重要吗?有效的 python 版本会是 3.8.5,因为我的 docker 映像中只有 3.8.5 二进制文件。
需要此详细信息来确定这是否是误报漏洞。
谢谢