在之前的文章中,小编介绍到 STIX是一种描述网络威胁信息的结构化语言 ,也介绍了 网络威胁情报信息怎么统一格式 用STIX结构化威胁信息表达 ,其中用9个维度来定义网络威胁信息,这包括可观察物、指标、安全事件、TTP(策略、技术与过程)、行动、威胁源起方、利用目标、行动方案(COA)、数据标记,那么具体这些维度在数据存储上都包括哪些字段,又是如何使用的呢?这篇文档主要是讨论这个方面的问题。 STIX Profile是什么
STIX 针对的是各种网络威胁情报用例,因而数据模型覆盖范围相应宽泛。STIX 本身具有灵活性,可支持各种用例,这同时意味着许多的构造、字段和值对于单个用例来说也许是多余或无关的。例如,使用STIX 共享基本指标信息的组织可能会选择仅使用指标、可观察物及TTP 构造。STIX 的其余内容(如威胁源起方(Threat Actor))可能对其他用例有用,但是对于仅实施指标共享的组织来说就无所谓了。STIX Profile 是对这一范围裁剪概念的实践,指某群体、组织或实现(Implementation)采用的特定STIX 子集。
STIX Profile 用以描述:
- 哪些字段和值必选;
- 哪些字段和值建议使用;
- 哪些字段和值可选;
- 哪些字段和值禁用。
应注意,Profile 仅是针对特定情境下的STIX 使用范围限制。因此,STIX 中没有针对具体Profile 的对象或元素,Profile 只是STIX 的一个子集。本质上,STIX Profile 规定的是应包含STIX 大框架中哪些元素。除了指定应包含的顶层STIX 对象,Profile 还会明确应包含哪些网络可察表达(CybOX™)数据模型中所规定的网络可察对象。
Profile 可用于精简繁杂的构造(STIX 部件、CybOX 对象、词汇、关系、扩展等),还可在不同深度,精确描述允许或禁用哪些字段。
下图是一个STIX Profile 简易视图,内含三个顶层STIX 对象(指标、可观察物、TTP),并规定了应覆盖80 多个CybOX 对象类别中的哪些类别。
为什么使用STIX Profile
Profile 有两个主要用途:(1)为使用STIX 进行信息交流定义共享情境;(2)为工具/ 业务实施能力界定范围。若信息交流各方就Profile 达成一致或某实现规定了适用Profile,则Profile 应将STIX 范围缩小至只包含必要元素。
对共享模型用户及定义者来说,Profile 有助于就共享内容达成一致认识。群体或用户组可使用Profile 禁用某些构造,例如,规定不会共享此类信息。
对开发者来说,Profile 的好处体现在可以缩小工作中须参考的STIX 范围,不把时间浪费在了解无关信息上。基于Profile 开展工作的开发人员无需了解全套STIX 构造以及每个构造中所有的字段,只需关注Profile 中允许的字段,实现用户也很清楚实现处理的是何类信息。
下图中,两个组织使用了相同的Profile,促进了STIX 子集共享。本例中,Profile 规定应包含STIX 指标与TTP,而不包含其他顶层STIX 对象。从这点上说,Profile 可协助组织进行治理,制定共享政策,还可以为实施基于Profile 所定义的STIX 子集开发的解决方案提供指导。
Profile 对威胁信息使用者尤其有用,因为它确定了使用者的数据库及处理模型必须支持的字段及值集。若某些字段或值被禁用,则数据库无需了解如何存储、代码无需了解如何处理这些字段或值。另一方面,若有些字段或值为必选,使用者则基本上一定能找到这些字段或值,并据此采取行动。
STIX Profile呈现方法
目前,Profile 以人类可读的电子表格形式制成并分发。这种方式成本低,工作量小,方便各群体浏览并了解Profile 所允许以及禁用的元素,以便讨论共享计划形成共识。Profile 定稿后,开发者可通过电子表格了解需要、应该或不应该赋值的字段,使用者可通过它来了解需要使用的信息。
现用电子表格形式
电子表格的第一个页签包含Profile 的一些基本信息以及允许及禁用的概要信息。STIX组件、扩展、CybOX 对象、受控词汇会一一列举,并说明允许还是禁用。
其他页签会详细说明每个构造。对于各个构造(类型),相关字段按照必选、建议、可选及禁用分别列举并编码。若这些字段包含更深层次的信息(如具有自己的构成),该类型的每个字段会用相似编码方法;若字段并无更深层次信息(如,只是一个简单的值或可被视为独立单元),则会被简单编码,不做过多讨论。可为每个字段指定值、类型实现及扩展。
机器可处理Profile
理想情况下,Profile 应可以由机器处理,这样STIX 内容可以自动验证或过滤,以确定是否符合Profile 或去除无效内容。通过机器可处理Profile,开发者可确保所生成的内容有效,使用者可验证所收到并处理的内容是否确为之前一致同意的内容。
STIX 团队目前正在调研呈现机器可处理Profile 的可行方法。这需要反复权衡,不管选择哪个方法,都必须符合多数人的需要,以避免大范围出现格式不同且相互抵触的Profile。
支持与开发Profile
开发Profile 的一个常见担忧是,为每个特定用例实例化制定Profile(这其实完全没有必要),这些Profile 用户之间很难形成一致的STIX(因为每个用例遵循的Profile 不同)。这个担忧不无道理,但是可以通过如下方法或多或少地化解:围绕实际操作,为规范及使用合理抽象化的分层Profile 集提供指导,将重点放在限制不必要的特定Profile 上,所谓“不必要”是指有现成的、基本适用的综合Profile。
例如,在制定自己的Profile 之前,特定共享群体应首先确认是否有现成的综合Profile(如“指标共享”Profile)以及是否适用。若需要开发专门的Profile,该Profile 应尽可能从属于综合Profile。这样,遵循综合Profile 的人才可以理解根据该子Profile 产生的内容。
免责声明
本文原文来自于互联网的公共方式,由“安全加”社区出于学习交流的目的进行翻译,而无任何商业利益的考虑和利用,“安全加”社区已经尽可能地对作者和来源进行了通告,但不保证能够穷尽,如您主张相关权利,请及时与“安全加”社区联系。
“安全加”社区不对翻译版本的准确性、可靠性作任何保证,也不为由翻译不准确所导致的直接或间接损失承担责任。在使用翻译版本中所包含的技术信息时,用户同意“安全加”社区对可能出现的翻译不完整、或不准确导致的全部或部分损失不承担任何责任。用户亦保证不用做商业用途,也不以任何方式修改本译文,基于上述问题产生侵权行为的,法律责任由用户自负。
更多内容,请下载附件:【公益译文】STIX Profile概览白皮书20170111
如果您需要了解更多内容,可以
加入QQ群:570982169
直接询问:010-68438880