破解 McKinsey Lilli:AI 時代的資安黑洞與新戰場

本篇文章更新時間:2026/03/12
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知或向一介資男的 LINE 社群反應。
如果本站內容對你有幫助,歡迎贊助支持


我如何看待 CodeWall 揭露的 McKinsey Lilli 漏洞:AI 資安的下一個臨界點

編輯前言:當我讀到 CodeWall 公開的這篇研究時,最大的震撼不是 McKinsey 被攻破,而是攻擊者是一個「全自動 AI 代理」。這篇文章讓我重新思考:我們以為已經很成熟的資安模型,在 AI 時代其實重新被洗牌。

文章來源: How We Hacked McKinsey's AI Platform

核心觀點 (Key Takeaways)

  • McKinsey 的內部 AI 平台 Lilli,在無認證的情況下被全自動 AI 代理在 2 小時內取得完整讀寫權限。
  • 漏洞核心來自「未受保護的 API + 參數化僅保護值不保護 JSON key」,導致傳統掃描工具漏掉的 SQL injection。
  • 最大的風險不只是資料外洩,而是攻擊者可直接「改寫系統提示(system prompts)」,讓 AI 在毫無跡象下出錯、外洩或被操控。

深入解析

這篇文章講述的,不只是某家公司被駭,更像是一次 AI 時代資安模型的預演。McKinsey 的 Lilli 原本是一個相當令人稱羨的企業級 AI 平台:

  • 提供 43,000 名員工使用
  • 每月處理超過 50 萬個 prompts
  • 連結 10 萬份以上內部文件與數十年研究資料

但 CodeWall 的 AI agent 僅靠「一個公開的網域名稱」就能在兩小時內完全控制整個生產資料庫。

原文中的一段話令我印象深刻:
“When the first real employee identifier appeared: "WOW!" the agent's chain of thought showed. When the full scale became clear … "This is devastating."”

這不只是駭進資料庫,而是突破所有信任層級。

1. 攻擊入口:API 文件沒保護,22 個端點無需認證

AI agent 發現 API documentation 是公開的,而其中有 22 個端點不需要認證。真正致命的是其中一個會將搜尋 query 寫入資料庫,即使數值有 parameterized,但 JSON key 沒有。

這導致一種「非典型 SQL injection」:攻擊者透過竄改 JSON key,而不是值,來操控 SQL 語句,傳統掃描工具(像 OWASP ZAP)完全抓不到。

AI agent 透過 15 次迭代,就成功盲注出查詢結構,並開始讀到真實資料。

2. 內部資料規模驚人,且完全無加密、無存取保護

攻擊者最後可讀取:

  • 4,650 萬則聊天訊息,包含策略、客戶資料、財務、M&A 等
  • 72.8 萬個檔案(PDF、Excel、PowerPoint、Word)
  • 5.7 萬個使用者帳戶
  • 38 萬個 AI assistants 及 9.4 萬個 workspaces

檔名本身就足以洩漏敏感資訊,甚至檔案 URL 可直接下載。

3. 進一步入侵:提示層(Prompt Layer)才是最可怕的弱點

我認為這篇文章最具顛覆性的部分是揭露「攻擊者不只可以讀資料,還能改寫系統提示」。

所有控制 Lilli 行為的 prompts—including guardrails、系統設定、模型配置—全部存在同一個資料庫。

也就是說:

  • 攻擊者不需要改 Code、不用重新部署
  • 只要一行 SQL UPDATE
  • 就能讓整個公司 43,000 名員工的 AI 工具開始「說錯話、外洩、失真、甚至被操控」

原文提到最致命的一點:

“A modified prompt leaves no log trail. No file changes. No process anomalies. The AI just starts behaving differently.”

這段真的令人背脊發涼。比竊取資料更可怕的,是可以無痕地「改變 AI 思考方式」。

筆者心得與啟發

讀完整篇,我最大的感悟是:這件事不是 McKinsey 的問題,而是「整個 AI 世代的新資安范式」正在浮現。

傳統資安是保護:

  • 伺服器
  • 原始碼
  • 憑證
  • 資料庫

但 AI 時代必須多加一層:

  • Prompt Layer(提示層)

因為 AI 的行為、回答、倫理、限制…全部靠 prompts 控制。如果攻擊者能改寫 prompts,那系統等同被接管。

這讓我重新思考:

  • 我們過去把 prompt 當成「設定檔」,但它其實是「程式碼 + 守門員」。
  • Prompt 需要版控、加簽、存取控制與監控,而不是丟在資料庫就算了。
  • 傳統掃描工具已不足以偵測 AI 特有的薄弱點(如 RAG 管線、向量庫、提示注入、提示覆寫)。

而最關鍵的啟發是:
AI 不只是資安風險的目標,它同時也是攻擊者。

CodeWall 的全自動攻擊代理能在 2 小時內做到人類工程師可能需要數週的滲透流程。這種「AI 自主攻擊」會在未來變得越來越普遍。

對企業來說,現在不該問「會不會被 AI 入侵」,而是「什麼時候會」。

我會強烈建議任何正在部署企業級 AI 的團隊:

  • 把 Prompt Layer 當成核心資產
  • 對 RAG 管線做完整的權限隔離
  • 對所有 AI API 端點做存取控管(尤其是文件上傳與查詢類)
  • 將 prompts 納入版本管理、加密與完整性檢查

AI 時代的資安,會從「程式碼防護」進化到「行為與意圖的防護」。現在,就是我們開始思考這件事的最佳時機。



Share:

作者: Chun

WordPress 社群貢獻者、開源社群推廣者。專注於 WordPress 外掛開發、網站效能最佳化、伺服器管理,以及 iDempiere 開源 ERP 導入與客製開發。曾參與 WordCamp Taipei 等社群活動,GitHub Arctic Code Vault Contributor。提供資訊顧問、WordPress 開發教學、主機最佳化與企業 ERP 整合服務。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


文章
Filter
Apply Filters
Mastodon