本篇写安全技术运营中逻辑思维、水平思维、全局思维、系统性思维以及大数据思维具体的学习与反思。
1.3章节《技术运营必备的6种思维》属于偏思路与思维方法的章节,侧重于内功,主要还是在梳理问题或编写方案的时候会部分用到,方案是针对工作中具体遇到的目标或问题而制定的计划或实施过程,属于工程化范畴。前篇笔记里已经提及了少部分内容,这里继续学习其余的思维方法与感触。
逻辑思维的要点是:为期望的结果制定清晰的路线。在这个过程中需要发挥想象与利用经验然后制定计划,可以通过做思维导图等思维梳理方式梳理能提供的解决方法与方案或想法。
专家系统与新兴解决方法是目前最直接能接触到的思路,传统的方法已经过了多年的实践验证所以属于能立马想到的系统思维方式,也就是以人为主的专家系统,其本质目的是将重复性步骤固定下来交给机器去实现,属于机械工业革命的一次应用,也属于“改进思维”,所不同的是应用的媒介是计算。新兴解决方法是结合时代的技术趋势,例如已经存在几十年历史的机器学习、深度学习与神经网络等人工智能理论,上世界由于计算资源未能满足,因此理论得不到工程落地。将其用于解决安全问题的原因是可以转换成数据科学问题,变得更抽象。举个例子比如计算机图像识别的发展,也可以转换为识别恶意文件的方案,因为等同于属于二分类问题,这里也属于思维方式的转变。
在面对需要解决的困难时,能不能将困难进行抽象化思考然后结合当前社会技术趋势的成果来进行应用呢?这是我感觉可以好好思考的问题,恶意文件的研究结合数据科学的发展也是一个正向的例子,其实也算是创新的一种方式。新入职第二家公司的时候在新人入职培训课上有幸听过公司前辈的《创新思维》分享课,课件制作很精心,老师虽然说是软件工程方向的架构师,但也是个幽默的人,整堂课下来很受益,这也得益于多次的重复培训以及事后改进,所以才能很精彩,里面就有提及创新的思维。现在想来,不过当时因为很少接触工程化的实践,很难理解到解决困难的多种思维方式是如何应用的。
在梳理完所有能提供的方法后,如何能相互关联整合,如果能整体运作起来就能形成系统性方案,属于系统性思维的应用,此时就属于在某类系统建设中所依据的系统性思维,如果要更通俗的理解可以类比于智能工厂的实现方案,每个环节互相关联影响,工厂要解决的是高效且高质的输出产品,那应用系统性思维而产生的安全建设方案也是要高效且高质地发现安全风险挽回或避免价值损失。比如单一的安全防护建设,数据防泄漏方案建设、纵深防御整体架构建设等这类需要全局把控的场景,或者是提升产品某种安全能力而提出的方案。
逻辑思维是一种战术思维。“漏斗模型”和“北斗模型”都是技术运营常用的逻辑思维工具。漏斗模型是让自己感觉很有触动的模型,很清晰地描述了在某种架构下数据的整体流动情况,便于进行针对性处理与查找具体的不足点。书里提及了使用“漏斗模型”分析某高危漏洞的修复情况的案例,微软的操作系统产生的漏洞往往是攻防实战中必不可少的武器库,然而补丁管理与修复问题其实因每个组织的情况而异,我以前一直以为只要有补丁释放,作为安全人员应当测试完后直接应用或者是尽可能打完最新的补丁来提升安全性。后来通过前同事的反馈发现是想错了,业务稳定性比安全更重要,有些内网的机器都还没安装完ms17-010的补丁(永恒之蓝漏洞)。举个例子,Windows服务器打补丁可能会导致重启或蓝屏,而生产环境的某些业务在业务连续性要求下是不能中断的。因此考虑到此类情况,补丁往往是缺失的,在内网横移过程中对于攻击者来说就可以利用一些老漏洞进行利用,老漏洞利用率与价值还是存在的。在进行一层思考,漏斗模型能不能应用在发现在野漏洞利用攻击中?这是最近被卡巴斯基曝光的被勒索病毒团伙在野利用的Windows 0day漏洞,4月补丁日微软已释放补丁进行了修复,我也发现了这个,感觉这种模型带来的启发是可以未来尽量在解决问题中融入更多的思维方式达成目标,值得思考。
“北斗模型”是另一种常用的逻辑思维工具,核心是寻找达成目标的关键路径,这也算是另外一种思考方式,属于“众人拾柴火焰高”的应用,也属于和周围人进行头脑风暴的场景,依据所有能想到的方法与思路然后慢慢验证,将大目标与问题进行一层层分解,然后选择合适的方法执行最终来达成效果。
水平思维的要点是:探寻达成目标的其他解决路径。这个属于要有不同的思路,我觉得总是有新点子爆发的人可真厉害,而自己大部分时间下只能做一些修修补补的事情,水平思维的应用就是一旦发现往往存在比较有创新的想法或效果。水平思维的重点是提取初始方案的要素(可以多个),然后对提炼的要素设计或讨论更多的方案,思考有没有其他选择,这一过程通常会产生很多想法,然后选择合适的方案进行落地。在工作中遇到困难是肯定的,有时候是陷入迷茫中,比如为了一个目标而投入其中时发现没有办法获取到更多思路,此时不断地问自己还有其他方法吗?在不考虑是否能完全实现工程落地的情况下或许能产生不少有意思的新点子。但是要牢记的事情是安全无法做到百分百完美,只能尽力利用已有验证的思路或方法解决特定的困难,随着解决的问题越来越多,最终会趋向于完全解决,但只是不断地趋向,不可能完全解决,正如不存在百分比完美的人一样,安全不可能百分百安全。
书中提及除了应用于个人思考,水平思维在团队讨论中也是一种主流的思辨工具。大家互相讨论往往是能启发新思路的方式,这块最近深有体会,因为大家的技术背景或能力不同,所看到的事物也不同,因此不同背景的人面对相同问题时所想到的方法也不同,甚至于由于陷入方案制定与实施的场景中而思路闭塞,而当局者迷旁观者清,周围人往往能一眼发现方案中的缺陷与改进点。总体来说就是不要闷头做事,需要参与会议或方案讨论,多参与一些部门里有意义的会议。
书里提及了终端安全防御能力弯道超车的案例,这块我真的无法很好的地理解,所了解的案例非常少,没有太多的感知。从统计学角度看世界上弯道超车的案例真的非常少非常少,大部分实践都是陪跑,但往往弯道超车的案例成功后带来的效果非常惊人,甚至会有无法预测的影响,个人觉得一方面需要尊重事物发展规律,另一方面适度的挑战然后寻求机会弯道超车或许是不错的思路与做法,感觉这块类似于投资的场景,有风险也有回报。
全局思维的要点是:从整体到细节,从多个角度出发,全面思考解决方案。这个思维主要是专注细节的方方面面,木桶短板原理是整个安全方向所认同的公理,软件工程或其余工程化方案其实就是全局视角下的应用。一旦某个环节存在问题势必会影响整体效果,因此进行全面的设计与分析比较重要,单一的安全建设方案只能解决单一的问题,无法面对复杂的攻击活动,因此纵深防御或者说更抽象的防御是必备的,此时也是从全局角度考虑如何实现优秀的安全建设方案。将整体路径或维度细节进行梳理,我们会得到一个全局化的实现方案,但是考虑到现实情况和预算,不可能方方面面都能完成,因此需要列出优先级和成本效益,哪些是必须要实现的,哪些是因为成本考虑而暂时放弃的。如果思维停留在刚开始工作的时候总是以技术角度考虑此类事情,那肯定是很难理解全局思维的要点或为何应用的。全局思维是技术Leader或团队核心成员的必备技能。大处着眼,小处着手,说的就是要从全局去思考,要从具体事情一件一件来执行。
大数据思维的要点是:基于“数据相关性”理论,通过引入信息来消除事物的不确定性。这块更贴近于数据科学在安全方向中的应用,总体来说是一个充满挑战的方向,如果一直跟着攻击者的路线或活动追逐始终只能慢于对方,因此利用大数据的优势可以发现攻击者很难去避免的痕迹,因此,将大数据思维应用于安全技术运营,是未来威胁发现和威胁情报实现智能化运营的关键路径。大数据挖掘按照方法进行分类,除了关联分析,还可分为聚类分析、分类分析、回归分析等。这些我目前还没有太多实践,需要一些门槛,只是作为了解而补充学习,最主要是能解决遇到的问题即可。
大数据思维就是承认事物是不确定的,然后采样合适的遥测数据,选择合适的算法,通过相关性计算(关联、聚类、分类、回归)找到事物间的联系,分析过去,感知现在,预测未来。安全大数据和机器学习算法,为安全运营赋予智能,使得自动化实现成为可能。这块主要受限于环境,只有足够多的客户或数据以及必要的资源支持才能发挥大数据思维的优势,大数据最开始会需要资源成本的考量,存储成本以及计算成本与设计方案是否合理等,如果这些暂时不考虑,只考虑这类思维所解决问题带来的启发还是不错的,以往挖掘特征就是利用专家策略来应用于发现威胁,而此时挖掘数据得到结论也是应用大数据思维来发现威胁。
下一篇写安全技术运营中算法思维与威胁分析中利用算法来助力的内容