我們所使用的 VS Code 擴充功能是否安全?

什麼是 VS Code?

Visual Studio Code(以下簡稱 VS Code)是一款由微軟(Microsoft)開發的跨平台免費原始碼編輯器,VS Code 至今本身就已擁有強大功能,也像許多受歡迎的開源軟體一樣,VS Code 有豐富的社群參與和擴充功能,這些輔助與除錯工具讓我們改善工作流程、增進工作效率,我們可以選擇在喜歡的主題下敲打鍵盤,並進行各種客製化設定,甚至可以在編輯器裡與喜歡的動物相伴,或是玩貪吃蛇!!



(截圖來源:VS Code Pets

擴充功能的資安風險

因為每個人都可以製作擴充功能,這些功能在上架後將被下載用來開發各種軟體、網站與系統,從可靠的相關調查,例如 Stack Overflow 開發者調查(2021)、(2022),以及各種自發性的文章介紹與同事朋友的分享,或是 microsoft/vscode 在 Github 的星星數(截自2022/11/14 有 139K),我們都可以知道 VS Code 是目前非常受歡迎的編輯器且非常多人使用,而隨著 VS Code 受歡迎的程度不斷往上攀升也代表將成犯罪者攻擊的目標,擴充功能就是阻力較小的攻擊路徑之一,因此我們在開發環境所使用的擴充功能是否安全就會是其中一個重要的資安問題。



(截圖來源:Stack Overflow 開發者調查 2022

要在擴充功能暗藏惡意程式是有可能的,而擴充功能也可能會因為程式的錯誤或寫法疏失造成安全漏洞,目前僅知道微軟公開的官方文件說明會審查擴充功能且是可信任的,但 VS Code 尚未擁有擴充功能的安全管理後台,在 VS Code 官方的 Github 則有擴充功能安全控管的相關討論(#52116,從 2018 討論至今),大家有興趣可以瀏覽或參與討論唷!

安全使用準則

最保險的方式就是不要安裝任何擴充功能,但有些擴充功能確實非常實用,這該怎麼辦呢?因此網絡行動科技的工程部門討論並整理出一些使用準則供大家參考:

希望以上資訊對大家有所幫助~