如何更新pycryptodomex?解决AWS EC2 Ubuntu实例的CVE-2023-52323漏洞
解决pycryptodomex CVE-2023-52323的更新问题
核心问题
pip3 install pycryptodomex默认只会安装当前环境兼容的最新版本,但如果你的环境存在版本限制、多Python环境冲突,或者是不同层级的安装(系统级vs用户级),就会出现"已安装3.11.0"的提示。CVE-2023-52323的修复版本为3.19.0及以上,需强制指定版本完成更新。
具体操作步骤
1. 强制更新到修复版本
直接指定版本号执行安装命令,覆盖现有版本:
pip3 install --upgrade pycryptodomex>=3.19.0
如果需要更新系统全局Python环境的包,添加sudo权限:
sudo pip3 install --upgrade pycryptodomex>=3.19.0
2. 排查多Python环境冲突
若执行上述命令后版本仍未更新,说明可能存在多个Python环境(如系统默认Python和用户自定义Python),先确认当前pip3对应的Python路径:
which pip3 pip3 --version
若发现pip3指向的不是业务实际使用的Python环境,直接用对应Python的pip模块执行更新:
# 替换成你的实际Python路径,例如/usr/bin/python3 /usr/bin/python3 -m pip install --upgrade pycryptodomex>=3.19.0
3. 处理apt安装的pycryptodomex
Ubuntu 22.04的官方apt仓库中pycryptodomex版本可能低于3.19.0,先检查是否通过apt安装过该包:
dpkg -l | grep pycryptodomex
如果有输出,先卸载apt版本再用pip更新:
sudo apt remove --purge python3-pycryptodomex sudo pip3 install --upgrade pycryptodomex>=3.19.0
4. 验证更新结果
执行以下命令确认版本是否达标:
pip3 show pycryptodomex
输出中Version字段显示3.19.0及以上即为更新成功。
内容的提问来源于stack exchange,提问作者dasigrist
相关产品推荐
相关产品推荐

