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

蓝队基础5 -- 安全策略与防护技术

声明:
本文的学习内容来源于B站up主“泷羽sec”视频“蓝队基础之网络七层杀伤链”的公开分享,所有内容仅限于网络安全技术的交流学习,不涉及任何侵犯版权或其他侵权意图。如有任何侵权问题,请联系本人,我将立即删除相关内容。
本文旨在帮助网络安全爱好者提升自身安全技能,并严格遵守国家法律法规。任何人利用本文中的信息从事违法活动,均与本文作者和“泷羽sec”无关。请读者自觉遵纪守法,合理合法使用相关知识。


1 安全管理

1.1 安全管理概念

现代企业的安全管理是一组日常流程,致力于保障业务运营的安全性和连续性。它涵盖身份管理(IAM)、访问控制、特权管理(PAM)、媒体消毒、人事安全、证书管理以及远程访问等方面,成为企业抵御网络攻击、保护信息资产的关键措施。在此基础上,零信任架构及多层控制策略(如SABSA)构成了更加严密的安全防护体系。

1.3安全管理的关键要素

  1. 身份管理(IAM):IAM系统是安全的基石,控制并管理用户在网络中的身份和权限。然而,这也是攻击者主要的攻击目标,企业需要保持IAM系统的持续监控和更新,以防止恶意访问。
  2. 访问控制:确保用户仅能访问与其权限相符的系统资源,并且配置规则和定期审核访问权限是企业安全的核心步骤。
  3. 特权管理(PAM):PAM系统允许用户在需要时申请特权,以执行特定任务,避免用户在日常操作中拥有过多权限,降低权限滥用风险。
  4. 媒体消毒:在数据或硬件达到其生命周期的终点时,需确保对其进行彻底清理和销毁,防止数据泄露。
  5. 人事安全:对员工的背景审查和离职处理等程序,旨在防止内部人员威胁,是广泛接受的企业安全措施之一。
  6. 证书管理:维持企业公钥基础设施(PKI)的完整性,以确保证书的安全性和有效性。
  7. 远程访问安全:后疫情时代,远程访问成为了安全管理的重点,企业需要加强对VPN和远程访问工具的安全控制。

2 零信任网络:现代网络安全理念

2.1 零信任网络理念

零信任的概念源自谷歌在2010年受到的“极光行动”攻击后,旨在假设内部网络可能已遭受破坏,避免对任何用户或设备的默认信任。这种理念后来被NIST(国家标准与技术研究院)确立为安全标准,并逐步应用于政府机构及企业的网络安全体系。

2.2 零信任的四个关键特征:

  • 即时访问(Just-In-Time Access, JITA):用户或服务仅在需要时才获得访问权限,且权限具有时效性。
  • 最小权限(Least Privilege Access, LPA):用户或服务仅获得完成任务所需的最小权限,降低安全风险。
  • 动态访问策略:根据用户身份、设备状态、地理位置和时间等因素动态调整权限,适应变化的安全环境。
  • 微观分割:将网络划分为多个小型隔离区,限制攻击者在网络内的横向移动。

2.3 安全基础设施

  • 数据备份和恢复:数据备份在灾难或攻击事件中提供恢复业务的关键手段。
  • 变更管理:确保系统的变更过程与安全策略相关联,制定变更的详细计划和回滚方案。
  • 物理环境管理:包括物理访问控制、机房监控等,保障数据中心的物理安全。

2.4 事件响应机制

零信任网络中,事件响应是不可或缺的部分。主要包括以下阶段:

  • 准备阶段:通过培训和演练提升应急响应能力。
  • 响应阶段:识别和调查安全事件,并迅速采取措施。
  • 后续阶段:事件后总结经验教训,改进安全流程。

2.5 SABSA多层控制策略

SABSA框架通过多层次控制(如威慑、预防、检测、遏制、通知和恢复)来强化网络安全。

2.6 NIST事件管理指南

NIST 800-61 提供标准化的事件响应方法,分为检测分析、遏制根除、恢复及后续活动阶段。此外,PDCA(计划-执行-检查-行动)循环广泛应用于事件响应中的优化和持续改进。


3 应急响应准备

在构建全面的应急响应体系时,我们需要从多个维度进行准备,包括但不限于风险评估、威胁分析、人员、流程和技术配置,以及持续的控制和成熟度评估。

3.1 风险评估与威胁分析

风险评估:深入了解组织的技术资产、系统和数据,并明确它们对业务的重要性,从而确定关键保护对象。
威胁分析:通过策略、技术和实践来识别潜在的风险点,并据此制定和实施相应的控制措施。

3.2 人员、流程和技术

建立团队:组建专业的应急响应团队,明确各成员的角色和责任。
配备工具:为团队提供必要的应急响应工具和设备,如日志分析工具、网络扫描器等。
制定流程剧本:针对不同类型的安全事件,制定详细的应急响应流程和剧本。
演练:定期进行应急响应演练,以提升团队的实战能力和协同效率。

3.3 控制

响应手册:编制应急响应手册,明确在不同安全事件发生时应执行的标准操作程序。
事前流程规避:通过制定和执行严格的安全政策和流程,尽可能减少安全事件的发生。
事中数据支持:在事件发生时,提供必要的数据支持和分析工具,帮助团队快速定位问题。
事后备份恢复:确保有可靠的数据备份和恢复机制,以便在事件发生后能够迅速恢复业务。

3.4 成熟度评估

CREST成熟度评估工具:利用CREST提供的成熟度评估工具,对组织的应急响应能力进行持续评估和改进。
流程培训+实践技能培训:结合理论培训和实践技能培训,提升团队的整体应急响应水平。

3.5 应急响应手册概述

该手册详细规定了在不同安全事件发生时应执行的标准操作程序,涵盖了扫描、托管威胁、入侵、可用性、信息、欺诈、恶意内容、恶意软件检测、技术诚信和盗窃等多个安全事件类别。每个类别下都包含了具体的应急处理流程和操作规范。

3.6 演练与沟通

演练:通过红蓝对抗等模拟真实攻击场景的方式,锻炼团队的应急响应能力,并验证应急计划的有效性。
沟通:在应急响应过程中,及时、充分、准确的信息沟通至关重要。沟通对象包括内部员工、外部合作伙伴、客户、媒体和政府等。

3.7 事件检测与响应

事件上报:一旦发现安全事件,立即进行上报。
系统监控与检查日志告警:利用系统监控工具和日志分析技术,及时发现并响应安全事件。
确定事件级别:根据事件的严重程度和影响范围,确定事件的级别。
调查事件:对事件进行深入调查,包括溯源取证等。
采取遏制措施:根据调查结果,采取必要的遏制措施,防止事件进一步扩大。

3.8 报告与总结

编写应急响应报告:详细记录事件的经过、处理过程和结果,以及后续的调查计划和改进建议。
经验总结与改进建议:对事件处理过程中的经验和教训进行总结,并提出针对性的改进建议。


4 入侵检测与防御

入侵检测与防御技术在现代网络安全中至关重要,通过实时流量监控、告警生成和流量阻断等手段,帮助网络管理员识别并阻止潜在的网络威胁。本文将介绍如何利用Snort等入侵检测系统(IDS)和入侵防御系统(IPS)进行流量分析、规则配置和In Line部署,以实现高效的网络防护。

4.1 Snort简介:实时流量监控与分析

Snort作为一种知名的开源入侵检测与防御系统,能够对网络流量进行实时监控和分析。通过部署Snort,网络管理员可以实时识别和阻止各种网络威胁,保障网络的安全性和稳定性。

  • 流量分析:利用流量分析技术,识别恶意流量,及时触发告警并采取阻断措施。
  • IDS与IPS:根据需求选择带外监视(IDS)或串联部署(IPS),实现灵活的入侵检测与防御方案。

4.2 安装依赖包与配置Snort

在部署Snort之前,需要安装相关依赖以确保系统的流畅运行。

  1. 安装DAQ数据采集库:为Snort提供必要的数据采集支持。
  2. 安装内存分配器:确保Snort在运行过程中有足够的内存资源。
  3. 安装并配置Snort3:根据实际需求安装Snort3,并进行规则自定义配置。

4.3 Snort规则配置

在网络安全监控中,Snort规则的定义至关重要。规则描述了如何检测和处理网络流量,并触发相应的告警。下面是一些关键字段的详细介绍。

4.3.1 Snort规则配置字段

  • alert:告警规则,匹配流量后生成告警。例如:alert icmp any any -> $HOME_NET any (msg:"Test Ping Event"; ...)
  • icmp/tcp/udp:指定要监控的协议类型(如ICMP、TCP、UDP)。例如:alert icmp ... 或 alert tcp ...
  • any:用于表示任意IP地址或端口。例如:any any(任意源IP和端口)
  • < >(方向运算符):指定流量的方向,如->表示从源到目标。例如:-> 表示从源到目标的流量。
  • $HOME_NET:Snort配置中定义的本地网络。例如:$HOME_NET 替代具体的IP范围。
  • msg:告警的描述性名称。例如:msg"Test Ping Event"
  • sid:规则的唯一签名ID。例如:sid:1000001
  • rev:规则的版本号。例如:rev:1
  • classtype:告警的分类类型。例如:classtype:icmp-event
  • content:用于在流量中查找特定内容。例如:content:"Login incorrect"

4.3.2 本地账号与Snort条件子句

Snort支持通过条件子句监控本地账号活动,例如登录失败尝试。当条件满足时,将触发告警或执行相应操作。

示例:检查失败的Telnet登录尝试
alert tcp $HOME_NET 23 -> any any (msg:"Failed login attempt"; content:"Login incorrect"; sid:1000002; rev:1; classtype:attempted-user;)
  • alert tcp:TCP协议告警。
  • $HOME_NET 23:本地网络,端口23(Telnet)。
  • -> any any:流量目标为任意IP和端口。
  • msg:告警名称为“Failed login attempt”。
  • content:流量中需包含“Login incorrect”字符串。
  • sid:规则的唯一ID。
  • rev:规则版本号。
  • classtype:告警分类。

4.4 外部规则集

Snort支持使用外部规则集来丰富检测规则,例如:

  • Proofpoint:提供多种网络安全规则。
  • Emerging Threats:覆盖新兴威胁的规则集,帮助管理员应对最新的攻击。

4.5 In Line部署与阻断操作

在In Line部署模式下,Snort直接处理网络流量,实现实时监控和阻断。
阻断操作:

  • D drop:丢弃符合特定条件的流量。
  • sdrop:类似于D drop。
  • reject:拒绝流量并返回拒绝响应给源端。

4.6 总结

通过Snort的规则配置、外部规则集的支持以及In Line部署和阻断操作,管理员能够实现全面的网络监控与防护。深入理解Snort的配置字段和条件子句,可以帮助管理员根据网络需求灵活调整规则,确保网络的安全性和稳定性。

相关文章:

蓝队基础5 -- 安全策略与防护技术

声明&#xff1a; 本文的学习内容来源于B站up主“泷羽sec”视频“蓝队基础之网络七层杀伤链”的公开分享&#xff0c;所有内容仅限于网络安全技术的交流学习&#xff0c;不涉及任何侵犯版权或其他侵权意图。如有任何侵权问题&#xff0c;请联系本人&#xff0c;我将立即删除相关…...

【Bluedroid】A2dp初始化流程源码分析

一、概述 Bluedroid是Android系统中用于蓝牙通信的底层协议栈,它支持多种蓝牙协议,包括A2DP(Advanced Audio Distribution Profile,高级音频分发协议)。A2DP主要用于通过蓝牙传输高质量音频,如立体声音乐。以下是Bluedroid中A2DP初始化的基本流程。 1.1. 启动Bluetooth…...

Redis简介、数据结构、高性能读写、持久化机制、分布式架构

Redis 是一个开源的、基于内存的数据结构存储系统&#xff0c;它可以用作数据库、缓存和消息中间件等&#xff0c;以下是对 Redis 的详细介绍&#xff1a; 数据结构丰富 Redis 支持多种数据结构&#xff0c;如字符串&#xff08;String&#xff09;、哈希&#xff08;Hash&am…...

鸿蒙自定义UI组件导出使用

上期讲解了在Entry入口写了一个系统的下拉列表组件&#xff0c;如果我们想要封装一个可供复用的组件供团队其他人使用&#xff0c;那么需要掌握一下自定义组件的写法&#xff1a; 1、自定义可导入组件 - export 声明模块 如果要定义一个在外部可使用的组件 , 需要再定义组件…...

python os.path.join 详解

os.path.join 是 Python 中 os 模块提供的一个函数&#xff0c;用于智能地连接一个或多个路径组件。它可以根据操作系统的不同&#xff0c;自动选择合适的路径分隔符&#xff08;如 Windows 上的反斜杠 \ 或 Unix/Linux 上的正斜杠 /&#xff09;&#xff0c;从而生成正确的路径…...

JavaScript高效处理CSV文件的操作指南

前言 CSV&#xff08;Comma-Separated Values&#xff09;文件是一种广泛应用于数据存储和交换的格式&#xff0c;尤其在数据分析、数据迁移和系统集成等场景中有着重要作用。作为高级计算机工程师&#xff0c;本文将通过专业且通俗易懂的方式&#xff0c;介绍如何利用JavaScr…...

Go开发指南- Goroutine

目录&#xff1a; (1)Go开发指南-Hello World (2)Go开发指南-Gin与Web开发 (3)Go开发指南-Goroutine Goroutine 在java中我们要实现并发编程的时候&#xff0c;通常要自己维护一个线程池&#xff0c;并且需要去包装任务、调度任务和维护上下文切换。这个过程需要消耗大量的精…...

Dubbo 3.x源码(24)—Dubbo服务引用源码(7)接口级服务发现订阅refreshInterfaceInvoker

基于Dubbo 3.1&#xff0c;详细介绍了Dubbo服务的发布与引用的源码。 此前我们学习了Dubbo3.1版本的MigrationRuleHandler这个处理器&#xff0c;它用于通过动态更改规则来控制迁移行为。MigrationRuleListener的onrefer方法是Dubbo2.x 接口级服务发现与Dubbo3.x应用级服务发现…...

高级java每日一道面试题-2024年11月04日-Redis篇-Redis如何做内存优化?

如果有遗漏,评论区告诉我进行补充 面试官: Redis如何做内存优化? 我回答: 在Java高级面试中&#xff0c;关于Redis如何做内存优化的问题&#xff0c;可以从以下几个方面进行详细解答&#xff1a; 一、Redis内存优化概述 Redis内存优化主要是指通过一系列策略和技术&#…...

数据结构 -二叉搜索树

一.什么是二叉搜索树 树插入删除方便比线性数组 二.二叉搜索树的查找操作 尾递归可以用循环递归 三.二叉树的插入操作 35要挂在33上面必须记住33的位置 解决方法&#xff0c;要求递归函数返回一个 结点插到33的右子树 四.二叉搜索树的删除 要是删除的是叶子节点之间删除 只有一…...

Ubuntu配置阿里云docker apt源

一、配置阿里云docker apt源 Ubuntu 放弃了apt-key的GPG 密钥的管理方法&#xff0c;用户可以直接添加gpg密钥到/etc/apt/trusted.gpg.d/目录下。 同时添加删除apt source 直接在/etc/apt/sources.list.d/目录下操作即可。 1、删除旧的镜像源 #旧版操作方法 apt-key list # …...

【React】状态管理之Redux

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 状态管理之Redux引言1. Redux 的核心概念1.1 单一数据源&#xff08;Single Sou…...

3195. 有趣的数-13年12月CCF计算机软件能力认证(组合数)

题目 思路 统计方案的时候先去分类&#xff0c;先放01&#xff0c;然后在考虑23对于第k类&#xff0c; 对于01的选择 对于所有的分类&#xff1a;本题我觉得要考虑的几个点就是&#xff1a;状态分类得到数学公式组合数的计算防越界处理 代码 计算组合数的代码模板&#xff1…...

基于 Python 的 Bilibili 评论分析与可视化

一、项目概述 本项目利用 Python 对 Bilibili &#xff08;哔哩哔哩&#xff09;平台上的视频评论数据进行爬取、清洗和分析&#xff0c;并通过可视化展示数据的主要特征。我们通过以下几个步骤实现了这一过程&#xff1a; 数据爬取&#xff1a;使用 Bilibili 提供的 API 获取…...

大语言模型理论基础

文章目录 前言大语言模型必需知识概述大语言模型目标模型上下文神经网络的神经元常见激活函数SigmoidTanhRelusoftmax 通用近似定理多层感知机&#xff08;MLP&#xff09;拟合最后 前言 你好&#xff0c;我是醉墨居士&#xff0c;我们接下来对大语言模型一探究竟&#xff0c;…...

【 LLM论文日更|检索增强:大型语言模型是强大的零样本检索器 】

论文&#xff1a;https://aclanthology.org/2024.findings-acl.943.pdf代码&#xff1a;GitHub - taoshen58/LameR机构&#xff1a;悉尼科技大学 & 微软 & 阿姆斯特丹大学 & 马里兰大学领域&#xff1a;retrieval & llm发表&#xff1a;ACL2024 研究背景 研究…...

【基于轻量型架构的WEB开发】课程 作业3 Spring框架

一. 单选题&#xff08;共12题&#xff0c;48分&#xff09; 1. (单选题)以下有关Spring框架优点的说法不正确的是&#xff08; &#xff09;。 A. Spring就大大降低了组件之间的耦合性。 B. Spring是一种侵入式框架 C. 在Spring中&#xff0c;可以直接通过Spring配置文件管理…...

14.最长公共前缀-力扣(LeetCode)

题目&#xff1a; 解题思路&#xff1a; 解决本题的关键点是确定扫描的方式&#xff0c;大体上有两种方式&#xff1a;横向扫描和纵向扫描。 1、横向扫描&#xff1a;首先比较第一个字符串和第二个字符串&#xff0c;记录二者的公共前缀&#xff0c;然后用当前公共前缀与下一个…...

客户案例|智能进化:通过大模型重塑企业智能客服体验

01 概 述 随着人工智能技术的快速发展&#xff0c;客户对服务体验的期待和需求不断升级。在此背景下&#xff0c;大模型技术的崛起&#xff0c;为智能客服领域带来了创造性的变革。 在上篇文章《在后LLM时代&#xff0c;关于新一代智能体的思考》中有提到&#xff0c;智能客服…...

Flink Job更新和恢复

Checkpoints 的主要目的是为意外失败的作业提供恢复机制。 Savepoints的设计更侧重于可移植性和操作灵活性&#xff0c;尤其是在 job 变更方面。Savepoint 的用例是针对计划中的、手动的运维。例如&#xff0c;可能是更新你的 Flink 版本&#xff0c;更改你的作业图等等。 fli…...

读多写少业务中,MySQL如何优化数据查询方案?

小熊学Java​站点:https://www.javaxiaobear.cn 编程资料合集:https://pqgmzk7qbdv.feishu.cn/base/QXq2bY5OQaZiDksJfZMc30w5nNb?from=from_copylink 看一看当面试官提及“在读多写少的网络环境下,MySQL 如何优化数据查询方案”时,你要从哪些角度出发回答问题??? 案例…...

Bugku CTF_Web——点login咋没反应

Bugku CTF_Web——点login咋没反应 进入靶场 随便输个试试 看来确实点login没反应 抓包看看 也没有什么信息 看了下源码 给了点提示 一个admin.css try ?12713传参试试 拿到一个php代码 <?php error_reporting(0); $KEYctf.bugku.com; include_once("flag.php&q…...

attention 注意力机制 学习笔记-GPT2

注意力机制 这可能是比较核心的地方了。 gpt2 是一个decoder-only模型&#xff0c;也就是仅仅使用decoder层而没有encoder层。 decoder层中使用了masked-attention 来进行注意力计算。在看代码之前&#xff0c;先了解attention-forward的相关背景知识。 在普通的self-atten…...

什么是HTTP,什么是HTTPS?HTTP和HTTPS都有哪些区别?

什么是 HTTP&#xff1f; HTTP&#xff08;Hypertext Transfer Protocol&#xff0c;超文本传输协议&#xff09;是一种应用层协议&#xff0c;用于在互联网上进行数据通信。它定义了客户端&#xff08;通常是浏览器&#xff09;和服务器之间的请求和响应格式。HTTP 是无状态的…...

SkyWalking-安装

SkyWalking-简单介绍 是一个开源的分布式追踪系统&#xff0c;用于检测、诊断和优化分布式系统的功能。 支持 ElasticSearch、H2、MySQL、PostgreSql 等数据库 基于 ElasticSearch 的情况 ElasticSearch&#xff08;ES&#xff09; 安装 1、下载并解压 https://www.elastic…...

RabbitMQ运维

1. 单机多节点 1.1 搭建RabbitMQ ①安装RabbitMQ 略 ②确认RabbitMQ运⾏没问题 #查看RabbitMQ状态 rabbitmqctl status 节点名称: 端口号: 25672:Erlang分布式节点通信的默认端⼝, Erlang是RabbitMQ的底层通信协议.15672: Web管理界⾯的默认端⼝, 通过这个端⼝可以访问R…...

Go语言并发精髓:深入理解和运用go语句

Go语言并发精髓:深入理解和运用go语句 在Go语言的世界里,go语句是实现并发的核心,它简洁而强大,允许程序以前所未有的方式运行多个任务。本文将深入探讨go语句及其执行规则,揭示Go语言并发编程的内在机制,并提供实际案例帮助读者掌握其用法。 1. go语句的基本概念(Wha…...

基于STM32的智能家居系统:MQTT、AT指令、TCP\HTTP、IIC技术

一、项目概述 随着智能家居技术的不断发展&#xff0c;越来越多的家庭开始使用智能设备来提升生活质量和居住安全性。智能家居系统不仅提供了便利的生活方式&#xff0c;还能有效地监测家庭环境&#xff0c;保障家庭安全。本项目以设计一种基于STM32单片机的智能家居系统为目标…...

分糖果(相等分配)

题目&#xff1a;有n种不同口味的糖果&#xff0c;第i种糖果的数量为a[i]&#xff0c;现在需要把糖果分给m个人。分给每个人糖果的数量必须是相等的&#xff0c;并且每个人只能选择一种糖果。也就是说&#xff0c;可以把一种糖果分给多个人&#xff0c;但是一个人的糖果不能有多…...

docker构建jdk11

# 建立一个新的镜像文件&#xff0c;配置模板&#xff1a;新建立的镜像是以centos为基础模板 # 因为jdk必须运行在操作系统之上 FROM centos:7.9.2009# 作者名 MAINTAINER yuanhang# 创建一个新目录来存储jdk文件 RUN mkdir /usr/local/java#将jdk压缩文件复制到镜像中&#…...