PinTheft:Linux RDS Zerocopy 雙重釋放透過 io_uring 實現本地提權
oss-security · 2026-05-19
一個命名為 PinTheft 的 Linux 核心本地提權(LPE)漏洞於 2026 年 5 月 19 日在 oss-security 列表公開,影響啟用 CONFIG_RDS + CONFIG_RDS_TCP 的核心。漏洞利用 RDS(Reliable Datagram Sockets)的 zerocopy 傳送路徑中的 double-free,透過 io_uring fixed buffer 覆寫 SUID 二進位檔案的 page cache,從而以 root 執行任意程式碼。
漏洞機制
RDS 的 zerocopy 傳送路徑允許零拷貝資料傳輸,依賴 page pinning 機制追蹤記憶體頁面。當 zerocopy 操作失敗時,頁面參考計數(refcount)的回收邏輯存在 double-free:攻擊者可透過 io_uring 的 fixed buffer 功能觸發此路徑,讓一個頁面的 refcount 錯誤歸零後被標記為可回收,而此時頁面仍被用於 page cache(作為 SUID 二進位的磁碟快取)。覆寫成功後,下次執行該 SUID 程式即以 root 身份執行攻擊者植入的程式碼。
受影響版本與暴露條件
- 需要核心編譯時啟用
CONFIG_RDS與CONFIG_RDS_TCP - Arch Linux 預設啟用上述選項,是主要高風險發行版
- 大多數主流發行版(Ubuntu、Fedora、Debian)預設未啟用 RDS,攻擊面較小
- 攻擊者需要本地帳戶(非遠端 RCE),但不需要特殊權限
修補與緩解
建議措施:檢查 /proc/config.gz 或 CONFIG_RDS 是否啟用;若不需要 RDS,透過 blacklist rds 加入核心模組黑名單即可立即緩解。上游 patch 已提交至 LKML,Gentoo 已將修補納入其安全支援核心的 Fragnesia v5 patch set。
CISA 承包商在 GitHub 公開洩漏 AWS GovCloud 認證長達六個月
KrebsOnSecurity · 2026-05-20
一名為美國網路安全暨基礎設施安全局(CISA)及其上級機關國土安全部(DHS)服務的承包商(Nightwing 公司),在 GitHub 上維護了一個名為 "Private-CISA" 的公開 repository,其中包含高度敏感的認證資訊與系統文件。該 repo 從 2025 年 11 月起公開,至 2026 年 5 月中才被移除,暴露長達六個月。
洩漏的認證內容
- 三個 AWS GovCloud 帳戶的管理員認證(CSV 格式明文儲存,檔名
AWS-Workspace-Firefox-Passwords.csv) - CISA 內部程式碼倉儲(Artifactory)的存取 token
- SSH 私鑰與其他認證材料
- GitHub Personal Access Token(PAT)與 OAuth token
更嚴重的是,承包商刻意停用 GitHub 的預設 secret detection 功能,使 GitHub 無法自動偵測並通報洩漏的憑證。
潛在影響
資安研究員 Philippe Caturegli 評估:「這是橫向移動的理想入口點。在某些軟體套件中植入後門,之後每次有人建置新系統,就會帶著後門部署出去。」AWS GovCloud 是專為美國政府機關設計的隔離雲端環境,若攻擊者取得管理員權限,影響範圍可延伸至 CISA 安全研發環境。CISA 官方表示「目前沒有跡象顯示敏感資料被存取」,但無法排除未偵測到的存取行為。
原始來源:KrebsOnSecurity
@beproduct/nestjs-auth 供應鏈攻擊:Mini Shai-Hulud 蠕蟲 CVSS 10.0
GitHub Security Advisory · 2026-05-19
2026 年 5 月 11 至 12 日,攻擊者發布了 @beproduct/nestjs-auth 套件的 18 個惡意版本(0.1.2 至 0.1.19),注入屬於 Mini Shai-Hulud 供應鏈蠕蟲攻擊活動的惡意後安裝腳本(postinstall script)。CVSS 評分 10.0(Critical)。安全版本為 0.1.20(從乾淨的 0.1.1 重新發布)。
惡意程式碼行為
後安裝腳本針對性地竊取開發者環境中的高價值憑證:
- npm 相關:
~/.npmrc中的 npm token、GitHub Personal Access Token(gho_*格式)、Actions OIDC token - 雲端認證:AWS credentials(
~/.aws/credentials)、HashiCorp Vault token - 環境變數:系統中所有包含
SECRET、TOKEN、KEY等關鍵字的環境變數 - 外洩目標:
filev2.getsession.org
蠕蟲還寫入持久化工件,修改 IDE(VS Code、Claude Desktop 等)的 hook 配置,確保後續存取能力不因清除 npm 套件而消失。
緩解步驟
- 移除受影響版本,清除 npm cache
- 安裝乾淨版本
0.1.20 - 輪換所有憑證:npm token、GitHub PAT、AWS key、Vault token
- 掃描惡意檔案:
tanstack_runner.js、.claude/、.vscode/中的可疑 hook - 審查 repository 歷史,確認是否有未授權的 commit