简述
STIX是一种描述网络威胁信息的结构化语言,STIX 能够以标准化和结构化的方式获取更广泛的网络威胁信息。本文在成文的过程中,STIX 2.1版本刚刚出来,结构化的解读威胁情报这部分,国外确实走的很快。后续再解读2.1版本。
Feed威胁情报系统:https://feed.watcherlab.com最新版本已经更新上线,目前支持国标《GBT 36643-2018 信息安全技术网络安全威胁信息格式规范》及STIX2.0部分构件,我们会持续更新和完善,为用户提供更好的情报服务。
STIX 1.0定义了8种构件:可观测数据(Observation)、攻击指标(Indicator)、安全事件(Incident)、攻击活动(Campaign)、威胁主体(Threat Actor)、攻击目标(ExploitTarget)、攻击方法(TTP)、应对措施(CourseOfAction)在内的八个威胁信息构件。
STIX 2.0定义了12种构件:Attack Pattern、Campaign、Course of Action、Identity、Indicator、Intrusion Set、Malware、Observed Data、Report、Threat Actor、Tool、and Vulnerability。2.0将1.0版本中的TTP进行更细致的描述拆分为Attack Pattern、Intrusion Set、Tool、Malware;从Exploit Target拆分出Vulnerability;从威胁主体(Threat Actor)中拆分出Identity、Intrusion Set;删去了Incident;新增了Report。
具体关系用下表表示:
STIX1.0 构件 |
STIX2.0 构件 |
说明 |
扩展标准规范 |
可观测数据(Observation) |
Observed Data |
2.0沿用,有字段更新 |
STIX 1.2.1版本使用网络空间可观测表达(CybOX)语言 2.1.1版本来表示网络空间的可观察行为。 |
攻击指标(Indicator) |
Indicator |
2.0沿用,有字段更新 |
开放妥协指示器(OpenIOC)是一种用于技术特征描述的XML模式,用来识别已知威胁、攻击者方法或其它妥协(入侵)证据等[OpenIOC]。 |
应对措施(CourseOfAction) |
Course of Action |
2.0基本全沿用,有字段更新 |
|
攻击活动(Campaign) |
Campaign |
2.0沿用,新增了时间两个字段,包括first_seen, last_seen字段 |
|
威胁主体(Threat Actor) |
Threat Actor |
2.0沿用,有字段更新,同时关于威胁源身份等单独摘到indetity中 |
|
攻击目标(ExploitTarget) |
Vulnerability |
开放漏洞和评估语言(OVAL)是一个信息安全社区,致力于计算机系统状态的评估和报告的标准化[OVAL]。 |
|
攻击方法(TTP) 安全事件(Incident) |
Attack Pattern |
通用攻击模式枚举和分类(CAPEC)标准 |
|
Identity |
OASIS 顾客信息质量(CIQ) 3.0版本是一个XML规范集,用来表示关于个人和组织的特征信息[CIQ]。 |
||
Intrusion Set |
|||
Malware |
Meac: 恶意软件属性枚举和描述(MAEC™)是一种分享有关恶意软件结构化信息的标准语言,它基于恶意软件的行为、人工和攻击模式等属性[MAEC]。 |
||
Tool |
|||
Report |
以下主要参考STIX 2.0标准,对12个构件做逐一的解读。
1、Attack Pattern(攻击模式)
1) 【基本描述】:
Attack Pattern:描述攻击者试图破坏目标的方式,由原来版本的TTP拆分出来的。
2) 【标签】:
标准中暂无规定该构件的标签。
3) 【特定字段】:
name, description, kill_chain_phases
4) 【stix1.0对比】:
从1.0的攻击方法(TTP)构件转化而来。继承了TTP中的几个关键字段behavior、kill_chain_phases、kill_chains。
5) 【关键内容】:
攻击模式类型可以通过扩展采用“通用攻击模式枚举和分类(CAPEC)标准”,使用CAPEC来结构化的描述攻击模式。CAPEC定义了500多种攻击模式,包括了我们常见的鱼叉式邮件攻击、暴力破解、SQL注入等等。
网络攻击杀伤链是指,攻击者完成一项攻击任务的所经历的全生命周期。目前主流的框架模型如下:
(1)洛克希德·马丁公司的Kill Chain(杀伤链)
一个用来描述包含多个攻击步骤的多步攻击模型.注:常见的多步攻击模型包括信息收集、工具研发、工具投放、脆弱性利用、后门安装、命令与控制、攻击目标达成等七个步骤。
(2)MITRE公司的ATT&CK模型
将攻击划分以下阶段进行识别:初始接入Initial Access、(指令)执行 Execution、持久化Persistence、权限提升Privilege Escalation、逃避防御Defense Evasion、获取凭证Credential Access、探索Discovery、横向移动Lateral Movement、(信息、凭据)收集Collection、数据窃取Exfiltration、命令和控制Command and Control。
(3)NSA/CSS技术威胁框架:
侦察、环境预制(添加可利用点、建立跳板、预置载荷)、投递、利用(利用漏洞)、执行、内部侦察(测绘可访问网络、嗅探网络)、提权(利用操作系统漏洞提升权限)、凭证访问、横向移动(远程登录、利用远程服务、写入远程文件共享)、渗出(汇聚数据、压缩数据、传输数据)、命令与控制(C&C)、躲避(规避数据大小限制、加密数据、仿冒合法流量、使用rootkit、将文件存储在非常规的位置、根据环境调整行为)。
6) 【笔者备注】:
Ø APT组织首先要达到最终的攻击效果(窃取目标的敏感数据),在实际攻击过程中同时要花费足够精力避免被发现和追溯,尽量隐藏或消除留下的痕迹,采用更新的技术方法避免追溯到其组织身份。
Ø APT攻击说到底还是资源的对抗,攻防双方都会基于成本去考虑问题。针对目标的价值不同、防御能力不同而投入不同的攻击成本是攻击方的一个策略。
Ø 供应链攻击:利用控制供应链来实现对目标系统的攻击,是近年比较有效的一种攻击方式。
Ø 恶意程序在窃取数据时候,利用ssl证书对流量进行加密传输,以规避安全系统的监测是这两年越来越多的一种方式。Feed威胁情报系统:https://feed.watcherlab.com已经支持恶意证书指纹的查询。防护方可以通过流量还原证书以及主动探测获取的证书信息,结合威胁情报平台的恶意证书指纹库进行对比分析。
2、Campaign
1) 【基本描述】:
可以翻译成攻击活动或网络战役。Campaign是描述一系列针对特定目标的恶意行为或一段时间内发动的攻击。一次APT攻击活动就像军事上针对特定目标的定点打击或间谍渗透,类似一次攻击战役。通常将攻击者或其实施的攻击行动赋予独有的代号进行识别。例如,某攻击者使用一组特定的TTP(恶意软件和工具)以某个特定目的攻击一个工业部门,那么这就是一次“XXXX活动”。
2) 【标签】:
标准中暂无规定该构件的标签。
3) 【特定字段】:
name, description, aliases, first_seen, last_seen, objective (等同于stix1.0中Campaign中的字段intended_effect,标识目标或者预期效果)
4) 【关键内容】:
攻击活动的可能状态包括进行状态、历史状态和将来状态。
攻击活动与Threat Actor、TTP、Incident和Indicator几个构建密切相关。
5) 【stix1.0对比】:
该构件从1.0的攻击方法Campaign构件转化而来。新增了时间两个字段,包括first_seen, last_seen字段。同时将intended_effect字段名调整为objective。
6) 【笔者备注】:
Ø 攻击活动针对目标进行大量研究分析后,会制定具体发动攻击行动的整体安排。比如目标用户作息时间、行业相关重大会议和国内大型节日等时间进行攻击。在一次攻击活动中会采用专门针对目标而定制的攻击方法。
Ø 时间是网络攻击活动很重要的一个属性。
3、Course of Action
1) 【基本描述】:
处置方法是指针对威胁的具体应对方法,包括修复性措施或预防性措施,以及对“安全事件”造成影响的反制或缓解手段。
2) 【标签】:
标准中暂无规定该构件的标签。
3) 【关键内容】:
描述“处置方法”的类型如下表。
Enumeration Literal枚举直接量 |
Description说明 |
Diplomatic Actions 对外行动 |
与攻击者建立沟通和关系,以影响行为积极改变。 |
Eradication根除 |
识别、定位并消除网络恶意软件。 |
Hardening 加固 |
安全加固:通过删除不必要的软件、用户名或登录和服务减少攻击面,从而保护系统。 |
Internal Blocking内部阻断 |
基于主机阻断内部被入侵源的流量。 |
Logical Access Restrictions逻辑访问限制 |
限制对计算资源的访问。 |
Monitoring监控 |
通过网络或主机agent来检测是否存在威胁。 |
Other其他 |
|
Patching修补 |
针对漏洞的特定的修补措施,比如打补丁、修改代码等。 |
Perimeter Blocking周边阻断 |
从周边阻断入侵源的流量。 |
Physical Access Restrictions物理访问限制 |
限制计算资源物理访问相关的活动。 |
Policy Actions策略行为 |
修改减少恶意软件攻击面或传染媒介。 |
Public Disclosure公开披露 |
告知公众威胁或威胁行动者的存在和特征,从而积极改变对手的行为。 |
Rebuilding重建 |
重建计算资源,以确保之前被入侵的资源不再含恶意软件。 |
Redirection重定向 |
将可疑或已知的恶意流量从预定目标重新路由到能够更安全地方,以便深入观察和分析威胁。 |
Redirection (Honey Pot)重定向(蜜罐) |
重定向(蜜罐) |
Training培训 |
培训用户和管理员如何识别和降低威胁。 |
4) 【特定字段】:
name, description, action
5) 【stix1.0对比】:
1.0的几个关键字段impact、cost、efficacy在2.0版本中没有再出现。structured_COA(采用结构化形式对“应对措施”进行规范化描述,用于应对措施实施的自动化)用action替换。
6) 【笔者备注】:
针对APT攻击,需要借助本地安全大数据与云端威胁情报相结合。这里主要有两部分工作:
Ø 威胁的判定:借助获取的恶意流量、日志信息、可疑样本、网络元数据等多维度分析,进行威胁的研判,确定应对措施。
Ø 自动化的威胁处置,依托研判的应对措施,进一步联动具备阻断功能的NDR或EDR进行快速协同联动处置。天下武功唯快不破,自动化的手段快速处置非常关键。
4、Identity
1) 【基本描述】:
STIX2.0里将“攻击目标(受害者)、威胁源、威胁参与者、信息来源”的身份用单独构件进行描述。
身份可以表示实际的个人、组织或团体以及个人、组织或团体的类别(如金融部门)。
2) 【标签】:
标准还没有给出明确的标签。
可以自定义,比如攻击目标、威胁源、威胁参与者、行业用户、网络安全厂商等。也可以定义具体的人员身份:CEO, Domain Administrators, Doctors, Hospital, or Retailer
3) 【特定字段】:
name, description, identity_class, sectors, Contact_information
4) 【关键内容】:
STIX标准里明确规定了相关新字段的内容。
身份的类别(identity_class)包括:Individual(个人), group(非正式的黑客群体), organization(组织,主要是公司或国家), class(一类实体,如系统中的所有医院、所有欧洲人或域管理员), unknown(未知的)
Sectors(行业领域)也给出了公开字典,具体的类别,比如攻击目标可以采用如下字典(类似关键基础设施)进行划分:农业、航空航天、汽车、通信、建筑、国防、教育、能源、娱乐、金融服务、政府国民、政府区域、政府地方、政府公共服务、医疗保健、酒店休闲、基础设施、保险、制造业、采矿、非营利、制药、零售、技术,电信、运输、公用事业。
Contact_information,包含具体的姓名、邮件地址或电话号码等个人的信息都可以在Identity构件中标识。
external_references,也可以扩展采用OASIS 顾客信息质量CIQ(用来表示关于个人和组织的特征信息)。STIX利用CIQ 3.0版本标识威胁源、受害者和信息源等的地理地址信息和身份信息。
5) 【stix1.0对比】:
融合了原来1.0中Threat Actor、Incident中相关identity的信息独立出来成为一个构件。同时通过外部扩展引用CIQ来确保可详细的数据表达。
6) 【笔者备注】:
身份是攻击源、攻击目标画像过程中很关键的一个要素。始终是高阶情报很关键的内容。
5、Indicator
1) 【基本描述】:
“威胁指标”用来识别一个特定“攻击方法”的技术指标,它是多个“可观测数据”的组合,是用来检测“安全事件”的检测规则。
2) 【标签】:
主要包括了如下标签:
anomalous-activity |
类似侦察的行为,如端口扫描或版本识别、网络行为异常以及资产和/或用户行为异常。 |
anonymization |
匿名化的控制基础设施(代理、TOR、VPN等) |
benign |
本身不可疑或恶意的活动,但与其他活动结合时,可能表明可疑或恶意行为。 |
compromised |
失陷的资产 |
malicious-activity |
恶意的活动 |
attribution |
特定攻击源的攻击方式。 |
3) 【关键内容】:
如何有效地识别“威胁指标”,尤其是通过自动化的手段来识别指标。标准里边提到下面几类检测机制。
Ø OpenIOC测试机制: OpenIOC被用作标记的测试机制。MANDIANT已经为OpenIOC开发了免费的使用工具,主要是IOCeditor和Redline两个工具。其中IOCeditor用来建立IOCs,而Redline负责将IOCs部署到HOST上收集信息后进行分析。
Ø OVAL测试机制:开放漏洞和评估语言(OVAL)是一个信息安全社区,致力于计算机系统状态的评估和报告的标准化[OVAL]。
Ø Snort测试机制: Snort/ Suricata主要是对恶意流量的检测识别
Ø YARA测试机制: yara规则主要针对恶意样本文件的识别。
Ø Feed威胁情报系统:https://feed.watcherlab.com中,专门针对APT报告提供相应的YARA和Suricata检测规则。
4) 【特定字段】:
name, description, pattern, valid_from, valid_until, kill_chain_phases
5) 【stix1.0对比】:
与sitx1.0相比,增加了pattern字段。
6) 【笔者备注】:
Ø 威胁情报服务商除了提供黑IP 、黑域名、恶意软件hash之外,也会提供 Snort (suricata)规则、YARA 规则、SCAP/OVAL规则、PoC等,可以便利对指标的测试或验证。
Ø 指标具有其生存周期,且在生命周期内,其基本属性会发生变化,比如从有效变为失效等。情报本身的状态可分为三种:产生、有效、失效等。指标的生命周期可以通过两个字段标识”valid_from”:”2019-05-12T15:00:00Z”、”valid_to”:”2019-05-14T06:32:45Z”。
Ø IOC的批量检索是用户使用过程很常见的一个场景,Feed威胁情报系统:https://feed.watcherlab.com最新版本支持批量检索功能。
6、Intrusion Set
1) 【基本描述】:
入侵基础设施是一组具有共同属性的行为和资源,属于某单个组织协调的。入侵基础设施可以捕获多个活动或其他活动,这些活动都由共享属性绑定在一起,这些共享属性代表一个常见的已知或未知的威胁参与者。简单说入侵基础设施即指该威胁源所拥有的IP、域名、社工库等攻击资源。
2) 【标签】:
标准中暂无规定该构件的标签。
3) 【特定字段】:
name, description, aliases, first_seen, last_seen, goals, resource_level, primary_motivation, secondary_motivations
4) 【关键内容】:
攻击者具备的资源类型、资源级别是最关键的两个要素。
攻击者常常采用C&C域名进行通信控制,其中绝大部分都是动态域名;通过博客或社交网络(SNS)进行C&C指令下发;利用通信工具比如利用第三方博客作为恶意代码的中转平台;利用云盘存储窃取的数据信息等。AttackerInfrastructureType(基础资源类型)表示攻击者使用的基础设施类型。主要包括:
Ø 匿名化基础设施:代理服务器、TOR网络、VPN
Ø 通信工具:博客、论坛、互联网聊天工具、微博、移动通信、社交网络
Ø 域名:动态DNS服务、合法域名注册服务、恶意域名注册商、顶级域名注册商
Ø 主机:防弹/Rogue主机、云主机、被入侵的服务器、Botnet主机、合法主机
Attack Resource Level(攻击资源级别)可划分为:
Ø individual独立个人;
Ø club小团体;
Ø contest竞赛活动:一种短暂的,可能是匿名的互动,当参与者达到一个目标时结束;
Ø team一个正式组织的小组,该集团长期存在,通常在单一地理区域内运营。
Ø organization比团队更大、资源更丰富;通常是公司或犯罪集团。通常在多个地理区域运作,并长期持续;
Ø government政府级别。
5) 【stix1.0对比】:
Intrusion Set是2.0字段比较多的一个构件。从1.0的威胁源Threat Actor、攻击方法(TTP)构件摘取相关内容转化而来。继承了TTP中的关键字段resources。其goals, resource_level, primary_motivation等字段和Threat Actor很类似。
6) 【笔者备注】:
匿名化的控制基础设施是攻击者最常用的隐藏真实身份的方式。刻意模仿其他攻击者的攻击战术技术也是攻击者隐藏自身的一种方式。
7、Tool
1) 【基本描述】:
指威胁源在过往攻击事件中常用的工具,工具其实也涉及到恶意软件,但是恶意软件单独拿了出去,作为一个独立的构件。TOOLS也可以包含防御人员在响应中使用的工具。
2) 【标签】:
攻击的工具标签如下(这里就不再做翻译):denial-of-service, exploitation, information-gathering, network-capture, credential-exploitation, remote-access, vulnerability-scanning
3) 【关键内容】:
工具是合法的软件,可以被威胁参与者用来执行攻击。了解威胁参与者如何以及何时使用这些工具对于了解如何执行活动很重要。与恶意软件不同,这些工具或软件包通常位于系统上,并且对超级用户、系统管理员、网络管理员甚至普通用户具有合法用途。远程访问工具(如RDP/ VNC)和网络扫描工具(如NMAP)是威胁参与者在攻击期间可能使用的工具示例。
ToolsType适用于表示特定恶意软件作为攻击工具的用途,包括具体版本或配置等细节。工具也可以对应到killchain的不同阶段。
4) 【特定字段】:
name, description, kill_chain_phases, tool_version
5) 【stix1.0对比】:
1.0的攻击方法(TTP)构件转化而来。1.0对tool的描述甚少,不足以充分描述攻击者的手段,2.0将tool作为单独的构件。
6) 【笔者备注】:
Ø 针对APT攻击来说,一些成熟而完善的公开渗透工具或系统工具给攻击者带来了更好的选择,可以绕过或逃避威胁检测机制。在进行内部横向移动的过程中,攻击者偏向利用Windows系统自带命令,比如PowerShell、WMI进行横向移动攻击。攻击者入侵后会混杂于合法的用户行为中,比如使用合法的基础设施组件、合法用户身份或者重复执行合法用户行为。目的都是为了躲避检测。
Ø APT组织在初期的攻击尝试和获得初步控制权阶段可能更倾向于使用开源或公开的攻击工具或系统工具,对于高价值目标或维持长久性的控制才使用其自身特有的成熟的攻击代码。
Ø 攻击者可以利用其它坏人的工具或资源来进行攻击,以 WannaCry 为例,据说是朝鲜人利用美国 NSA 的代码来发起攻击。
8、Malware
1) 【基本描述】:
恶意软件是一种TTP类型,也称为恶意代码和恶意软件,指插入系统中的程序,通常是秘密插入,目的是破坏受害者数据、应用程序或操作系统(OS)的机密性、完整性或可用性。
2) 【标签】
依据恶意软件的不同类型和功能,标准里对恶意软件的类型进行了划分,可以当做字典使用。adware, backdoor, bot, ddos, dropper, exploit-kit, keylogger, ransomware, remote-access-trojan, resource-exploitation, rogue-security-software, rootkit, screen-capture, spyware, trojan, virus, worm。翻译如下:广告软件,木马,僵尸攻击,DDoS攻击,漏洞利用工具,键盘记录程序,木马,勒索,远程访问,资源开发,流氓安全软件,rootkit的,屏幕捕获,间谍软件,病毒,木马,蠕虫
3) 【关键内容】:
STIX 提供关于恶意软件样本、族或类别的基本识别信息。独立的STIX 内容设计并不包括恶意软件本身的详细特征。STIX可采用恶意软件的扩展类是MAEC,MAEC 提供全面的、结构化的获取恶意软件样本详细信息的方法,因此使用对象主要是恶意软件分析师。
4) 【特定字段】:
name, description, kill_chain_phases
5) 【stix1.0对比】:
Malware和tool很类似,都是从1.0的攻击方法(TTP)构件转化而来。而且特定字段一样。都是name, description, kill_chain_phases
2.0版本将tool、malware作为单独的构件,都是为了充分对攻击者进行画像。
6) 【笔者备注】:
Ø APT组织经常更新其使用的恶意软件,以躲避安全措施的发现。基于特征的恶意软件检测在发现APT攻击方面的效果一般会大打折扣。但是前面提过的Intrusion Set (入侵基础设施)这种资源类是很难快速变化的,基于威胁情报的IP、域名等是检测APT攻击很有效的一个手段。
Ø 可以借助APT组织使用的恶意代码特征的相似度,如包含特有的元数据,加密算法等,进行威胁同源分析。
Ø 在加密传输敏感数据越来越多的情况下,通过ssl证书进行威胁源识别和分析也是有效的一个手段。同一APT攻击组织,通常在一段时间内会使用相同的证书来进行加密通信或管理。
9、Observed Data
1) 【基本描述】:
指该威胁源在攻击时可观测到的一系列行为特征,包括流量侧和系统侧两大类,如访问特定的C&C节点、特定的扫描行为、在特定时间发送钓鱼邮件、尝试上传某类Webshell等。
2) 【标签】:
标准中暂无规定该构件的标签。
3) 【关键内容】:
STIX明确定义了类的扩展,使用网络空间可观测表达(CybOX)来表示网络空间的可观察行为。
Observed Data提供了对各种可以被观察到的对象的结构化描述,其中包括了大部分IOC指标中所涉及的数据类型,如Directory、Domain Name、File、IPv4 Address、IPv6 Address、MAC Address、Email Address、Email Message、Network Traffic(包含HTTP、ICMP、TCP等多个扩展,表示网络请求、网络访问情况等)、Process、Software、User Account、URL、Registry、Certificate
观察的数据包括关于“观察到的实例”和“观察到的模式”:观察到的实例表示发生在网络领域中的实际具体的观察结果,是具体和明确的。观察到的模式表示在未来可能发生的或可能已经发生并且存在于观察到的实例主体中的潜在观察条件。
4) 【特定字段】:
first_observed, last_observed, number_observed, objects
5) 【stix1.0对比】:
与1.0的可观测数据(Observed Data)构件变化不大,但是增加了几个字段。加入了时间和观测次数的要素(first_observed, last_observed, number_observed)
6) 【笔者备注】:
该构件是威胁情报中最基础的数据构件。
10、Report
1) 【基本描述】:
报告是集中于一个或多个主题的威胁情报的集合,例如威胁参与者的描述、恶意软件或攻击技术,包括上下文和相关细节。它们用于将相关的威胁情报分组,以便将其作为一个全面的网络威胁故事发布。
2) 【标签】:
报告的主题有各种类型,threat-report, attack-pattern, campaign, identity, indicator, malware, observed-data, threat-actor, tool, vulnerability。
报告标签不是互斥的,可以有多个标签,报告既可以是恶意软件报告,也可以是工具报告。
3) 【关键内容】:
报告特有的一些字段如下:name(报告名称)、description(描述) published(报告发布日期), object_refs(报告引用的STIX构件)
4) 【特定字段】:
name, description, published(发布时间), object_refs
5) 【stix1.0对比】:
STIX1.0还没有report这个构件,从1.2.1版本中开始出现该构件。的报告(report)构件转化而来。
6) 【笔者备注】:
报告部分暂无多写的。
11、Threat Actor
1) 【基本描述】
Threat Actor(即威胁行为体),在威胁情报中用于描述实施网络攻击威胁的个人、团伙或组织以达到其恶意的动机和意图。Threat Actor结构中捕获各种信息详情,包括身份、动机、预期效果和复杂程度。
2) 【标签】
Threat Actor Label(威胁源标签)表示威胁主体是什么类型的。主要类型如下:
Activist |
积极性强、潜在破坏性强的社会或政治事业(如贸易、劳工、环境等)支持者,试图破坏组织的商业模式或损害其形象。 这类人包括有时被称为无政府主义者、网络破坏者、极端分子和黑客行动主义者的行动者。 |
Competitor |
商业竞争对手 |
crime-syndicate |
犯罪集团,通常是大型、资源丰富的集团,其运作目的是从各种犯罪中获利。 |
Criminal |
从事计算机犯罪的个人,通常是为了个人的经济利益,并且经常涉及到盗窃有价值的东西。 |
Hacker |
黑客,其特点是为了刺激或挑战而进行攻击的人 |
insider-accidental |
内部的非恶意人士,可能无意或过失造成危害。 |
insider-disgruntled |
内部的不满员工或者恶意员工,具备主动恶意行为动机。 |
nation-state |
为一个民族国家的政府或军队工作或在其指导下工作的实体。 |
Sensationalist |
耸人听闻的人:试图通过以引起公共关系危机的方式暴露敏感信息,造成尴尬和品牌损害。 |
Spy |
间谍 |
Terrorist |
恐怖分子 |
3) 【特定字段】
name, description, aliases, roles, goals, sophistication, resource_level, primary_motivation, secondary_motivations, personal_motivations
4) 【关键内容】
威胁源的roles(角色)、sophistication级别、recource_level资源水平、motivation动机等都是画像的关键要素。下面从标准里做了抽取,分别描述。
Threat Actor Role(威胁源的角色):角色,指在一个威胁组织中的不同分工,比如有的是专门写恶意软件的,有些是实施攻击,植入恶意软件的。当然也有可能1人从事多个角色的工作。
Agent |
威胁行为人代表自己或在他人的指导下执行攻击。 |
Director |
指导恶意活动的活动、目标和目标的威胁参与者。 |
independent |
独立作战的攻击者 |
infrastructure-architect |
作战计划的设计者 |
infrastructure-operator |
提供并支持用于交付攻击的攻击资源(僵尸网络提供商、云服务等)的威胁参与者。 |
malware-author |
恶意软件开发人员 |
Sponsor |
资助恶意活动的威胁参与者。 |
Attack Motivation(攻击动机):了解威胁参与者的动机可能会让分析师或防御者更好地了解可能的目标和行为。
accidental |
无意中造成伤害的无敌意的行为人 |
Coercion |
被迫代表他人行事。与其他动机不同的是,被胁迫的人并不是为了个人利益,而是因为害怕遭受损失。 |
dominance |
寻求对目标的支配权的对手集中精力利用自己的力量迫使目标屈服或不相干。在一些国家发起的攻击中,意识形态可能占主导地位,而在一些基于网络破坏的攻击中,意识形态可能占主导地位。 |
Ideology |
由于意识形态原因(如政治、宗教、人权、环境、造成混乱/无政府状态的愿望等)而行动的攻击者,他们是根据自己的道德、正义或政治忠诚感行事。 |
notoriety |
寻求声望或通过某种活动而出名。 |
organizational-gain |
组织利益的获取。包括经济利益或相关利益等,主要目标是在竞争中获取优势。 |
personal-gain |
主要是获取个人的经济利益为主。 |
personal-satisfaction |
满足一个严格的个人目标的愿望,包括好奇心、寻求刺激、娱乐等。 |
Revenge |
报复:一个心怀不满的威胁行动者或入侵集团寻求报复,可以包括现在或以前的雇员。 |
Unpredictable |
不可预测的行为,没有可确定的原因或目的,并造成不可预测的事件。 |
Threat Actor Sophistication(威胁源的能力或水平):一个创新的、高技能的威胁行为人可能接触到很少的资源,而一个最低级别的行为人可能拥有有组织犯罪集团的资源。个人的能力与Attack Resource Level(具备的攻击资源级别)并不完全对应。
None |
普通用户,不具备攻击能力,无意识的随机破坏。 |
Minimal |
脚本小子:利用已知的漏洞,采用大众的工具,对原理知道的很少。 |
Intermediate |
比脚本小子更高一级水平的攻击者,这类攻击者的计算机技能相当于IT专业人员。 |
Advanced |
工具开发人员:能够创建自己的工具,利用已知漏洞攻击。 |
Expert |
可以专注于未知恶意代码的发现和使用。攻击未知的漏洞,并且能够从头开始创建自己的工具。 |
Innovator |
典型的罪犯或国家行动者,他们是有组织的、高技术的、熟练的、资金充足的专业人员,在团队中工作,以发现新的漏洞并开发漏洞。 |
Strategic |
APT攻击的发起者,能够创建或使用攻击链发起攻击。具备国家资源和力量。 |
攻击资源水平
individual |
独立个人 |
Club |
小团体 |
contest |
竞赛活动:一种短暂的,可能是匿名互动,当参与者达到一个目标时结束。 |
Team |
一个正式组织的小组,该集团长期存在,通常在单一地理区域内运营。 |
organization |
比团队更大、资源更丰富;通常是公司或犯罪集团。通常在多个地理区域运作,并长期持续。 |
government |
政府级别。 |
5) 【stix1.0对比】:
STIX1.0的同样有威胁源(Threat Actor)构件,不同的是增加了以下新字段。aliases, roles, goals,这几个字段对威胁源的画像非常有用,也是对1.0的完善。
6) 【笔者备注】
Ø 威胁源是高阶情报,也称作攻击组织。
Ø 攻击组织目前没有统一的命名,主要厂商都是各自在定义组织。不同的安全厂商有时候会对同一背景来源的威胁进行不同的别名命名,这取决于其内部在最早跟踪威胁活动时的命名约定,所以往往需要根据威胁攻击的同一来源进行归类。
Ø 攻击源画像:在追溯 APT 组织的攻击活动过程中,能够明确追溯到攻击者真实身份、虚拟身份、地理位置等信息是很重要的。画像是很重要的一个词,攻击源的画像、受害者的画像,攻击手法的画像等,组织了一个APT攻击的全链条的攻击情况
Ø 攻击动机主要是长久性的情报刺探、收集和监控,也会实施如牟利和破坏为意图的攻击威胁
12、Vulnerability
1) 【基本描述】
Vulnerability属性表示可能被利用的目标漏洞。信息的示例包括漏洞描述(结构化或非结构化的方式)、CVE标识符、OSVDB标识符和CVSS信息。
2) 【标签】
标准中暂无规定Vulnerability构件的标签。
3) 【特定字段】:
name, description,external_references
4) 【关键内容】
external_references,外部可扩展引用漏洞相关的字段兼容了CVE、OSVDB、CVSS等详细信息。
CVE_ID |
CVE_ID 属性是该漏洞的通用漏洞披露(CVE)标识符。 |
OSVDB_ID |
OSVDB_ID属性是漏洞的开源漏洞数据库(OSVDB)标识符。 |
CVSS_Score |
CVSS_Score 属性抓取完整的通用安全漏洞评分系统(CVSS)2.0版的基础、时间和环境向量。 |
5) 【stix1.0对比】:
从1.0的攻击目标Exploit Target构件的字段Vulnerability转化而来。
6) 【笔者备注】
Ø Weakness比Vulnerability有更大范围的含义,但是STIX2.0仅仅抽取了Vulnerability,而没有独立抽取Weakness。笔者的理解漏洞是可以直接被利用,在后果上一般也比Weakness严重。
Ø 这里再多提一下,漏洞及缺陷相关的公开标准或规范。通用漏洞披露(CVE)的标识符结构和开源漏洞数据库(OSVDB)被用来识别公开披露的漏洞。通用安全漏洞报告框架(CVRF)格式用于抓取CVE或OSVDB未识别的具有详细的、结构化特征的漏洞(零日漏洞的特性描述由此形成)。常见缺陷列表(CWE)中的标识符结构用于找出缺陷,通用配置枚举(CCE)中的标识符结构用于识别配置问题。
Ø 攻击组织一般都掌握着或多或少的0day漏洞,不过考虑到成本问题,他们更倾向使用1day和Nday漏洞展开攻击。
声明:本文来自守望者实验室,版权归作者所有。文章内容仅代表作者独立观点,不代表士冗科技立场,转载目的在于传递更多信息。如有侵权,请联系 service@expshell.com。