觀點 · 資訊分享

Flatpak 沙盒被整個繞過:任何 App 都可能讀寫主機檔案(CVE-2026-34078,NVD 評分 10)

Linux 常用的 Flatpak 在 1.16.4 以前有個沙盒逃逸漏洞:App 可以靠一個假的捷徑,拿到主機上任意檔案的讀寫權,甚至在主機上執行程式。官方已修補,暫時升不了可關閉 portal 服務。

發布
2026-04-08
篇幅
約 3 分鐘 · 1,503 字
結構
7 節 + 3 題常見問題
標籤
#Flatpak#CVE-2026-34078#沙盒逃逸#Linux#資安
Flatpak 沙盒被整個繞過:任何 App 都可能讀寫主機檔案(CVE-2026-34078,NVD 評分 10)

一句話看懂:Linux 的 Flatpak 在 1.16.4 以前有個沙盒逃逸漏洞,App 可以靠一個假捷徑拿到主機檔案的讀寫權,官方已修補,請盡快更新。

Flatpak 沙盒逃逸漏洞資訊圖卡:App 能藉由假捷徑跳出沙盒,讀寫主機檔案,請升級到 1.16.4

先用白話講:Flatpak 與沙盒

Flatpak 是 Linux 上安裝桌面軟體的一種方式。它的賣點是「沙盒」:每個 App 像住在有門禁的套房,只能使用自己房間裡的東西,不能亂翻你的個人檔案或系統。

套房偶爾也需要跟外面互動,例如「請讓我開啟你的下載資料夾」,這時由一位管理員 portal(入口服務)負責代辦:App 說要借哪個資料夾,管理員確認後幫它掛進套房。

這次的漏洞出在管理員太好說話。

發生什麼事

2026 年 4 月 7 日,Flatpak 專案公開了 CVE-2026-34078 的安全公告:

  • 問題:portal 接受 App 提供的路徑,而這個路徑可以是 App 自己做的符號連結(symlink,像是檔案捷徑),指向主機上任意位置
  • 後果:Flatpak 在執行時,會把「捷徑最後指向的真實主機路徑」掛進沙盒,App 因此拿到所有主機檔案的存取權,還可能在主機環境執行程式碼
  • 影響:官方寫的是每個 Flatpak App 都可能讀寫主機任意檔案並執行程式碼
  • 嚴重度:NVD 評分 10(滿分),GitHub 公告列為嚴重
  • 發現者:Codean Labs

用比喻說:App 遞給管理員一張寫著「去 A 房間」的紙條,但紙條本身其實是個會指到「主機保險箱」的假路標,管理員照著走,就把保險箱搬進套房了。

該怎麼辦?

情況 做法
能更新 把 Flatpak 升到 1.16.4 以上(官方說 1.18.0 也會包含修補)
暫時不能更新 依公告關閉 Flatpak portal 服務,但部分 App 可能運作異常
不確定版本 用 flatpak --version 查看

給開發者的技術細節

  • 受影響版本:Flatpak 1.16.4 以前
  • 修補版本:1.16.4;即將發布的 1.18.0 也會包含修補
  • 官方緩解方式:停用 flatpak-portal.service,公告提供的指令如下
sudo systemctl --global mask flatpak-portal.service && systemctl --user stop flatpak-portal.service
  • 官方也提醒,停用 portal 可能導致部分 App 運作異常,所以只適合當暫時措施
  • 這個漏洞的前提是「有 App 在你的機器上執行」。公告沒有提到被實際利用的情況,但既然攻擊面是 App 本身,不明來源的 Flatpak 尤其要小心

我的看法

很多人把「裝成 Flatpak」當成一種額外的安全保障:就算 App 有問題,也被關在沙盒裡。這次的公告提醒我們,沙盒本身也是軟體,也會有洞。

如果你有用 Linux 桌機做開發,我的做法是:先用套件管理器把 Flatpak 更新到修補版,再順手檢查有哪些 App 是從非官方來源裝的,不需要的就移除。伺服器或 NAS 如果沒有裝 Flatpak,就不在這個漏洞的範圍內,但也建議確認一下。

名詞小辭典

  • 沙盒(Sandbox):把程式關在受限的環境裡,限制它能碰的檔案與系統功能。
  • Portal:Flatpak 裡負責代辦「App 需要存取沙盒外資源」的入口服務。
  • 符號連結(Symlink):一種指向其他位置的檔案捷徑。
  • 沙盒逃逸(Sandbox Escape):程式跳出沙盒的限制,拿到原本不該有的權限。

資料來源

常見問題

Flatpak 是什麼?沙盒又是什麼?
Flatpak 是 Linux 上安裝桌面軟體的一種方式,每個 App 會被關在「沙盒」裡,限制它只能碰自己的資料,不能隨意讀你的個人檔案或系統。
我要怎麼知道自己有沒有受影響?
官方公告指出受影響的版本是 1.16.4 以前。你可以用 flatpak --version 查看目前版本,低於 1.16.4 就請透過發行版的更新管道升級。
官方有提供什麼暫時的緩解方式嗎?
有。公告寫明關閉 Flatpak portal 服務可以緩解,但可能讓某些 App 運作不正常。指令在公告裡有列出,建議照官方原文操作,並在能升級時恢復。
LINE