一、应急演练和攻防演练的区别是什么
把应用系统安全作为比较对象,分析应急演练和攻防演练的区别。
应急演练和攻防演练是为两种不同类型的演练类型,应急演练偏向通过模拟异常情况以发现不足之处;
而攻防演练则偏向于攻击和防守方之间的技能竞技,攻方最终单维度拿下目标、守方尽可能发现/抵御攻击。
以下内容仅针对一个演练对象中的两个应急演练模块进行说明,从而做到以点概面的体现。
二、那么单位为什么要进行应急演练?
网络安全法对应急预案、应急演练相关内容有明确定义,部分内容如下所示:
在遭遇信息系统突发紧急事件(安全性、可用性等事件)时,应立即启动应急预案,并采取相应的补救措施和按照规定向有关主管部门报告。应急预案内容应包括对信息系统各种突发紧急事件的处置流程,以在事件发生期间指导相关人员进行应急处置。
所以应急预案必须是可以落地执行的指导性流程文档,但由于信息系统软硬件基础设施对象、厂商、负责人不同,导致收集完成后合并编制的应急预案可能和实际情况存在偏差,即遭遇突发紧急事件可能无法按照应急预案内的应急流程进行处置,所以针对应急预案内每个对象的应急流程,应定期进行演练,尝试发现安全隐患和存在不足的地方,并加以优化整改,从而提升信息系统的安全性、可用性。
2.1 约束条件
法律:网络安全法;
网安/网信:对应等级的等级保护工作落实情况;应急预案、演练落实情况;系统自查自纠整改完善落实情况;
责任:第一安全责任人制度适用于用户单位哪位领导。
以上情况无不说明安全态势以及重视程度,如发生安全事故,事故单位、安服单位责任无法规避和承担。
2.2 真实场景1(抵抗敏感词/敏感图片攻击)
是否担心用户单位站点被挂敏感信息、静/动态图片含有的敏感词和涩清内容却无法提前发现:
例如站点敏感信息只有北京可以看到?
例如站点敏感信息只有特定的搜索引擎跳转可以看到?
例如站点敏感信息只有特定的浏览器可以看到?
不担心,因为:
“我负责安服的用户单位有态势感知、以及日常的运维巡检,基本上发生后会立刻告警。”
“用户单位云端有云防护、本地关键路径有层层应用层防护、本地操作系统更是全副武装,基本上不会发生你说的这种情况”
“我们推的站点安全监测系统功能非常强大,频率、深度无可挑剔,用户使用后基本上不会出现这种情况”
“……”
以上种种都是基于对其他的绝对信任,但网络安全应该是0信任机制。所以不来一下应急演练真的会放心吗?
2.3 真实场景2(抵抗操作系统恶意程序攻击)
是否担心用户单位的操作系统资源可用性监测是否正常?
是否担心用户单位的操作系统防篡改配置真实有效?
是否担心用户单位的恶意网络行为感知/防护系统功能真实有效?
如果存在以上种种的担心,不来一下应急演练真的会放心吗?
2.4 小结
信息系统的稳定安全与否,绝对不是单维度的安全稳定即可,而是基础软硬件设施、网络、应用、主机、数据、管理多维度的高可用性、高安全性决定,且适用于木桶效应,所以万物(可用性、安全性)皆可演练,尤其演练前的调研即可发现诸多不足。
三、个人为什么进行应急演练亦或是场景测试?
如果我老大没有“屏蔽我的朋友圈”,如果我没有在freebuf上看到我老大写的这篇文章我也许想不到写这篇文章,但是爱情(基情)没有那么多如果,所以最终我可能就是愣愣的自己做自己的事,没有想到总结分享(隔山秀恩爱)。
那么个人沟通漏斗怎么去规避,接回文章主体,单位可以通过应急演练的方式对可能存在的安全隐患进行发现从而进行整改、优化和完善。
而个人对于可能存在的不足或薄弱点,则可以通过freebuf、freebuf友情链接等平台(具备知识分享/交流分享/其他特征的平台)进行搜索、获取自己所需要的对象内容,但可能存在“眼睛说我看懂了,脑子说我学会了,手表示你们会你们来!”这种现象。
所以必要的实践是强化认知的一种强有效途径,但不是每个单位、每个人都能遇到类似的场景,因为应急响应服务属于保险服务,不能没有,但最好不用,所以应急场景可遇不可求(比如说我希望多遇到一些,从而在实战中提升自己的技能等级,并发现自己的不足针对性的提升技能等级和方向)。
3.1 真实场景(抵抗敏感词/敏感图片攻击/抵抗操作系统恶意程序攻击)
全局劫持是怎么在后端体现的?
JS劫持怎么发现?
找到了恶意程序,但无法删除,为什么会权限报错?又或者为什么会报错提示没有找到该文件?
通过大概的入侵(或者说上传时间)时间无法定位恶意程序?
挖矿的网络行为在数据包层面都有哪些体现?DNS、ping、三次握手、钱包地址是否可以看到、一般都会附加DDOS攻击程序吗?
为什么只能看到CPU占用率高,但看不到相对应的进程?
为什么只能看到网络连接,但是看不到对应的PID?
进程目录在哪里?
静态执行不调用动态库的小工具是什么?
自启动项、任务计划等帮助程序自启动的功能被修改/新添了,为什么时间上看不出来?
历史命令为什么没有看到异常?
……
以上通过查阅资料都可以找到,但如果第一次接触,或者第一次看爱情动作片,只能看,不能实操,会不会抱憾终生?
四、场景分享
文章中未体现技术细节分析的原因是:
面向单位,抵抗敏感词/敏感图片攻击环境每个页面都存在问题,是否都可正常发现、拦截、告警;抵抗操作系统恶意程序攻击环境则体现为系统CPU异常,网络连接等异常,是否可以发现、拦截、告警。
面向有需求的个人,则是否可以检查出来相关异常现象的原因。
因此不论个人,亦或是单位,如果有以上需求,即可在github以下链接中获取场景,以帮助用户单位发现不足、有需求的个人提升应急能力。
4.1 抵抗敏感词/敏感图片攻击场景https://github.com/Ymigmli/Emergency-drill.git
放入任意中间件中即可,如果两个场景一起体现,则建议centos 6 ,该版本默认安装了httpd服务。
4.2 抵抗操作系统恶意程序攻击
第一次接触挖矿建议不看start.sh/delete.sh的运行提示,不看sh文件、sourcefile文件夹。
说明:文件1-4加密或者编译是为了规避一些检查工具的关键字匹配,而不是怕被看到源码,不信你看启动、删除环境都是sh,而且源码都在sourcefile文件夹中,我一直认为非恶意程序、非商用程序不给看源码,是由于开发脸皮薄,怕被人看到源码后有“这写的什么呀”这种体味,而不是舍不得分享,由于我不是开发所以我没有这种体味,而且我一般上来就N个if else实现我的需求、帮助我达到工作目标即可,所以不要和老夫:???
五、免责声明(不然公司法务会把我XXOO)
本文章参照《网络安全威胁信息发布管理办法》征求意见稿
第二条 发布网络安全威胁信息,应以维护网络安全、促进网络安全意识提升、交流网络安全防护技术知识为目的,不得危害国家安全和社会公共利益,不得侵犯公民、法人和其他组织的合法权益。
编制。技术分享仅作者本人行为,和任意单位无任意关联。如产生不良影响或产生意外情况,请及时联系freebuf或作者对其进行删除。
技术分享无边界,哪怕我这种毫无技术可言的技术,真正核心的是应急演练的标准化相关文档(毕竟一流公司做标准,我们也想打好基础),以及体系化的应急演练内容,涉及公司机密已进行规避。
*本文原创作者:竹林再遇北极熊,本文属于FreeBuf原创奖励计划,未经许可禁止转载
责任编辑: