框架能否发挥应有的作用我想最关键的地方就在于它的“数据源”
框架建立在从数据源上搜集信息,对信息进行分析处理,得到了上下文联系,由此对于入侵检测入侵防御的精确度提高有所帮助。也就是说我们继续改进对于数据源的利用,会让我们的工作更加高效。
书中有三个方法提高数据源的利用效果:
①定制数据源定义
②标准化命名方法
③确保平台一致性
·定制数据源定义
所谓数据源,我想就是获取我们想要收集数据的地方,比如某个日志,比如某个配置文件。定义好数据源让我们清晰的区分不同的数据源,以及理清楚数据之间的关系
·标准化命名方法
其重要性在于正确区分数据源,精确搜集数据
·确保平台一致性
因为某些数据源在某些平台是没有的,所以确定好数据收集平台,能提高效率。
我们明白了要改进利用数据源的方法,那么具体实现应该是怎么样的呢,换句话说我们该如何正确定义、描述数据源?书中给出了如何描述数据源的结构和方法的答案。
①利用数据建模
②通过数据元素定义数据源
③整合数据建模和攻击者建模
④将数据源作为对象集成到ATT&CK框架中
⑤扩展ATT&CK数据源对象
⑥使用数据组件扩展数据源
·利用数据建模
三个概念:
数据对象/元素:描述数据源的数据元素
数据对象属性:数据的一些属性信息,比如说名称,地址等
关系:数据之间的关系,比如一个进程可以创建另外一个进程
·通过数据元素定义数据源
也就是给数据源起名字的方法。可以使用数据元素来命名与攻击行动有关的数据源
例如:
以windows注册表为数据源,他的数据元素中包括进程、注册表项、用户,其中注册表项是用来识别主要数据对象的,可以用来作为数据源名称。
再例如:
对提供某项服务的数据元素进行分组,根据他们共有功能取名称。
·整合数据建模和攻击者建模
因为框架针对的是已知的攻击方式,所以要确定必须收集某些特定的事件,覆盖已知的特定的攻击
知道了要怎么定义、描述数据源后,应该要着手实装这些方法。书中以改进进程监控为示范,解释如何改进:
1.改进进程监控
①确定数据源
可以从内置事件提供程序(如microsoft-windows-security-auditing)和开源第三方工具(sysmon)来采集跟进程相关的信息。在这一步骤目的是找到攻击行动的主要数据元素,比如从安全日志中找到跟进程相关的,同时给出说明,也就是描述进程做了哪些事情,发生了哪些事情。
②确定数据元素
也就是列出跟相关的数据,比如用户、进程、命令、主机、ip、端口都可以跟进程产生一定的联系。书中提到,数据源的命名由核心数据元素表示,比方说“进程监控”,由于监控是围绕进程产生的行为,我们应该选择“进程”作为数据源名称,从而删除多余的无关措辞。
③确定数据元素之间的关系
根据采集到的数据来描述跟“进程”相关的安全事件案中的关系
④定义数据组件
组件其实就是根据数据元素的功能或者特性进行分类,形成对数据元素之间关系的更高级的描述,也就是更细致的描述。
⑤构建ATT&CK数据源对象

接下来我们要跟技术/子技术联系在一起,如下图,书中给出了应用的例子:

