您所在的位置: 首頁 >
安全研究 >
安全通告 >
Pac-Resolver遠(yuǎn)程代碼執(zhí)行漏洞
【漏洞通告】Pac-Resolver遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2021-23406)
0x00 漏洞概述
0x01 漏洞詳情
Pac-resolver是一個廣泛使用的npm包,該包的每周下載量超過300萬次,GitHub 上有285k公共依賴存儲庫。
近日,Pac-resolver中被披露存在一個遠(yuǎn)程代碼執(zhí)行漏洞(CVE-2021-23406),該漏洞的CVSSv3評分為9.8。
代理自動配置(PAC)文件是用 JavaScript 編寫的腳本,它決定網(wǎng)絡(luò)瀏覽器的請求是直接發(fā)送到目的地還是轉(zhuǎn)發(fā)到指定主機名的web代理服務(wù)器。PAC文件是在企業(yè)環(huán)境中分發(fā)代理規(guī)則的方式。
Pac-resolver包用于Pac-Proxy-Agent中的PAC文件支持,而Pac-Proxy-Agent又被用于Proxy-Agent中,然后被作為Node.js中HTTP代理自動檢測和配置的標(biāo)準(zhǔn)可用包而被廣泛使用。Pac-resolver包非常受歡迎,Proxy-Agent 也幾乎無處不在,從 AWS 的 CDK 工具包到Mailgun SDK 再到 Firebase CLI。
由于Pac-Proxy-Agent沒有正確地對PAC文件進(jìn)行沙箱處理,導(dǎo)致不受信任的PAC文件可以被濫用,從而使得攻擊者可以完全突破沙箱并在系統(tǒng)上運行任意代碼。但要利用此漏洞,攻擊者要么能夠駐留在本地網(wǎng)絡(luò)上,要么能夠篡改 PAC 文件的內(nèi)容,要么可以結(jié)合其它漏洞更改代理配置。
研究人員表示,該漏洞是針對VM 模塊的眾所周知的攻擊,因為Node沒有完全隔離沙箱的上下文。該漏洞的修復(fù)方法是使用真正的沙箱而不是VM 內(nèi)置模塊。
影響范圍
Pac-Resolver(npm)版本 < 5.0.0
0x02 處置建議
目前已在Pac-Resolver v5.0.0、Pac-Proxy-Agent v5.0.0 和 Proxy-Agent v5.0.0中修復(fù)了此漏洞,建議受影響的用戶及時升級更新。
下載鏈接:https://www.npmjs.com/package/pac-resolver
此外,RedHat于2021年8月22日發(fā)布了CVE-2021-23406的安全公告,表示Red Hat Advanced Cluster Management for Kubernetes 附帶了存在該漏洞的組件,但受影響的組件受到用戶認(rèn)證的保護(hù),從而降低了該漏洞的潛在影響。建議相關(guān)用戶查看RedHat發(fā)布的安全公告并及時修復(fù)。
參考鏈接:https://access.redhat.com/security/cve/cve-2021-23406
0x03 參考鏈接
https://httptoolkit.tech/blog/npm-pac-proxy-agent-vulnerability/
https://www.npmjs.com/package/pac-resolver
https://nvd.nist.gov/vuln/detail/CVE-2021-23406
https://thehackernews.com/2021/09/critical-bug-reported-in-npm-package.html
0x04 更新版本
0x05 文檔附錄
CNVD:www.cnvd.org.cn
CNNVD:www.cnnvd.org.cn
CVE:cve.mitre.org
CVSS:www.first.org
NVD:nvd.nist.gov
來源:維他命安全