[论文解读] Automated Attack Planning
本文提出了一种新颖的自动化渗透测试攻击规划框架,采用PDDL和POMDP模型生成最优、具备不确定性感知能力的攻击路径。该框架引入了4AL方法,通过分层分解实现扫描与利用动作的可扩展、智能化混合,实现在假设条件下的工业级性能,并具备可证明的最优性。
Penetration Testing is a methodology for assessing network security, by generating and executing possible attacks. Doing so automatically allows for regular and systematic testing. A key question then is how to automatically generate the attacks. A natural way to address this issue is as an attack planning problem. In this thesis, we are concerned with the specific context of regular automated pentesting, and use the term "attack planning" in that sense. The following three research directions are investigated. First, we introduce a conceptual model of computer network attacks, based on an analysis of the penetration testing practices. We study how this attack model can be represented in the PDDL language. Then we describe an implementation that integrates a classical planner with a penetration testing tool. This allows us to automatically generate attack paths for real world pentesting scenarios, and to validate these attacks by executing them. Secondly, we present efficient probabilistic planning algorithms, specifically designed for this problem, that achieve industrial-scale runtime performance (able to solve scenarios with several hundred hosts and exploits). These algorithms take into account the probability of success of the actions and their expected cost (for example in terms of execution time, or network traffic generated). Finally, we take a different direction: instead of trying to improve the efficiency of the solutions developed, we focus on improving the model of the attacker. We model the attack planning problem in terms of partially observable Markov decision processes (POMDP). This grounds penetration testing in a well-researched formalism. POMDPs allow the modelling of information gathering as an integral part of the problem, thus providing for the first time a means to intelligently mix scanning actions with actual exploits.
研究动机与目标
- 通过将攻击生成建模为规划问题,解决自动化渗透测试的挑战,以减少人工工作量并提高可访问性。
- 构建网络攻击的正式模型,真实反映渗透测试实践,包括利用成功的概率和网络拓扑结构。
- 提出一种可扩展的、概率化的规划方法,考虑利用成功和执行成本的不确定性,实现工业级规模的攻击规划。
- 使用部分可观察马尔可夫决策过程(POMDPs)建模攻击规划问题,自然地将信息收集(扫描)与利用整合在一起。
- 设计一种分层分解方法(4AL),在保持解质量的前提下,将基于POMDP的攻击规划扩展至大规模网络。
提出的方法
- 使用PDDL语言表示攻击场景,以利用经典规划器生成攻击序列。
- 将经典规划器与真实渗透测试工具集成,通过在真实网络上执行来验证生成的攻击路径。
- 开发自定义概率规划器,将动作成功建模为概率,并最小化期望成本(如时间、流量),并在特定假设下提供最优性证明。
- 设计仿真平台,用于在真实部署前对大规模、任意网络场景中的攻击计划进行测试与验证。
- 提出4AL框架,一种四级分层分解:(1) 将网络分解为双连通分量,(2) 在分量上规划攻击,(3) 在子网中考虑防火墙约束规划攻击,(4) 将单机攻击作为POMDP求解。
- 在最低层使用现成的POMDP求解器,缓存结果以避免重复计算,并通过层次结构向上组合解。
实验结果
研究问题
- RQ1如何通过形式化规划技术系统性地生成自动化渗透测试?
- RQ2概率规划模型在多大程度上能通过考虑利用成功和网络状态的不确定性来改进攻击规划?
- RQ3基于POMDP的建模能否实现扫描与利用动作的智能、低成本集成?
- RQ4如何在不牺牲解质量的前提下,将基于POMDP的攻击规划扩展至大规模网络?
- RQ5在基于POMDP的攻击规划中,使用分层分解时,解质量与计算效率之间的权衡是什么?
主要发现
- 所提出的基于POMDP的模型首次实现了将扫描与利用在单一、连贯的规划框架中进行正式整合,支持在不确定性下实现智能动作排序。
- 4AL分层分解方法实现了工业级性能,能够高效求解包含数百台主机和利用技术的场景。
- 实验结果表明,与全局POMDP解相比,分层POMDP方法仅造成微小的解质量损失,同时具备可扩展性。
- 概率规划器在已知动作成功概率和固定成本的假设下产生最优解,且有正式证明支持其最优性。
- 将经典规划器与真实渗透测试工具集成,实现了通过在真实网络上执行来端到端验证攻击计划。
- 仿真平台成功实现了在真实世界执行前对大规模、任意网络配置中的攻击计划进行测试,提升了安全性和可靠性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。