原创 knight JDArmy
微信号 gh_e9df6be6f498
功能介绍 一个专注于高质量安全研究 、渗透测试、漏洞挖掘的分享平台,点关注,上高速!!!
__发表于
收录于合集
#睡前小论文 2 个
#机器学习 2 个
自动化的最终目的是做一个全自动化的渗透工具,本文是学术界2018年发布的一篇论文,主要就是讲如何通过强化学习来进行自动化路径决策。对后续工具的开发具有借鉴意义。
论文下载地址:
https://researchonline.gcu.ac.uk/ws/portalfiles/portal/26084628/H.Tianfield_attack_graph.pdf
通过跟踪导致成功攻击的漏洞链来暴露安全问题能有效地缓解网络受到复杂的恶意活动的影响。但是整个攻击链的过程又费时、费力、容易出错。所以作者提出了自动化的解决方案。
-
1.采集当前网络信息状态,包括已知漏洞、网络服务、网络访问规则。
-
2.通过MulVAL来获取网络中所有可能存在的攻击路径。
mulval是基于 Nessus 或 OVAL 等漏洞扫描器的漏洞扫描结果、网络节点的配置信息以及其他相关信息,使用 graphviz 图片生成器绘制攻击图。
- 3.使用算法将攻击图转换成Q-learning的学习的过渡图。
- 4.使用CVSS来对Q-learning发现的能产生高危害的可能路径进行奖励。
Q-learning是一种强化学习模型,它采用agent的形式,来在当前环境中找到一个最优的行动策略来获取最大的累积奖励。
- 生成网络拓扑图及相关漏洞
- 使用MulVAL来绘制所有攻击路径图
下面是MulVAL生成的攻击路径图,图中的12号节点就是攻击的入口点,下面就是具体的攻击路径。
- 生成可供Q-learning学习的过渡图
- 最终结果
下图是Q收敛的所有目标,箭头的位置分别是四个场景下收敛到900所对应的迭代次数。(说人话就是能让模型自动找到那四个场景下的最优攻击路径所需要的迭代次数)模型大概要进行350次迭代才能在这四个场景进行收敛。
本篇论文最大的贡献是对复杂的网络拓扑进行建模,并通过强化学习的方法,让模型能自动进行网络的脆弱性分析,帮助安全管理员找到最优的路径来修补漏洞。
点击原文链接可直接获取论文原文。
预览时标签不可点
微信扫一扫
关注该公众号
知道了
微信扫一扫
使用小程序
取消 允许
取消 允许
: , 。 视频 小程序 赞 ,轻点两下取消赞 在看 ,轻点两下取消在看