不得了了!Python 又爆出重大 Bug!
對(duì)此,在 Python 3.8.8 和或 3.9.2 RC 版本剛剛發(fā)布三天之后,在部分用戶對(duì)安全漏洞擔(dān)憂的壓力下,新版 Python 加快了發(fā)布的進(jìn)程。同時(shí),PSF 敦促 Python 用戶盡快將系統(tǒng)升級(jí)到 Python 3.8.8 或 3.9.2,特別是需要解決被跟蹤為 CVE-2021-3177 的遠(yuǎn)程代碼執(zhí)行(RCE)漏洞。
Python 發(fā)布團(tuán)隊(duì)表示:"自從宣布 Python 3.8.8 和 3.9.2 RC 版本發(fā)布以來(lái),我們收到了來(lái)自終端用戶的一些關(guān)于 CVE-2021-3177 安全方面的詢問(wèn),并敦促我們加快最終版本的發(fā)布。”
具體的漏洞在于,Python 3.x 到 3.9.1 的 ctypes/callproc.c 中 PyCArg_repr 具有緩沖溢出,這可能導(dǎo)致遠(yuǎn)程代碼執(zhí)行。
它也會(huì)影響到 "接受浮點(diǎn)數(shù)作為不信任的輸入的 Python 應(yīng)用程序,如 c_double. param 的 1e300 參數(shù)所示。
所以說(shuō),只要你用的是 Python3,并且是 Python 3.8.8 之前的 Python 版本,都會(huì)面臨這個(gè)漏洞,比如 Python 3.6、Python 3.7 等。
該 Bug 的發(fā)生是因?yàn)椴话踩厥褂昧?sprintf"。影響之所以廣泛,因?yàn)?Python 已預(yù)裝安裝到了多個(gè) Linux 發(fā)行版和 Windows 10 系統(tǒng)中。
當(dāng)前,各種 Linux 發(fā)行版(如 Debian)已經(jīng)向后移植了安全補(bǔ)丁,以確保屏蔽內(nèi)置版本的 Python。
RedHat 也發(fā)布公告表示,該漏洞是常見的內(nèi)存缺陷。“在 Python 內(nèi)提供的 ctypes 模塊中發(fā)現(xiàn)了基于堆棧的緩沖區(qū)溢出。使用 ctypes 而不仔細(xì)驗(yàn)證傳遞給它的輸入的應(yīng)用程序可能容易受到此漏洞的攻擊,這將允許攻擊者通過(guò)緩沖區(qū)溢出并使應(yīng)用程序奔潰。”

同時(shí)紅帽也針對(duì)自家的版本進(jìn)行了安全版本說(shuō)明:

不過(guò),為了避免一些不必要的麻煩,還是呼吁大家盡快升級(jí)。
Python 新版下載地址:
https://www.python.org/downloads/
或者通過(guò)其他方式升級(jí),比如 pyenv、conda 等,升級(jí)到 Python 3.8.8 或者 Python 3.9.2 即可。
具體操作文檔可見:
https://github.com/pyenv/pyenv
https://conda.io/projects/conda/en/latest/user-guide/concepts/environments.html
戀習(xí)Python 關(guān)注戀習(xí)Python,Python都好練
推薦閱讀:
Python四六級(jí)考試,快來(lái)測(cè)試一下自己的編程水平吧 再見,拼多多!再見,黃錚! Python---模塊 別找了,這是 Pandas 最詳細(xì)教程了 Python的高級(jí)特征你知多少?來(lái)對(duì)比看看 Python---文本文件的輸入輸出 Python---詞典 好文章,我在看??
