背景
一个以麒麟V10操作系统搭建的项目上扫描出了python漏洞,都是python版本太低引起,现在需要升级。
升级步骤
在操作系统中直接使用python -V命令,发现版本为3.10.9,这可能是自带的版本。
而这个项目中还使用了conda来管理项目上的python环境, 查看conda创建的环境中的python版本和报告中能对应上。
推测,漏洞扫描是基于运行中的python程序进行。
所以这里直接针对conda中的python环境进行处理。
为了平滑过渡,直接新建一个python环境,然后将旧的环境中的依赖导出,再导入新的python环境。
#1. 创建3.12的版本conda create -n pynew python=3.12 -y#2 在旧版本的环境下,导出相关依赖conda activate pyoldpip freeze > requirements.txt#3 在新版本的环境下,导入相关依赖conda activate pynewpip install -r requirements.txt
注意: 这里导入的时候,可能会报一些错,一些依赖可能会有问题,先暂时把他去除掉。
当所有的依赖下载完之后,运行python程序,这里可能还会报错,说一些模块找不到。
此时,再使用pip install 命令进行安装就行了。
其他
还有个windows服务器也被扫描出了上述python版本漏洞。
处理方式类似,之前这个是直接安装的python环境。
这次想着还是先用conda进行管理,先下载安装好Miniconda。
然后创建一个较新的python环境,导出旧版本的依赖,再导入新版本的依赖。
运行程序,查漏补缺。
现在安全问题还是比较严重,写代码的时候还是要注意这个问题,使用较新的组件库进行开发。