时代在发展,信息在爆炸,知识以前所未有的速度在更新,随着信息技术的不断进步及智能化在各行各业的发展以及人工智能算法的不断优化和出新,安全行业也迎来了AI+安全的智能化时代,随着攻击技术手段的更新,攻击变得复杂化和多样化,网络攻击技术不断向隐蔽、高效、智能化方向发展,传统得漏洞扫描基于规则库和部分poc进行精确扫描,但发现得漏洞以孤立的方式存在,显然,无法有效科学评估网络的整体风险。
渗透测试:
发展到目前的渗透测试其实更多的是指web或者叫做B/S架构系统的健壮性检测,是测试人员依据安全测试用例及个人经验对系统开展黑盒、白盒或黑白盒相结合的测试,测试人员以发现问题为主,不对问题的可利用性及利用深度负责,所以形成漏洞的孤立性。
攻防演练:
目前的攻防演练方式大多通过对客户互联网的资产进行打点收集,由于目前防火墙的普遍存在,所以演练人员大多以web方式先获取一定的权限,或者直接获取到系统级的管理权限,以此对外提供服务的这台服务器为跳板进行内部网络的资产收集,漏洞利用、横向移动、扩权等循环攻击动作,以获取内部重要系统的数据或系统级管理权限为目标。攻防演练解决了渗透测试发现问题的孤立性,或漏洞的可利用价值,但其也存在很明显的问题,即:演练人员一般发现一条获得跳板机器的情况下,一般不会再去尝试其它的漏洞利用方式,所以攻防演练解决了漏洞价值的问题,其评估的攻击具有片面性。但仍存在无法全面全局评估整体网络安全健壮性的问题。
智能渗透测试应能弥补以上2种服务的缺点,既可以解决漏洞孤立性,又要尽可能多的帮用户找出多种具备实际危害性的攻击路径。
为了确定我们讨论问题的一致性,我们先达成本文所说智能渗透系统的共识,暂且先把本文的智能渗透所实现的目标是:从互联网侧进行单点或多点突破进入企业内部网络并获取企业内部更多系统、重要数据或重要核心系统的最高权限,通过智能渗透实现全域全路径规划和路径生成。如果要实现此目标的智能渗透产品,还面临更多的研究重点需要解决:
1、信息侦测可控性。在进行红蓝对抗演练时,信息侦测是很重要的技术手段,收集信息的渠道和技术手段多种多样,大多数的信息更多的并非是在被测单位相关的系统上获得的,很大一部分是通过其它途径或地方获取的,在机器进行自动化信息收集时如何保证信息收集的全面性,同时又保障信息收集的可控性也是需要解决的问题。
2、攻击路径生成。渗透测试或攻防演练人员测试的过程本质上是一个信息侦测、漏洞攻击的循环往复的过程,所以通过机器很难自动化的生成一条全链路的攻击路径,同时,翻阅了大量资料无论是论文和专利解决的路径自动化生成都是在已知网络可达性(网络拓扑)的情况下解决路径生成,具备上帝视角,但在实际的测试过程中,无法画像到这么准确的网络拓扑关系,所以在实际的产品化方面不具备太多的参考性。
3、复杂性和庞大性。要实现真正的智能化,复杂性在于人工智能的多种应用,如:信息侦测阶段对被测单位进行资产画像,由于会使用不同的工具、系统、第三方接口等,这些结果数据大家有不同的格式和定义,智能渗透就需要对这些结果进行归一化、统一化处理,但如果对不同工具、系统或第三方接口的数据人工进行统一化处理,就需要耗费大量的时间和精力,有新的工具、方法或接口的接入就要对数据进行人工分析并进行统一化处理,增大了产品的维护和开发成本。所以就需要用到自然语言处理相关的算法进行归一化处理。再比如智能算法解决的是路径的最优解,但智能渗透应该关注的是帮助用户找到尽可能多的成功攻击路径对客户才更具有价值。
4、智能算法的多样性。不同测试工具、方法的结果数据进行归一化处理,需要自然语言处理。指纹识别需要建模训练。漏洞自动挖掘需要建模训练,目前攻击机器所处被测网络逻辑位置需要建模识别。每个功能都需要投入大量的研究。
5、训练数据问题。由于渗透测试的特殊性,相关的数据基本无法得到,所以只能采用强化学习算法或深度强化学习算法进行自学习,由于不同客户之间网络环境、系统环境等不同因素的微小差异,就有可能导致漏洞利用的失败,所以通过学习算法学到的攻击路径在其它环境中的适用性有待测试。
限于笔者的能力及对智能渗透研究的时间不足,文中可能存在错误的地方,欢迎大家指正和交流。对智能渗透有兴趣的也可加入下方交流群,共同交流探讨。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...