公開情資來源汙染 (Source Pollution Attack):易被忽略的資安問題

前言

今 (2024) 年 4 月,奧義智慧資安研究經理蘇學翔 (Boik Su) 及資安研究員鄭翔予 (Stanley Cheng) 在德國 FIRST CTI 會議發表「公開情資來源汙染:易被忽略的資安問題」(Source Pollution Attack — A Hidden Threat in Cybersecurity) 演講。在這場演講中,兩位講者從情資來源的定義開始,一步步帶領聽眾梳理情資來源和網路威脅情報 (Cyber Threat Intelligence,CTI) 的關聯、理解好的情資來源如何幫助企業與社群偵測並防禦威脅,以及不好的情資來源如何反咬企業與社群長久以來建立的信任基礎。

閱讀本文,你可以知道:
  • 公開情資來源定義
  • 情資來源與網路威脅情報 (Cyber Threat Intelligence,CTI) 的關聯
  • 情資來源對使用者的正面與反面影響

情資來源的定義

在本篇文章中,我們將一以貫之、聚焦討論「情資來源」,首先需要定義:何謂情資來源?一般而言,「情資來源」通常是指可從公開網站、雜誌、文章等擷取而來的公開情資,以及只在特定管道、媒介流通的非公開情資。例如在美國 2006 財政年度國防授權法案中,明確指出公開情資 (Open-Source Intelligence,OSINT) 是「為了回應特定的情報需求,透過收集和利用公開可獲取的資訊而整理出的情資」,其目的為即時傳遞訊息給合適的受眾。實際上,公開情資的來源相當五花八門、族繁不及備載,因此資安社群中一位 OSINT 研究人員 Justin Nordine 開始蒐集各式公開情資來源,產製了 OSINT Framework 以提供當前可獲取的各式公開情報。

情資來源與網路威脅情報 (CTI) 的關係

網路威脅情報 (CTI) 可以提供關於攻擊者或攻擊事件的重要資訊,包含但不限於使用的惡意程式、攻擊手法、受害群體分布、惡意 C&C 伺服器 IP、釣魚網站等。這些資料可以提升社群的資安能量,協助制訂可靠的偵測規則與緩解措施,降低後續同類型事件再度發生的可能。

建立 CTI 除了需要熟悉領域專業知識,也要有獲取第一線情報的能力,企業通常不會選擇自行產製,而是直接使用已整理好的現成 CTI 資訊。負責統整並提供 CTI 資訊給他人使用的供應者就是情資來源,由於收集和分析 CTI 的工具會影響到最後呈現的資料結果,這類工具也包含在情資來源範疇內。

情資來源的正面影響

有關 CTI 如何強化資安態勢以及其情資來源為何,可從下列的具體案例來進一步了解。以 IP/Domain 黑名單為例,這種 CTI 常用於防火牆、郵件伺服器、ISP 中,避免與信用低或惡意的網站建立連線。黑名單的來源包含在自行管理黑名單或整合各機關來源供大家查詢的組織,前者像是 Spamhaus 透過長期大量的分析研究來提供各種類型的黑名單(圖1),後者則像 DNSBL.info 讓使用者可以同時向各個組織進行黑名單查詢。

Spamhaus 黑名單
圖1 Spamhaus 黑名單

與黑名單功能相似的網路指紋特徵,不僅可以識別惡意網站,隨著技術發展,現在的指紋特徵也不侷限在 TLS 通訊協定上,HTTP、SSH、TCP 等協定也有其專屬的指紋特徵。指紋的情資來源包含 SSLBL 這種收集各種惡意網站指紋的服務,負責定義指紋計算方式的技術團隊也是此類情資源頭之一。

特徵類型除了運用在網路上,也常用於分析與偵測,這些特徵可以讓防毒軟體或沙箱快速偵測到惡意程式。惡意程式的特徵種類多元,最直接的判斷依據是比較檔案雜湊。當情況很複雜時也可以將多個條件寫成規則來進行偵測,像是 YARA rule、SIGMA rule 等,發布這些偵測規則的作者們便是其情資來源。

另一個常被忽略的 CTI 資料是 DNS 紀錄,DNS 紀錄往往隱含比預期中更多的網域資訊,例如:多數使用網路服務的客戶,會將驗證碼放在 TXT 紀錄中,證明該客戶確實有該網域的所有權,然而驗證碼通常會有與服務相關的字串,像是 google-site-verification 就能看出正在使用的是 Google 服務。

在 TXT 紀錄中除了驗證碼,也包含 SPF 紀錄,此紀錄是用來指定哪些位址可以代表該網域寄信、以提升電子郵件安全並降低釣魚攻擊 。從被允許寄信的位址紀錄中,可以看到由第三方管理的 SPF 紀錄,進而知道該網域信任的第三方組織有哪些。CAA 紀錄則能讓該網域指定只能由其允許的憑證頒發機構簽發憑證,與 SPF 紀錄概念相似,透過此 CAA 紀錄可以知道該網域信任的其他機構。

依其取得方式,DNS 紀錄來源分為主動與被動,主動是透過 DNS 請求從 DNS 伺服器取得 DNS 資料,被動則是從一些平日會蒐集大量 DNS 資料的組織取得。

情資來源的負面影響

縱使情資來源提供我們即時辨識新威脅、關聯其他資訊或串聯其他系統等正面功能,但倘若我們將這些資訊全盤接受,可能會被遭到惡意竄改的情資誤導(圖2)。情資來源的負面影響例如:誤將正常的服務視為惡意並阻擋其連線、將惡意檔案視為正常而未做隔離,或讓自動化系統下載惡意腳本執行任意指令等,相關案例如下:

CTI 情資來源汙染威脅模型
圖2 情資來源汙染威脅模型

JARM 混淆

第一個例子是關於情資來源因使用方式或設計問題導致資訊混淆。JARM 是一種網路指紋特徵 ,基於 TLS 伺服器設定中部分資訊計算出的雜湊值。這種計算方式簡單快速,但由於只來自部分設定,惡意的 TLS 伺服器可以透過調整設定得到和正常 TLS 伺服器一樣的 JARM 指紋來進行偽裝。同樣地,正常的 TLS 伺服器也可能因 JARM 指紋被誤認成惡意的 TLS 伺服器,模糊惡意與正常的界線。

IP 及網域阻擋清單錯誤認知

第二個例子是服務阻斷的問題。DShield 有提供一個公開、可提交防火牆日誌的平台,再透過統計常見的攻擊來源建立黑名單供大眾使用。不過除了黑名單,官網上也有其他數據整理而得的清單,像是 Top 100 Source IPs All Source IPs 等與 IP 相關的資料。DShield 雖有特別註明不要將這些清單當作黑名單使用(圖3),但仍有第三方機構將此類資訊納為掃描黑名單時的參考依據,導致正常的 IP 被客戶端當作惡意 IP 拒絕連線,無法使用該網站的服務。

DShield 清單
圖3 DShield 清單,註明「請勿將此列為黑名單」(DO NOT USE AS BLOCKLIST)

npm 套件管理工具 Metadata 污染問題

第三個例子是情資來源被惡意操縱而導致的任意下載威脅。去 (2023) 年 6 月前 npm 主任工程經理 Darcy Clarke 揭露了 npm 套件管理工具 Metadata 污染問題,表示 npm 官方的套件管理工具因為開放不同接口供開發者更新套件 Metadata,使攻擊者能夠污染 Metadata,觸發任意下載、帶來遠端任意程式碼執行威脅。

此威脅事件的主要源頭其實就是 npm 套件管理工具沒有驗證開發者提供的 Metadata 是否與原始碼內容一致,攻擊者可以透過更新接口污染 Metadata,進一步影響其他參考這項來源的第三方工具或服務。汙染步驟簡述如下:

  1. 照正常步驟發布套件到 npm 套件管理工具。
  2. 透過 PUT 方法向 https://registry.npmjs.com/-/<package-name> 端點發送如下圖 4 的請求。其中,version 欄位下的 nameversionscriptsdependencies 都能自由更改。
{
  _id: <pkg>,
  name: <pkg>,
  'dist-tags': { ... },
  versions: {
    '<version>': {
      _id: '<pkg>@<version>`,
      name: '<pkg>',
      version: '<version>',
      dist: {
        integrity: '<tarball-sha512-hash>',
        shasum: '<tarball-sha1-hash>',
        tarball: ''
      },
      scripts: {},
      dependencies: {}
    }
  },
  _attachments: {
    0: {
      content_type: 'application/octet-stream',
      data: '<tarball-base64-string>',
      length: '<tarball-length>'
    }
  }
}

3. https://registry.npmjs.com/<pkg>/https://www.npmjs.com/package/<pkg>/v/<version>?activeTab=explore 此時內容已經不一致了。

這類型的污染問題除了使開發者無所適從、不知道何者才是權威來源,也將導致如惡意檔案下載、任意指令碼執行等更嚴重的問題。然而時至今日,npm 官方仍然沒有正視此問題,受影響的第三方廠商包括但不限於:

緩解措施

針對如何辨別易受污染的情資來源、如何偵測或抵禦這類攻擊,我們提出兩個重要的概念:「多方驗證」與「知悉來源」。

多方驗證

在 CTI 生命週期中,原本就有一個階段是要使用者定時驗證情資來源。我們在參考前述的攻擊模型後,我們提出的具體作法包括:

  • 訂定實際可行的驗證流程,需要包含兩個以上的可信任驗證來源。
  • 對於高信任度的情資來源,若發生以下情形,仍須加入驗證流程:
    * 來源最近出現被偽造的狀況
    * 來源的維護單位最近有變動
    * 來源地最近有政治、地緣政治或宗教活動等環境上的變化。
  • 自動化情資擷取並不是萬能的,仍需注意以下風險:
    * API 獲取情資的即時性及正確性
    * 透過 LLM 獲取的情資易有幻覺風險。

知悉來源

確實掌握會使用到的情資來源,並有良好的監控及管理流程是能避免情資來源污染的最佳方式。事實上,大部分的安全營運中心 (Security Operations Center,SOC) 單位因為仰賴大量的自動化工具及系統,當情資來源被污染時,不一定都能立刻發現。越晚發現惡意情資,企業的整體安全態勢越容易受到影響。

舉例來說,2023 年底 Spamhaus 的 CSS 阻擋清單便曾經短暫發生誤報,使日本及多個國家都出現無法寄收信件的服務阻斷問題。然而,大部分的 IT 人員並不知道此狀況與參考到 Spamhaus 阻擋清單的 Email Gateway 等中間元件有關,因而無法立即排除受害情況、影響日常業務運作(圖5)。如果相關單位或人員有保持良好的管理流程,將能及時處理此類情資污染威脅。

Spamhaus 事件發生後,一位 IT 人員的感慨
圖5 Spamhaus 事件發生後,一位 IT 人員的感慨

結語

要從根本解決情資來源汙染威脅,事前應多方且定時驗證情資來源,即便是高信任度的情資來源也仍需時時驗證,避免成為破口。建立良好、高透明度的情資來源監控及管理,能夠在事發時與事後提升應變處理速度。綜上所述,定期的情資來源驗證,輔以確實掌握情資來源,並隨時替換不穩定的情資來源,方可建立一個高成熟度的 CTI 生命週期。

Writer: Stanley Cheng

關於 CyCraft

奧義智慧科技(CyCraft Technology)是一家專注於 AI 自動化技術的資安科技公司,成立於2017年。總部設於台灣,在日本和新加坡均設有子公司。為亞太地區的政府機關、警政國防、銀行和高科技製造產業提供專業資安服務。獲得華威國際集團(The CID Group)和淡馬錫控股旗下蘭亭投資(Pavilion Capital)的強力支持,並獲得國際頂尖研究機構 Gartner、IDC、Frost & Sullivan 的多項認可,以及海內外大獎的多次肯定。同時也是多個跨國資安組織和台灣資安社群的成員和合作夥伴,長年致力於資安產業的發展。

訂閱奧義智慧電子報

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
點擊此按鈕,即表示您同意奧義智慧的隱私權政策,並同意奧義智慧使用您所提供的資訊並寄送資訊給您。您隨時可以取消訂閱。