防御课第一次作业第一天笔记整理
网络安全概述
- 网络安全(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辅助写作成为常态,如何确保论文的独创性和个人思想的体现࿰…...
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…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
比较数据迁移后MySQL数据库和OceanBase数据仓库中的表
设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...
c++第七天 继承与派生2
这一篇文章主要内容是 派生类构造函数与析构函数 在派生类中重写基类成员 以及多继承 第一部分:派生类构造函数与析构函数 当创建一个派生类对象时,基类成员是如何初始化的? 1.当派生类对象创建的时候,基类成员的初始化顺序 …...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
前端调试HTTP状态码
1xx(信息类状态码) 这类状态码表示临时响应,需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分,客户端应继续发送剩余部分。 2xx(成功类状态码) 表示请求已成功被服务器接收、理解并处…...
