【漏洞通告】Pac-Resolver遠程代碼執行漏洞(CVE-2021-23406)
發布時間 2021-09-140x00 漏洞概述
CVE ID | CVE-2021-23406 | 時 間 | 2021-08-24 |
類 型 | RCE | 等 級 | 高危 |
遠程利用 | 是 | 影響范圍 | < 5.0.0 |
攻擊復雜度 | 低 | 可用性 | 高 |
用戶交互 | 無 | 所需權限 | 無 |
PoC/EXP | 在野利用 |
0x01 漏洞詳情
Pac-resolver是一個廣泛使用的npm包,該包的每周下載量超過300萬次,GitHub 上有285k公共依賴存儲庫。
近日,Pac-resolver中被披露存在一個遠程代碼執行漏洞(CVE-2021-23406),該漏洞的CVSSv3評分為9.8。
代理自動配置(PAC)文件是用 JavaScript 編寫的腳本,它決定網絡瀏覽器的請求是直接發送到目的地還是轉發到指定主機名的web代理服務器。PAC文件是在企業環境中分發代理規則的方式。
Pac-resolver包用于Pac-Proxy-Agent中的PAC文件支持,而Pac-Proxy-Agent又被用于Proxy-Agent中,然后被作為Node.js中HTTP代理自動檢測和配置的標準可用包而被廣泛使用。Pac-resolver包非常受歡迎,Proxy-Agent 也幾乎無處不在,從 AWS 的 CDK 工具包到 Mailgun SDK 再到 Firebase CLI。
由于Pac-Proxy-Agent沒有正確地對PAC文件進行沙箱處理,導致不受信任的PAC文件可以被濫用,從而使得攻擊者可以完全突破沙箱并在系統上運行任意代碼。但要利用此漏洞,攻擊者要么能夠駐留在本地網絡上,要么能夠篡改 PAC 文件的內容,要么可以結合其它漏洞更改代理配置。
研究人員表示,該漏洞是針對VM 模塊的眾所周知的攻擊,因為Node沒有完全隔離沙箱的上下文。該漏洞的修復方法是使用真正的沙箱而不是VM 內置模塊。
影響范圍
Pac-Resolver(npm)版本 < 5.0.0
0x02 處置建議
目前已在Pac-Resolver v5.0.0、Pac-Proxy-Agent v5.0.0 和 Proxy-Agent v5.0.0中修復了此漏洞,建議受影響的用戶及時升級更新。
下載鏈接:
https://www.npmjs.com/package/pac-resolver
此外,RedHat于2021年8月22日發布了CVE-2021-23406的安全公告,表示Red Hat Advanced Cluster Management for Kubernetes 附帶了存在該漏洞的組件,但受影響的組件受到用戶認證的保護,從而降低了該漏洞的潛在影響。建議相關用戶查看RedHat發布的安全公告并及時修復。
參考鏈接:
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 更新版本
版本 | 日期 | 修改內容 |
V1.0 | 2021-09-14 | 首次發布 |
0x05 文檔附錄
CNVD:www.cnvd.org.cn
CNNVD:www.cnnvd.org.cn
CVE:cve.mitre.org
CVSS:www.first.org
NVD:nvd.nist.gov
0x06 關于我們
關注以下公眾號,獲取更多資訊: