当前位置: 首页 > news >正文

网络安全攻防演练中的常见计策

大家觉得有意义记得关注和点赞!!!

引言

        在网络安全攻防演练里面,用于分析攻击者动机和行为的,国外的有基于攻击链分析的模型(如Cyber Kill Chain和ATT&CK)和基于威胁行为的模型(如Diamond Model of Intrusion Analysis和Pyramid of Pain)等。也有各类PDR(Protect,防护、Detect,检测、Respond,响应)变种。

        我将常见的攻防使用通俗易懂的老祖宗智慧之三十六计进行匹配,让大家更容易理解,并给出针对性的防守方法。

        当然在实际攻防对抗中远不止我所描述的这些,比如多种大模型的检测/蜜罐/沙箱、/IDS/IPS/WAF/DDOS防护/威胁情报/主动防御等工具的组合使用.

攻防两大阵营分类

主要的攻击策略
处于优势时所用之计处于劣势时所用之计
胜战计敌战计攻战计混战计并战计败战计

瞒天过海

围魏救赵
借刀杀人

以逸待劳
趁火打劫

声东击西

无中生有

暗度陈仓
隔岸观火

笑里藏刀
李代桃僵

顺手牵羊

打草惊蛇

借尸还魂
调虎离山

欲擒故纵
抛砖引玉

擒贼擒王

釜底抽薪

混水摸鱼
金蝉脱壳

关门捉贼
远交近攻

假道伐毓

偷梁换柱

指桑骂槐
假痴不癫

上屋抽梯
树上开花

反客为主

美人计

空城计
反间计

苦肉计
连环计

走为上

左边可以认为是攻击队会采用的一些方法,右边是防守方会被迫采取的做法。

一、攻击队计谋

瞒天过海

在攻防演练的时候,我们一定会发现,各类扫描增多,各类设备告警也变多,这是正常的。

因为攻击队为了得分,会对你进行“Reconnaissance”。这其中,有可能有些就是有意的行为。

有些攻击队,为了掩盖他们的攻击行为,会购买或自行对你的系统进行扫描,让你淹没在海量的告警里,而忽略了他们真正的攻击行为。

对付这类行为,我们在攻防演练之前,就应当对告警进行清零。

清零看似很难,其实一点都不简单。我们只能做到一定程度的降噪。

前期,就要对对正在扫描你的所有IP有一个极为清晰的认识,分清哪些IP大概是什么,在攻防演练期间,再结合历史记录,识别到是新增的还是已有的扫描类IP。

在攻防演练期间,就只能寄希望于各类检测设备,争取发现一些蛛丝马迹。

借刀杀人

由于网络攻击的特殊性,攻击队我们最开始能看到的,就是一串IP。

在攻防演练的时候,为了演练比较可控,组织者会分配给攻击队一些IP资源,并且要求只从这些IP发起攻击。

循规蹈矩的人,不会成为攻击者,或者是,很难成为很强的攻击者。

所以攻击队,他很大概率不会直接使用这些IP导致“出师未捷身先死”。在外网,他会先“借用”自己的其他IP,或者团队的资源,先对目标进行“Reconnaissance”,等探测得差不多,觉得有把握拿下了,才会真正使用那些IP攻击——成功——截图——提交报告。

在内网里,他会控制一些中了木马的客户端或者服务器发起攻击,导致你的溯源,都是溯源到错误的IP上。

笑里藏刀

在攻防演练里,钓鱼是最没有技术含量但是性价比最高的。很多攻击队正面打不进去,就会投机取巧开始钓鱼了。

钓鱼,一般会给你一些甜头,说你中奖了,或者装成寻求帮助的弱者,含着笑,其实最终是要获取你的信息,甚至全控你。

我们会说为了防止被钓鱼,会开展网络安全意识培训,开展反钓鱼邮件演练。但是其实这个意义不大。

不管你做多少次反钓鱼邮件演练,在攻防演练中,一定会有人会中招,一旦中招,一般都是被全控,攻击队立刻进入单位内网。

反钓鱼邮件演练就像考试,题目出得简单一点,很多人都可以过,出难点,就很多人会中招了。

而且很多在特定的场景下,再见多识广、谨小慎微的人,都会中招。

所以,对于钓鱼的防守,就是不要防钓鱼,要假定失陷。《BeyondCorp和高校的落地》。任何其他的防守策略,都一定要以“攻击队一定会进入内网”为底线思维。

顺手牵羊

有些攻击队在攻击时,会不经意“顺手牵羊”到其他不是原始目标的权限、数据,这种一般发生在防守方异常弱的情况下。

进入这种防守单位,仿佛进入了漏洞的金库,到处都是得分点。

为了防止这种情况发生,常规的安全套餐需要安排做一遍,特别是“两高一弱”,需要——

1 让自己人扫。在攻防演练之前,请一些攻击队做一些扫描并且进行整改。

2 不让攻击队扫。这可以通过蜜罐或流量来发现攻击队的扫描行为,并第一时间对发起扫描的IP进行隔离。

借尸还魂

有时候你的一台设备被全控,经过你和伙伴的应急响应,找到并删除了木马,清理了环境,高高兴兴又上线了,但是后面发现,攻击队还是从这台设备“借尸还魂”。

当然一个可能是,你技术能力不足,或者你漏洞没有修复,或者你没有举一反三,《网络安全里的苍蝇,蟑螂和白蚁》,或者你只是删除了上传的木马,被人家再次利用。

还有一个可能是,攻击队可能上传了十几个木马,故意留下那个最简单的,让你识别并且止步于此。

一台设备被全控,他上面的所有信息变得不再可信,即使日志也可以被伪造。

就像你在电影里看到的,被俘虏过的人一样。即使全身而退,不管他自己说有没有talk,你一定要以他所知道的所有信息泄露为前提进行应对。

为了防止这种情况,对于被攻击或被全控过的设备,我们一定要重新安装操作系统,重新部署应用,程序代码重新下载,数据库导出导入,上载文件全查病毒,比对备份文件。

擒贼擒王

“王”就是集权系统。比如云平台、集中式数据库平台、统一身份认证平台、堡垒机、源代码版本库管理系统、运维平台等等。

虽然擒王难度很高,不过带来的收益也是巨大的。有些攻击队不屑于帮你找前面“顺手牵羊”的问题,而是会对着集权系统发起挑战。

对于这种的防护,最重要的是要梳理好这些“圣杯”资产,对这些系统加强防护,分级管理。

很多时候,可能是你所不知道的某个二级单位的这类系统被攻陷。

金蝉脱壳

攻击队攻击完成后,会删除日志,清理痕迹。

对于这类防护,需要做好日志保留,日志应当传输到远程。

但是这个传输动作可能被暂停,或者传输的内容被恶意篡改,所以不可篡改的流量留存也是非常重要的。

偷梁换柱

有些攻击队不寻求直接破坏系统,而是通过偷梁换柱等手段,替换一些组件,在系统内隐藏起来。这个有时候比较难防,恶意行为和病毒很类似,发作的那天,就是它死亡的那天,潜伏期3天,7天,15天,越长,隐蔽性越高,越难以防范。

走为上

如果攻击队发现当前目标防守过于严密,则会采取“走为上”的策略,转头去攻击其他单位其他较弱的目标。在有限的时间里,肯定是挑软柿子捏,吃饱了没事干,才会啃硬骨头。所以,有时候,只要你不是最弱的那个单位,在攻防演练时,也会取得不错的成绩。所以应对这个策略,在防守时,就要积极地去防守,去封IP,搞动作,让攻击队意识到,这个目标,是有防守的。

二、防守方计谋

反客为主

        如同我在 《业务系统不止要有安全中心,还要有反制中心》 里谈到的,在攻防演练或者日常检测预警中,不要一直把自己处于被动挨打的状态。反制应当在规则下,合法地进行。反制可以利用蜜罐类设备,去控制攻击者的设备。也可以获得攻击者IP后,尝试对IP进行嗅探。现在的攻击者,有组织,有依托公司的各类知识库,有自己的平台、工具、武器库形成战斗群。攻击队会在云平台搭建自己的各类平台,购买IP池用于伪装。但只要是平台,也可能会有漏洞。不过反制听起来热血,意义不大,有这个时间和精力,做点别的更好。

釜底抽薪

防守队对攻击队最“釜底抽薪”的动作只能是封IP了。封IP有时候意义不会很大,除非你封到组织者给的IP地址,否则攻击队很快就会更换IP地址。

欲擒故纵

正如“釜底抽薪”提到的,封IP有时候意义不大,你封了IP,攻击队换了另外一个IP,《网络安全里的苍蝇,蟑螂和白蚁》,你还需要再次去识别到新IP,害人害己。

所以,有时候,如果你识别到攻击队的IP,你可以不封他,只是观察他的攻击行为,如果他只是在探测,尝试,可以不用有什么动作,避免“打草惊蛇”,就当是免费的渗透测试。

一旦识别到风险,立刻“釜底抽薪”,封堵漏洞,反向注入、反向攻击、小偷偷小偷等。

但是这种情况,千万不要玩脱了,只有你检测设备足够的情况下,才能执行这个策略。

关门捉贼

一键断网,把问题设备从互联网隔离开来。当然,很多时候可能抓不到贼,但是可以抓到贼留下的各类恶意木马、攻击手法、来源IP等等。

无中生有

这个主要是涉及到蜜罐的使用,“无中生有”出很多资产出来。

我们前面“顺手牵羊”里做加固,做暴露面收缩,都是在做减法,这里是开始做加法。

蜜罐的部署在于密集,可参考我以前写的:《攻防演练中的蜜罐,不在于他有多蜜,而在于他有多密》。

蜜罐默认为所有的访问信息都不合法,所有经过蜜罐访问的记录都有清晰的记录,这样可以记录攻击者的入侵过程和思路,后续追踪和反向溯源等攻击留下痕迹。

美人计

通过网站或者链接有美女、或者诱导你去访问指定的网站、点击指定的反向给你的主机注入病毒,导致你的电脑成为肉鸡、木马、勒索病毒等病毒的传播站,平时没啥作用一旦远程激活之后很快就美女杀手的复制机构。

相关文章:

网络安全攻防演练中的常见计策

大家觉得有意义记得关注和点赞!!! 引言 在网络安全攻防演练里面,用于分析攻击者动机和行为的,国外的有基于攻击链分析的模型(如Cyber Kill Chain和ATT&CK)和基于威胁行为的模型&#xff08…...

SD卡模块布局布线设计

1、SD/TF/SIM卡的定义 2、SD/TF/SIM卡模块引脚定义以及图示 3、SD/TF/SIM卡接口布局和布线 4、小结 1、BGA两线交叉时,可以在源头将两线互相短路连接,然后再输出口删除一小节线,然后CHRLX/V,这样就可以换两条线的网络&#xff0c…...

Flask-----SQLAlchemy教程

存session session[username] username # 存储数据到 session 取session username session.get(username) render_template return render_template(index.html, usernameAlice),渲染一个包含 username 变量的模板。 redirect return redirect(url_for(profil…...

STM32 高级 物联网通信之CAN通讯

目录 CAN通讯介绍 物理层 协议层 CAN的帧(报文)种类 1 数据帧(发送单元->接受单元) 2 远程帧(接受单元->发送单元) 3 错误帧(发送方发送数据错误会发送的状态帧) 4 过载帧(接收方放不下会发送到的状态帧) 5 帧间隔(状态) 数据帧介绍 远程帧介绍 C…...

“乡村探索者”:村旅游网站的移动应用开发

3.1 可行性分析 从三个不同的角度来分析,确保开发成功的前提是有可行性分析,只有进行提前分析,符合程序开发流程才不至于开发过程的中断。 3.1.1 技术可行性 在技术实现层次,分析了好几种技术实现方法,并且都有对应的成…...

前端案例---自定义鼠标右键菜单

之前右击出现默认的选项菜单&#xff0c;使用evt.preventDefault()把默认的去掉&#xff0c;然后自定义右击的样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible"…...

浅谈归一化

在深度学习中&#xff0c;对网络层进行归一化&#xff08;Normalization&#xff0c;简称Norm&#xff09;是一个重要的技巧。常见的归一化方法包括批归一化&#xff08;Batch Normalization&#xff09;、层归一化&#xff08;Layer Normalization&#xff09;、实例归一化&am…...

lodash常用函数

文章目录 一、数组1、chunk分组2、difference、differenceBy、differenceWith3、findIndex4、intersection、intersectionBy、intersectionWith5、union、unionBy、unionWith 二、对象1、pick、omit 2、get、set三、数学1、sum、sumBy2、range 四、工具函数1、isEqual、isEmpty…...

触控算法总结

一、触控湿手指算法的具体实现原理涉及多个方面的技术和方法,主要包括以下几个关键点 1.电容变化检测 电容式触摸屏通过检测电容变化来确定触摸位置。当手指接触屏幕时,会引起电容的变化。然而,当手指湿润时,水分会影响电容值,导致触摸屏误判成无法正确识别触控点 2.噪声过滤: …...

齐次矩阵包含平移和旋转

第一个矩阵旋转矩阵 A [ R 1 0 0 1 ] A\left[\begin{matrix}R_{1} & 0\\0 & 1\end{matrix}\right] A[R1​0​01​] 第一个平移矩阵 B [ 1 T 1 0 1 ] B\left[\begin{matrix}1 & T_{1}\\0 & 1\end{matrix}\right] B[10​T1​1​] C [ R 2 0 0 1 ] C\left[\be…...

Move AI技术浅析(四):运动跟踪与估计

一、运动跟踪与估计模块概述 运动跟踪与估计 是 Move AI 的核心模块之一&#xff0c;其主要任务是从提取到的关键点特征中&#xff0c;分析和理解运动的动态特性&#xff0c;包括运动轨迹、速度、加速度、方向等。该模块通常包括 时间序列分析 和 运动估计 两个子模块。 时间…...

NCR+可变电荷块3——NCB/cell绘图1

文献method参考&#xff1a; 蛋白质序列数据从uniprot中获取 https://www.uniprot.org/uniprotkb/P46013/entry https://www.uniprot.org/uniprotkb/P06748/entry、 1&#xff0c;电荷分布计算&#xff1a; Charge distribution was calculated as the sum of the charges …...

数据仓库是什么?数据仓库简介

数据仓库&#xff08;Data Warehouse&#xff09;是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合&#xff0c;用于支持企业的管理决策。以下是对数据仓库的详细解释&#xff1a; 一、定义与特性 定义&#xff1a;数据仓库是构建在组织的现有数据基础上&#x…...

AI的进阶之路:从机器学习到深度学习的演变(二)

AI的进阶之路&#xff1a;从机器学习到深度学习的演变&#xff08;一&#xff09; 三、机器学习&#xff08;ML&#xff09;&#xff1a;AI的核心驱动力 3.1 机器学习的核心原理 机器学习&#xff08;Machine Learning, ML&#xff09;突破了传统编程的局限&#xff0c;它不再…...

C++中属性(Attributes)

属性&#xff08;Attributes&#xff09;在 C 中的完整讲解 在 C 中&#xff0c;属性&#xff08;Attributes&#xff09; 是一种编译时机制&#xff0c;用于附加元数据到函数、变量、类型等元素上&#xff0c;以指导编译器如何优化、检查、警告或者改变编译行为。通过属性&am…...

Go语言中的defer,panic,recover 与错误处理

目录 前言 三个关键字 defer语句 panic语句 recover函数 defer、panic、recover组成的错误处理 总结 前言 在其他编程语言中&#xff0c;如Java&#xff0c;宕机往往以异常的形式存在。底层抛出异常&#xff0c;上层逻辑通过try...catch...fanally机制捕获异常并处理&am…...

(C语言)力扣 904.水果成篮

写在所有的前面&#xff1a; 本文采用C语言实现代码 目录 写在所有的前面&#xff1a;题目说明题目&#xff1a;力扣 904.水果成篮题目出处题目描述Description输入Input输出Output样例Sample限制Hint 解答说明方案解题思路一般情况特殊情况 代码实现其他解释 题目说明 题目…...

2024 年12月英语六级CET6听力原文(Lecture部分)

2024 年12月英语六级CET6听力原文(Long Conersation和Passage) 1 牛津大学关于普遍道德准则的研究及相关观点与建议 译文 2 食物颜色对味觉体验及大脑预期的影响 译文 3 财务资源对意义与幸福之间关系的影响研究 译文...

CentOS下,离线安装vscode的步骤;

前置条件&#xff1a; 1.CentOS7; 步骤&#xff1a; 1.下载vscode指定版本&#xff0c;例如&#xff1b; 例如 code-1.83.1-1696982959.el7.x86_64.rpm 2.使用下面命令&#xff1a; sudo rpm -ivh code-1.83.1-1696982959.el7.x86_64.rpm 其他&#xff1a; 卸载vscode的命…...

ubuntu停止.netcore正在运行程序的方法

在Ubuntu系统中停止正在运行的.NET Core程序&#xff0c;你可以使用以下几种方法&#xff1a; 使用kill命令&#xff1a; 如果你知道.NET Core程序的进程ID&#xff08;PID&#xff09;&#xff0c;你可以直接使用kill命令来停止它。首先&#xff0c;使用ps命令配合grep来查找.…...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

基于大模型的 UI 自动化系统

基于大模型的 UI 自动化系统 下面是一个完整的 Python 系统,利用大模型实现智能 UI 自动化,结合计算机视觉和自然语言处理技术,实现"看屏操作"的能力。 系统架构设计 #mermaid-svg-2gn2GRvh5WCP2ktF {font-family:"trebuchet ms",verdana,arial,sans-…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

质量体系的重要

质量体系是为确保产品、服务或过程质量满足规定要求&#xff0c;由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面&#xff1a; &#x1f3db;️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限&#xff0c;形成层级清晰的管理网络&#xf…...

Keil 中设置 STM32 Flash 和 RAM 地址详解

文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...

Qt Http Server模块功能及架构

Qt Http Server 是 Qt 6.0 中引入的一个新模块&#xff0c;它提供了一个轻量级的 HTTP 服务器实现&#xff0c;主要用于构建基于 HTTP 的应用程序和服务。 功能介绍&#xff1a; 主要功能 HTTP服务器功能&#xff1a; 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)

参考官方文档&#xff1a;https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java&#xff08;供 Kotlin 使用&#xff09; 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...

HDFS分布式存储 zookeeper

hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架&#xff0c;允许使用简单的变成模型跨计算机对大型集群进行分布式处理&#xff08;1.海量的数据存储 2.海量数据的计算&#xff09;Hadoop核心组件 hdfs&#xff08;分布式文件存储系统&#xff09;&a…...