淺談以STIX實現網路威脅情報標準化框架

简介: http://ascc.sinica.edu.tw/iascc/articals.php?_section=2.4&_op=?articalID:6435壹、 前言 現今組織越來越需要擁有蒐集網路威脅情報 (Cyber Threat Intelligence) 的能力,並且要有足夠的情報分享能力,以能夠與其信任夥伴分享網路威脅情報,足以共同防禦網路威脅。

http://ascc.sinica.edu.tw/iascc/articals.php?_section=2.4&_op=?articalID:6435

壹、 前言
 現今組織越來越需要擁有蒐集網路威脅情報 (Cyber Threat Intelligence) 的能力,並且要有足夠的情報分享能力,以能夠與其信任夥伴分享網路威脅情報,足以共同防禦網路威脅。網路威脅情報分享 (Cyber Threat Intelligence and Information Sharing) 能夠幫助組織面對並聚焦在現今龐大且複雜的網路安全資訊,此時組織需要的是具標準化、架構性的資訊,才能一窺網路安全事件的全貌。STIX (Structured Threat Information eXpression) 是由 MITRE 公司 (The MITRE Corporation) 所定義與開發出用來快速能達到表示事件相關性與涵蓋性之語言,以表達出架構性的網路威脅資訊。STIX 語言將包含網路威脅資訊的全部範圍,並盡可能地達到完整表示、彈性化、可延展性、自動化與可解讀性等特性。

貳、 何謂 STIX?
 網路安全已經演變成一個複雜且具多重因子的問題,網路攻擊行為已不如過往那樣單純。我們可以從一個「Kill Chain (攻擊鏈)」知道一次網路攻擊可能分成好幾個步驟,亦可從中了解最新的攻擊行為與如何防範。


圖1 網路攻擊鏈

一、 攻擊者從觀察目標、製作攻擊工具、送出攻擊工具、攻擊目標弱點、控制目標、於目標執行工具,至遠端維護攻擊工具,循序漸進控制目標,並立足於目標以能進行更進一步的攻擊。此種攻擊過程即為廣為人知的 APT 攻擊 (Advanced Persistent Threat,即進階持續性滲透攻擊) 。正因 APT 攻擊的發展,讓網路安全防禦與事件調查變得更加困難,也因此衍伸出「網路威脅情報分享」等相關議題。
二、 STIX 是一種做為標準化網路威脅資訊的分類、獲取、特徵化與溝通之開發語言,可協助有效管理網路威脅之過程與自動化應用。高階的網路安全仰賴以下資訊:

  1. 威脅分析。
  2. 特徵分類。
  3. 網路威脅應變行為管理。
  4. 情報分享。

三、 為了能夠滿足架構性網路威脅資訊之涵蓋範圍,STIX 提供了一個通用的機制,以增進架構穩定性、效率、相互合作性與整體情境感知 (Situational Awareness);同時,STIX 提供統一的架構,可將以下的威脅資訊做關聯:

  1. 網路可觀性 (Cyber Observation)。
  2. 事件跡象 (Indicators)。
  3. 惡意的行為的手法、技術與過程 (Tactics, Techniques, and Procedures,簡稱TTPs ,包含攻擊特徵、惡意軟體、暴露之弱點、kill chains、使用工具、事件架構、受害目標等)。
  4. 暴露目標 (Exploit Targets,例如弱點、漏洞等)
  5. 防範行動 (Course of Action,簡稱COA,包含事件應變或弱點補救措施)。
  6. 網路攻擊活動 (Cyber Attack Campaigns)。
  7. 網路威脅者 (Cyber Threat Actor)。

參、 Use Case
以下圖表為 STIX 所提供之核心 Use Case 概觀,以支持網路威脅管理。


圖2 STIX 提供之核心 Use Cases

表1 Use Cases

UC  敘述  角色
UC1  判斷、懷疑、分析 (決定是否為惡意、是否擴散)、調查 (誰是目標?何時發生?)、保留紀錄、建議對應作為、分享資訊。  網路威脅分析師
UC2  將觀察到的特性分類。以人工方式輔以自動化工具或架構化的威脅資訊。  網路威脅分析師
UC3  預防/偵測威脅行為,調查類似事件並回報,然後加以防禦以降低成為弱點或目標的機會
 預防  評估針對潛在威脅的預防行為,決定採用方案。  網路決策人員
 偵測  監視網路行為,以透過威脅特徵偵測過去發生過的事件是否再度發生。  網路操作人員
 事件回報  調查事件的原因、辨別與分類,並予以降低威脅或校正。  網路操作人員
UC4  發布政策,分享資訊。  網路決策人員

肆、 指引原則
為了能為網路威脅資訊定義出一個架構性的表示方式,STIX 採取並應用了以下核心指引原則。

  1. 可表示性 – 可顯示出所有有關威脅的資訊。
  2. 完整性重於複製性 – 不僅僅只是將個別資訊複製出來,而可以利用多個資料庫架構出一個具架構式的資訊框架。主要組成架構直接利用Cyber Observable eXpression (CybOX?)  的架構。STIX 1.0版提供了鬆散耦合 (loose-coupling) 機制以及預設屬性,以能視情況利用一些組成架構,如Common Attack Pattern Enumeration and Classification (CAPEC?) 、Malware Attribute Enumeration and Characterization (MAEC?) 、Common Vulnerability Reporting Framework (CVRF) 、OASIS Customer Information Quality (CIQ) xPRL 。
  3. 另外亦具有彈性化、可延展性、自動化、可讀性等特性,以能適用於多樣的網路威脅情報範圍。

伍、 架構


圖3 STIX架構

 STIX 為一個獨立且可再使用的架構 (如上圖),並將各角色之間的關係加以定義。連結箭頭表示各角色間的關係;星號表示該段關係可能會出現 0 到很多次。此架構目前用 XML 寫出。下文將對各角色加以闡述。

  1. Observables – 此角色關注在「尋找、看見或觀察到什麼行為?」,是 STIX 中最基礎的角色,對網路及電腦運作環境來說,需要有個固定角色隨時監控網路的動態,以便日後的事件調查與處理。 STIX 利用 CybOX  做代表語言,用來編碼及提供溝通標準化、高精準度資訊,提供常見解決方案給所有網路安全需求。
  2. Indicators – 此角色關注在「要找尋什麼?為什麼需要注意?」。此角色會結合上下文資訊,並尋找特定的可觀察之特徵以表示使用的工具以及/或者其行為。一個或多個可觀察之特徵將會對應至相關 TTPs (Tactics, Techniques, and Procedures) 以及加上其他相關數據 (出現時間、可能影響等)。STIX 利用蒐集之社群知識以及最佳的實例定義一個新的 Indicator。
  3. Incidents – 此角色關注在「看見了什麼?」,將揭露關於 Indicators 影響組織之個別事件的資訊或在事件調查期間做決策,包括了發生的人事時地物、影響資產與範圍、相關 Indicator、Observables、利用的 TTP、相關 ThreatActors、要求 COA、已採取行動紀錄等等。STIX 利用蒐集之社群知識以及最佳的實例定義一個新的 Incident。
  4. TTP (Tactics, Techniques, and Procedures) – 此角色關注在「做了什麼?」,在網路威脅資訊與情報間扮演中心角色。TTP 將事件犯罪手法的行為表示出來,並分手段、技術、過程三面向進行分析,包括了行為、利用工具、目標資訊、已被攻擊之弱點、影響、kill chain 階段等等。STIX 利用社群知識以及最佳實例去定義新的 TTP 架構,並表示一個新的 TTP 資訊。某些的 TTP 可利用其他標準或工具去定義,像 CAPEC  可用來定義攻擊特徵、MAEC  可用來定義攻擊使用之惡意軟體、CybOX  可用來定義攻擊使用工具與架構。
  5. Campaigns – 此角色關注在「為什麼要進行此次攻擊?」。這是 ThreatActors 所引發潛在、具跨組織性的事件,通常會是一組或一連串的事件以及/或者 TTP。STIX利用社群知識以及最佳實例去定義新的 Campaign 架構並表示一個新的 Campaign 資訊。
  6. ThreatActors – 此角色為事件引發者,即所謂的攻擊者。STIX 利用社群知識以及最佳實例去定義新的 ThreatActors 架構,並表示一個新的 ThreatActors 資訊。
  7. ExploitTargets – 此角色代表軟體、系統、網路或組態的弱點或漏洞,而這即成為 ThreatActors 利用 TTP 攻擊的目標。STIX 利用社群知識以及最佳實例去定義新的 ExploitTargets 架構並表示一個新的 ExploitTargets 資訊。某些 ExploitTargets 可利用其他標準或工具去定義,如:CVE  與 OSVDB  定義識別公開暴露的漏洞;CVRF  定義關於漏洞的細部架構化、未被 CVE 或 OSVDB 所識別之特徵,包括 0-day 漏洞;CWE  定義識別弱點;CCE  定義識別組態議題。
  8. COA (Course of Action) – 此角色關注於「應該針對事件採取什麼行為?」,通常是針對 ExploitTargets 所採取的行動,以降低 Incident 的影響範圍。STIX 利用社群知識以及最佳實例去定義新的 COA 架構並表示一個新的 COA 資訊。
  9. Data Markings – 此角色負責將資料做標記以作為分類,並提供交叉比對。

陸、 實際應用
 STIX 最初始的應用是利用 XML 架構作為普及、可攜和架構化的機制,以達到各角色間細節、合作和精準化,並有提供實作架構。許多國外機關組織已利用 STIX 進行情報與資訊分享,諸如美國國土安全部 (The U.S. Department of Homeland Security)、US-CERT 等。日本資訊處理推廣機構 (Japanese IPA) 則在研討階段。

柒、 結論
 STIX 已在今年舉辦的 RSA 會議 (RSA Conference 2013) 中由 MITRE 公司的首席網路安全師 Sean Barnum 發表。STIX 提供了一個標準化的網路威脅情報分享架構,並結合了多個資料庫進行情報蒐集與建置,一旦發生網路安全事件,可透過 STIX 將事件發生的原因、經過、處理等紀錄下來,並可藉此一窺網路威脅事件的全貌,且可以將此情報分享給信任之合作夥伴。在計畫網站上有提供套件讓有意使用之組織下載,並可利用 python 語法編寫。目前 STIX 的版本已更新至 1.0.1 版 (於今年 10 月 4 日釋出),且已有許多企業及組織利用 STIX 進行網路威脅情報分享。筆者認為,目前臺灣缺乏網路威脅事件資料庫的建置之自動化架構與機制,且沒有可分享網路威脅情報的資源,以至於發生網路威脅事件時,無法達到即時處置或分享給其他單位,避免同樣事件一再發生。STIX 是一個可考慮利用的方案,應有利於臺灣網際網路之威脅事件情報分享機制的建立與發展。

捌、 參考資料

  1. Structured Threat Information eXpression (STIX?). URL http://stix.mitre.org/
  2. The STIX Project (STIXProject). URL https://github.com/STIXProject
  3. Sean Barnum. Standardizing Cyber Threat Intelligence Information with the Structured Threat Information eXpression (STIX?). URL http://stix.mitre.org/about/documents/STIX_Whitepaper_v1.0_%28Draft%29.pdf
  4. Eric M. Hutchins, Michael J. Clopperty, and Rohan M. Amin, Ph.D. Intelligence-Driven Computer Network Defense Informed by Analysis of Adversary Campaigns and Intrusion Kill Chains. 6th Annual International Conference on Information Warfare and Security, 2011. URLhttp://www.lockheedmartin.com/content/dam/lockheed/data/corporate/documents/LM-White-Paper-Intel-Driven-Defense.pdf
  5. Sean Barnum. The Secret to Effective Cyber Threat Intelligence and Information Sharing. RSA Conference 2013. URL http://www.rsaconference.com/writable/presentations/file_upload/dsp-r31.pdf
目录
相关文章
|
7月前
|
JSON API 数据库
使用现代的接口标准和框架
【5月更文挑战第9天】FastAPI是一个基于Python3.6以上版本的类型注解构建的现代化API框架,它提供自动补全和类型检查,数据校验及清晰的错误信息,支持多种输入输出格式,如JSON、路径参数等。利用OpenAPI和JSON Schema自动生成交互式API文档,兼容Swagger UI和ReDoc。FastAPI基于类型注解进行参数校验,内置安全性功能,包括HTTP基本认证和OAuth2。
114 1
|
7月前
|
存储 自然语言处理 JavaScript
vben框架是什么
vben框架是什么
1664 0
|
7月前
|
前端开发 JavaScript
框架
框架
38 3
|
机器学习/深度学习 计算机视觉
AIGM 框架
AIGM (Adaptive Image Generation and Manipulation) 是一个基于深度学习的图像生成和处理框架。它使用先进的生成对抗网络 (GAN) 和变分自编码器 (VAE) 技术,可以实现图像的自动生成、转换、编辑和增强等功能。
239 8
|
SQL XML 前端开发
1.1 初识框架
思考:框架是什么?我们为什么要学习框架呢?“框架(Framework)”一词最早出现在建筑领域,指的是在建造房屋前期构建的建筑骨架。在编程领域,框架就是应用程序的骨架,开发人员可以在这个骨架上加入自己的东西,搭建出符合自己需求的应用系统。实际开发中,随着业务的发展,软件系统变得越来越复杂,如果所有的软件都从底层功能开始开发,那将是一个漫长而繁琐的过程。此外,团队协作开发时,由于没有统一的调用规范,系统会出现大量的重复功能的代码,给系统的二次开发和维护带来不便。为解决上述问题,框架应运而生。
74 0
|
存储 Java 应用服务中间件
v4l2框架
v4l2框架
122 0
|
IDE Linux 开发工具
C++之openFrameworks框架
openFrameworks(简称 oF)是一个基于C++的开源库。 它提供了丰富的功能库和工具,用于快速开发多媒体、交互性和艺术创作相关的应用程序,如艺术装置、互动艺术、音视频作品、实时图形等。oF 的设计目标是让创意编程变得更加简单、直观和灵活,使艺术家、设计师、创意工作者等能够利用编程进行创作和表达。oF提供了丰富的图形、音频、输入输出、计算机视觉等功能库,并支持跨平台开发,适用于Windows、Mac OSX、Linux等操作系统。oF的社区活跃,有大量的用户和开发者共享和贡献了各种扩展、插件和示例代码。
135 0
|
程序员 测试技术
【提高自己】正确的工作方法,形成自己的思考框架
在学习过程中,将老师的知识用脑图的形式记录下来,在这里做个分享,不足之处欢迎大家指出。
|
传感器
CoreMotion 框架
CoreMotion框架(一)—— 基础理论CoreMotion框架(三)—— 获取陀螺仪数据CoreMotion框架(二)—— 利用加速度计获取设备的方向CoreMotion框架(四)—— 仿摩拜贴纸小球碰撞动画 ...
976 0