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

防御课第一次作业第一天笔记整理

网络安全概述

  • 网络安全(Cyber Security)是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断
  •  中国网络安全市场近年来只增不减
  • 随着数字化时代的普及和更新,相应的威胁也不断升级,因此网络安全就显得尤为重要

网络安全背景

网络空间安全---Cyberspace

2003年美国提出网络空间的概念---一个由信息基础设施组成的互相依赖的网络。 我国官方文件定义:网络空间为继海,陆,空,天以外的第五大人类活动领域

通信保密阶段---计算机安全阶段---信息系统安全---网络空间安全---APT攻击---高级持续性威胁

网络安全威胁:


 

通常情况下,交换机的每个端口只会连接一台主机,因而在MAC地址表中每个端口只会对应1个MAC地址。但由于交换机还要用于级联其它的交换机,因而在相应的级联端口上就会对应多个MAC地址,从而在地址表产生大量记录。

由于交换机的缓存有限,因此它所能够记忆的MAC地址数量也是有限的,所以交换机不会永久地记住所有的端口与MAC地址的对应关系。在端口/MAC地址映射表中每一项记录都被设定了一个自动老化时间,若某MAC地址在一定时间内(默认为300秒)不再出现,那么交换机将自动把该MAC地址从地址表中清除。当下一次该MAC地址重新出现时,将会被当作新地址处理,从而使交换机可以维护一个精确、有用的MAC地址表。交换机档次越低,交换机的缓存就越小,它能记住的MAC地址数也就越少。

MAC泛洪攻击就是由攻击者通过攻击工具产生大量的数据帧,这些数据帧中的源MAC地址都是伪造的,并且不断变化。因而交换机将在攻击主机所连接的端口上产生大量的MAC地址表条目,从而在短时间内将交换机的MAC地址表填满,直到再无法接收新的条目。

当交换机的MAC表被填满后,交换机以广播方式处理通过交换机的报文,这时攻击者可以利用各种嗅探攻击获取网络信息。更为严重的是,这种攻击也会导致所有邻接的交换机MAC表被填满,流量以泛洪方式发送到所有交换机的所有含有此VLAN的接口,从而造成交换机负载过大、网络缓慢和丢包甚至瘫痪。

那么如何防止呢?

Port-Security(端口安全)

        ​•   端口上最大可以通过的MAC地址数量

        •   端口上学习或通过哪些MAC地址

        •   对于超过规定数量的MAC处理进行违背处理

二层的缺陷:

缺乏认证,不知道源地址是否合法

采用广播,任何人都可以拦截

不得不处理,这是硬伤

ARP实现机制只考虑业务的正常交互,对非正常业务交互或恶意行为不做任何验证。比如当主机收到ARP响应包后,它并不会去验证自己是否发送过这个ARP请求,而是直接将应答包里的MAC地址与IP对应的关系替换掉原有的ARP缓存表。

在网络监听过程中,攻击者抢先合法主机B应答主机A发起的ARP请求;主机A被误导建立一个错误的映射并保存一段时间,在这段时间内,主机A发送给主机B的信息被误导致攻击者。如果攻击者持续抢先应答ARP请求,数据流就可能被一直误导下去。如果攻击者模拟网络出口路由器发动ARP攻击,内部网络的所有出口信息都将被接管。如果攻击者将出口路由器IP和一个不存在的MAC地址进行映射,即可以导致发送方受到拒绝服务的攻击。

ARP欺骗不仅仅可以通过ARP请求来实现,通过ARP响应也可以实现。

  • 使用静态ARP缓存
  • 使用三层交换设备
  • IP 与MAC地址绑定

ARP防御工具

防范:

DAI:Dynamic ARP Inspenction动态ARP检查,检查主动式和非主动式ARP,确定是否来自真正的ARP所有者

DHCP Snooping:监听绑定表,IP、MAC、与特定的交换机端口相关联

静态绑定关键主机的IP地址与MAC地址映射关系

网关/关键服务器

"arp -s IP地址 MAC地址 类型"

使用VLAN虚拟子网细分网络拓扑

加密传输数据以降低ARP欺骗攻击的危害后果

使用相应的ARP防范工具: ARP防火墙

探测出网络中欺骗的ARP包

并保护主机的ARP缓存不受欺骗

ICMP协议

因特网控制报文协议ICMP(Internet Control Message Protocol)是一个差错报告机制,是TCP/IP协议簇中的一个重要子协议,通常被IP层或更高层协议(TCP或UDP)使用,属于网络层协议,主要用于在IP主机和路由器之间传递控制消息,用于报告主机是否可达、路由是否可用等。这些控制消息虽然并不传输用户数据,但是对于收集各种网络信息、诊断和排除各种网络故障以及用户数据的传递具有至关重要的作用

ICMP的典型应用

IP数据报及其他应用程序通过ICMP报文可以实现多种应用,其中Ping程序和Tracert(Traceroute)程序最为常见。此外,在网络管理和监测中,网络质量分析NQA(Network Quality Analysis)技术更加充分应用了ICMP

ICMP攻击

目前ICMP攻击绝大部分都可以归类为拒绝服务攻击(Denial of Service, DOS),其中最为常见的是ICMP泛洪攻击,是指攻击者在短时间内向目标设备发送大量的ICMP虚假报文,导致目标设备忙于应付无用报文,而无法为用户提供正常服务

ICMP泛洪攻击

ICMP泛洪攻击具体又可分为针对带宽的DOS攻击和端口扫描攻击(针对连接的DOS攻击)两类:

  • 针对带宽的DOS攻击攻击者发送大量伪造的ICMP Echo请求报文,交换机、路由器等网络设备的CPU需要响应这种报文,会占用大量的带宽和CPU资源,这种DOS攻击和其他DOS攻击一样,消耗设备的资源而使得设备无法提供正常服务。ICMP Echo响应报文具有较高的优先级,在一般情况下,网络总是允许内部主机使用Ping命令。这种攻击仅限于攻击网络带宽,单个攻击者就能发起这种攻击。更厉害的攻击形式,如smurf,可以使整个子网内的主机对目标主机进行攻击,从而扩大ICMP流量。
  • 端口扫描攻击(针对连接的DOS攻击)端口扫描是指攻击者发送大量的端口扫描报文,交换机需要回应大量的ICMP目的不可达报文,这种攻击既消耗系统的资源,同时攻击者能够很轻易获得设备开启的端口,然后可以针对这些端口进行攻击,可以影响所有IP设备的网络连接。

此外,还有针对主机的DOS攻击,又被称为Ping-of-Death,主要是攻击操作系统的漏洞。

由于在早期的阶段,路由器对包的最大尺寸都有限制,许多操作系统在TCP/IP栈的实现中,对ICMP包的最大长度规定为64KB,并且在对ICMP包头进行读取之后,要根据该包头里包含的信息来为有效载荷生成缓冲区。当收到畸形的、声称自己的尺寸超过ICMP报文最大长度的包,接收方设备根据这个信息将分配超过64KB的有效载荷,就会出现内存分配错误,导致TCP/IP堆栈崩溃,从而产生宕机。

ICMP攻击防范

为了减轻设备处理ICMP报文的压力以及防范ICMP攻击,ICMP攻击防范技术尤为重要。目前主要采用ICMP报文限速、ICMP报文合法性检查、丢弃不需要处理的ICMP报文和不响应不可达报文来防范攻击,保护设备的CPU资源。

  • 报文限速ICMP报文限速包括端口限速、VLAN限速和全局限速,同时也实现芯片的限速,通过多个维度来保证ICMP的洪泛攻击。
  • 合法性检查&丢弃不需要处理的报文对于一些不合法的ICMP报文,比如TTL为0、ICMP类型为15、16、17的报文,都直接丢弃,同时可配置丢弃一些不常用或基本不使用的ICMP报文,包括TTL为1、带选项、不可达的ICMP报文。
  • 不响应不可达报文在用户通过发送大量端口不可达或网络不可达报文攻击设备时,设备收到这些报文后可以不响应,直接丢弃,以保护CPU资源

    SYN Flood 攻击

    SYN Flood(SYN 泛洪) 攻击是一种广为人知的 DoS (Denial of Service 拒绝服务)攻击。这是一种利用 TCP 协议缺陷,传送大量伪造的 TCP 连接请求,从而使对方 TCP 资源耗尽,停止响应正常的 TCP 连接请求

    目前的解决方法:关闭处于Half Open 状态的连接


    一般攻击者会先攻陷其他电脑作为肉鸡(攻陷的电脑被控制作为攻击者)然后通过控制大量的肉鸡进行一个DOS攻击使被攻击者因资源耗尽而瘫痪

    防火墙---每目标IP代理阈值,每目标IP丢包阈值

    2,首包丢包

    3,SYN cookie

    就目前来说 大部分的攻击都是集中在应用层面的

    恶意程序---一般会具备一下的多个或全部特性

    1,非法性

    2,隐蔽性

    3,潜伏性

    4,可触发性

    5,表现性

    6,破坏性

    7,传染性---蠕虫病毒的典型特点

    8,针对性

    9,变异性

    10,不可预见性
     

    普通病毒---以破坏为目的

    木马病毒---以控制为目的

    蠕虫病毒---具有传播性

    总的来说病毒是人创造的,如何防范也事在人为,了解攻击者的攻击原理,才能更好的保护信息安全

    网络安全术语:

相关文章:

防御课第一次作业第一天笔记整理

网络安全概述 网络安全(Cyber Security)是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断 中国网络安全市场近年来只增不…...

Git协作

文章目录 Git协作冲突冲突的发生情况解决冲突如何处理冲突 1 分支1.1 什么是Git分支1.2 创建分支 2 切换分支2.1 指向分支2.2 暂存分支切换分支与未提交更改的处理使用 Stash 临时保存更改Stash 的工作原理:场景设定使用 Git Stash 3 远程分支3.1 快进合并快进合并的…...

Three.js机器人与星系动态场景(四):封装Threejs业务组件

实际在写业务的时候不会在每个组件里都写几十行的threejs的初始化工作。我们可以 将通用的threejs的场景、相机、render、轨道控制器等进行统一初始化。同时将非主体的函数提到组件外部,通过import导入进组件。将业务逻辑主体更清晰一些。下面的代码是基于reactthre…...

亚马逊云科技 Amazon Bedrock 构建 AI 应用体验

前言 大模型应用发展迅速,部署一套AI应用的需求也越来越多,从头部署花费时间太长,然而亚马逊科技全托管式生成式 AI 服务 Amazon Bedrock,Amazon Bedrock 简化了从基础模型到生成式AI应用构建的复杂流程,为客户铺设了…...

程序员标准简历模板

链接: https://pan.baidu.com/s/1yMXGSSNba15b9hMXjA39aA?pwdb4ev 提取码: b4ev 3年工作经验简历 链接: https://pan.baidu.com/s/1OO7n1lRL6AkhejxYC9IyDA?pwdfmvv 提取码: fmvv 优秀学员简历 链接: https://pan.baidu.com/s/106Vkw_ulOInI47_5mDySSg?pwduudc 提取码: uu...

物联网设计竞赛_10_Jetson Nano中文转汉语语音

在windows中pyttsx3可以让汉字文本输出中文语音,但是在jetson上只能用英文说话 import pyttsx3def hanyu(test):engine pyttsx3.init()rate engine.getProperty(rate)engine.setProperty(rate,125)engine.say(test)engine.runAndWait() hanyu(你好) #engine.save…...

XML Schema 指示器

XML Schema 指示器 1. 引言 XML Schema 是一种用于定义 XML 文档结构和内容的语言。它提供了一种强大的方式来描述 XML 文档中允许的元素、属性和数据类型。XML Schema 指示器是在 XML Schema 定义中使用的一些特殊元素和属性,它们用于指示 XML 处理器如何解析和验证 XML 文…...

iOS UITableView自带滑动手势和父视图添加滑动手势冲突响应机制探索

场景 我们有时候会遇到这样的一个交互场景:我们有一个UITableView 放在一个弹窗中,这个弹窗可以通过滑动进行展示和消失(跟手滑动的方式),然后这个UITableView放在弹窗中,并且可以滚动,展示一些…...

RAG实践:ES混合搜索BM25+kNN(cosine)

1 缘起 最近在研究与应用混合搜索, 存储介质为ES,ES作为大佬牌数据库, 非常友好地支持关键词检索和向量检索, 当然,支持混合检索(关键词检索向量检索), 是提升LLM响应质量RAG(Retri…...

论文去AIGC痕迹:避免AI写作被检测的技巧

在数字化时代,AI正以其卓越的能力重塑学术写作的面貌。AI论文工具的兴起,为研究者们提供了前所未有的便利,但同时也引发了关于学术诚信和原创性的热烈讨论。当AI辅助写作成为常态,如何确保论文的独创性和个人思想的体现&#xff0…...

C#使用异步方式调用同步方法的实现方法

使用异步方式调用同步方法,在此我们使用异步编程模型(APM)实现 1、定义异步委托和测试方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Task…...

【Go系列】 Go语言的入门

为什么要学习Go 从今天起,我们将一同启程探索 Go 语言的奥秘。我会用简单明了的方式,逐一讲解 Go 语言的各个知识点,帮助你从基础做起,一步步深化理解。不论你之前是否有过 Go 语言的接触经验,这个系列文章都将助你收获…...

Dify 与 Xinference 最佳组合 GPU 环境部署全流程

背景介绍 在前一篇文章 RAG 项目对比 之后,确定 Dify 目前最合适的 RAG 框架。本次就尝试在本地 GPU 设备上部署 Dify 服务。 Dify 是将模型的加载独立出去的,因此需要选择合适的模型加载框架。调研一番之后选择了 Xinference,理由如下&…...

MICCAI 2024Centerline Boundary Dice Loss for Vascular Segmentation

MICCAI 2024 Centerline Boundary Dice Loss for Vascular Segmentation MICCAI 2024Centerline Boundary Dice Loss for Vascular Segmentation中心线边界Dice损失用于血管分割**摘要**:1. 引言相关工作: 2. 方法预备知识Dice的变化 3 实验3.1 数据集3.2 设置3.3 结…...

golang验证Etherscan上的智能合约

文章目录 golang验证Etherscan上的智能合约为什么要验证智能合约如何使用golang去验证合约获取EtherscanAPI密钥Verify Source Code接口Check Source Code Verification Status接口演示示例及注意事项网络问题无法调用Etherscan接口(最重要的步骤) golan…...

Visual Studio编译优化选项

目录 /O1 和 /O2 /Ox 内联函数 虚函数优化 代码重排 循环优化 链接时间优化 代码分割 数学优化 其他优化选项 在Visual Studio中,编译优化选项是用于提高程序性能的重要工具。编译器提供了多种优化级别和选项,可以根据不同的需要进行选择。 在…...

sql业务场景分析思路参考

1、时间可以进行排序,也可以用聚合函数对时间求最大值max(时间) 例如下面的例子:取最晚入职的人,那就是将入职时间倒序排序,然后limit 1 表: 场景:查找最晚入职员工的所有信息 se…...

Django权限系统如何使用?

Django的权限系统是一个强大而灵活的特性,允许你控制不同用户对应用程序中资源的访问。以下是使用Django权限系统的几个基本步骤: 1. 定义模型权限 在你的models.py文件中,你可以为每个模型定义自定义权限。这通过在模型的Meta类里设置perm…...

基于整体学习的大幅面超高分遥感影像桥梁目标检测(含数据集下载地址)

文章摘要 在遥感图像(RSIs)中进行桥梁检测在各种应用中起着至关重要的作用,但与其他对象检测相比,桥梁检测面临独特的挑战。在RSIs中,桥梁在空间尺度和纵横比方面表现出相当大的变化。因此,为了确保桥梁的…...

逻辑回归模型(非回归问题,而是解决二分类问题)

目录: 一、Sigmoid激活函数:二、逻辑回归介绍:三、决策边界四、逻辑回归模型训练过程:1.训练目标:2.梯度下降调整参数: 一、Sigmoid激活函数: Sigmoid函数是构建逻辑回归模型的重要激活函数&am…...

QT的OpenGL渲染窗QOpenGLWidget Class

Qt - QOpenGLWidget (class) (runebook.dev) 一、说明 QOpenGLWidget 类是用于渲染 OpenGL 图形的小部件。从Qt 5.4就开始退出,它对于OpenGL有专门的配合设计。 二、QOpenGLWidget类的成员 2.1 Public类函数 QOpenGLWidget(QWidget *parent nullptr,Qt…...

单元测试和集成测试

软件测试中,单元测试和集成测试是比较常见的方法 单元测试:这是一种专注于最小可测试单元(通常是函数或方法)的测试,用于验证单个组件的行为是否符合预期。它通常由开发者自己完成,可以尽早发现问题&#…...

【JAVA入门】Day15 - 接口

【JAVA入门】Day15 - 接口 文章目录 【JAVA入门】Day15 - 接口一、接口是对“行为”的抽象二、接口的定义和使用三、接口中成员的特点四、接口和类之间的关系五、接口中新增的方法5.1 JDK8开始接口中新增的方法5.1.1 接口中的默认方法5.1.2 接口中的静态方法 5.2 JDK9 开始接口…...

ES6 之 Set 与 Map 数据结构要点总结(一)

Set 数据结构 Set 对象允许你存储任何类型的唯一值,无论是原始值还是对象引用。 特性: 所有值都是唯一的,没有重复。值的顺序是根据添加的顺序确定的。可以使用迭代器遍历 Set。 常用方法: 1. add(value):添加一个新…...

一文学会用RKE部署高可用Kubernetes集群

k8s架构图 RKE简介 RKE全称Rancher Kubernetes Engine,是一个快速的,多功能的 Kubernetes 安装工具。通过RKE,我们可以快速的安装一个高可用K8S集群。RKE 支持多种操作系统,包括 MacOS、Linux 和 Windows。 K8S原生安装需要的先…...

数据加密的常见方法

数据加密是一门历史悠久的技术,它通过加密算法和加密密钥将明文(原始的或未加密的数据)转变为密文,而解密则是通过解密算法和解密密钥将密文恢复为明文。这一技术的核心是密码学,它利用密码技术对信息进行加密,实现信息隐蔽&#…...

天童美语:推荐给孩子的人文历史纪录片

孩子们都有自己的偏好,有的孩子喜欢打游戏,有的孩子喜欢看剧看电影,有的孩子喜欢看书。针对不同的孩子我们要因材施教,所以,广州天童教育给大家推荐一下适合给孩子看的人文历史类的纪录片,让精美的画面&…...

数字人技术如何推动教育事业可持续创新发展?

数字人技术作为一种新兴的教育手段,无论是幼儿园还是大学课堂,数字人都可以融入于各阶段教育中,结合动作捕捉、AI等技术,提高教育资源的利用。 AI智能交互数字人应用: 数字人结合NLP自然语言处理技术以及AI大模型技术…...

FPGA程序设计

在设计FPGA时,多运用模块化的思想取设计模块,将某一功能设计成module。 设计之前要先画一下模块设计图,列出输入输出接口,再进一步设计内部功能。 状态机要画图,确定每个状态和状态之间怎么切换。状态用localparam定…...

彻底开源,免费商用,上海AI实验室把大模型门槛打下来

终于,业内迎来了首个全链条大模型开源体系。 大模型领域,有人探索前沿技术,有人在加速落地,也有人正在推动整个社区进步。 就在近日,AI 社区迎来首个统一的全链条贯穿的大模型开源体系。 虽然社区有LLaMA等影响力较大…...