【论文阅读】基于强化学习的网络安全防护策略
本篇文章将介绍一篇针对网络安全问题,运用强化学习方法寻找最优的网络防御策略。
Finding Effective Security Strategies through Reinforcement Learning and Self-Play
- 前言
通过强化学习和 自对弈(self-play) 寻找有效的安全策略- 主要思想
提出一种针对入侵防御案例的安全策略自动查找方法,将攻击者和防御者之间的交互建模为一个马尔可夫博弈过程,让攻击和防御过程在没有人干预的情况下通过强化学习和自对弈进行 - 创新点
建立了安全策略的自对弈模型,并解决了强化学习一直存在的问题:1、利用建立模型的结构来减小动作空间的额大小,将动作分解为两个动作,首先选择哪个节点进行攻击或防御,接着选择对该点采用什么攻击或防御策略,将动作空间 N×(m+1) 变成了 N+(m+1) 2、避免过拟合情况,在训练期间从策略池中抽取对手策略,增加了策略的多样性 - 存在的问题
与所有自对弈问题一样,存在 训练难以收敛 的情况,在基础防御较弱时结果容易发生震荡,震荡表明防御者对对手策略的变化做出了应对,并且出现了过拟合情况。
- 主要思想
🔥 这篇文章主要贡献是将攻击者和防御者之间的互动建模为一个马尔可夫博弈过程,以及为减小计算量和增加算法的收敛性使用的两个小trick,创新点没有那么突出,但对网络攻击防御的过程建模值得看看。
-
摘要
提出了一种针对入侵防御用例的安全策略自动查找方法。将攻击者和防御者之间的互动建模为一个马尔可夫博弈,在没有人为干预的情况下,让攻击和防御策略通过强化学习和自演来进化
-
模型
将入侵防御建模为一个零和马尔可夫博弈(Zero-sum Markov game),涉及攻击者代理和防御者代理- 入侵防御博弈过程
上述图包括四个网络部分, N s t a r t N_{start} Nstart代表着攻击者,剩下的代表防御者设备,其中 N d a t a N_{data} Ndata是攻击者想要达到的部分即攻击者的目标组件。攻击者为破坏目标组件,攻击者通过侦察来探索基础设备,并在获取目标组件的路径上破坏组件;同时防御者进行监视,并增加防御,以防止攻击者访问目标组件。
【开始阶段】对于攻击者整个基于设施是个黑盒,相反,防御者完全了解网络的拓扑结构和网络漏洞(即每个节点有多种面对不同攻击的防御方法以及防御强度),但无法观察攻击的状态。所描述的对抗过程是一款基于回合的游戏。 - 入侵防御博弈模型
建立零和马尔可夫博弈模型,确定状态、动作以及奖励。
状态:每个节点 N k N_k Nk有与之相关的节点状态
- 入侵防御博弈过程