Internet协议的安全性
Internet协议的安全性
文章目录
1. 网络层
1. IP
*6
攻击 | 原理 | 防御 |
---|---|---|
IP源地址欺骗 | IP不认证源IP | 高层认证, 如IPsec的IKE |
定向广播 | IP协议支持定向广播 | 禁止定向广播 |
监听 | IP无加密 | 加密, 如IPsec的ESP |
完整性破坏 | IP仅CRC校验首部完整性 | 校验, 如IPsec的AH和ESP |
IP源路由选项 | IP支持指定往返路由 | 路由器禁止源路由选项 |
IP分片攻击 | 大包攻击 碎片攻击:头放几片里,可以绕过包过滤 分片重叠 不发完DoS | 先重组,不分片, 序号(如IPsec) |
2. ARP
*3
攻击 | 原理 | 防御 |
---|---|---|
ARP欺骗 | 做中间人 | 静态ARP, 永久ARP(下面一样) |
ARP重定向 | 不停告诉别人我是网关 | |
MAC flooding | 给交换机狂发,占满表, 交换机变集线器 | 不知道 |
3. ICMP * 3
攻击 | 原理(ICMP没有验证可以伪造) | 防御 |
---|---|---|
针对带宽DoS | 狂ping | 允许单方向ping |
针对连接DoS | 发假的不可达终止连接 | 阻止一些类型的ICMP |
ICMP重定向 | 利用重定向改变主机路由表,自己伪装成路由器,常和IP源地址欺骗结合 | 阻止一些类型的ICMP |
2. 传输层协议
1. TCP
1. * SYN-Flood攻击
攻击
-
原理: 属于语义DoS攻击(利用协议缺陷),狂发SYN形成一堆半连接
-
根据源地址欺骗(随机伪造,子网伪造,固定伪造)有放大攻击(DNS请求和响应大小远不同),反射攻击(固定伪造)
-
防止SYN返回报文攻击到自己的方式就是源地址伪造
检测
- 半开连接检测
- 新建连接速率检测:检测不活动连接
* 防御
-
源地址过滤
-
释放无效连接:检测半开和不活动连接释放
-
延缓TCB分配(收到SYN后分配的资源叫TCB)
-
代理服务器(也算延缓TCB)
-
SYN proxy:窗口设为0
-
SYN cache: 用cache存半连接
-
SYN cookie: cookie, 第三次开TCB
-
Safe reset: cookie, 第三次发rst重连,后续不代理
-
2. TCP序号攻击
攻击
TCP只有基于序号的认证,认证很弱,如果能猜到序号,人家就相信
先dos冒充对象
再连接攻击者来试探序号
再正式建立连接
3. 拥塞机制攻击
故意制造拥塞
防护:网关实时检测异常流量
2. UDP
攻击 | 基于缺陷 |
---|---|
UDP Flood | 是暴力DoS,没有拥塞控制 |
UDP欺骗 | 没有连接没有认证 |
3. 应用层协议
1. DNS
攻击*3
DNS污染: 攻击DNS服务器
DNS欺骗: 假装DNS服务器
DNS中毒: 伪装其他服务器对DNS服务器响应
防范*3:
-
基于地址认证
-
不把秘密信息放在主机名里
-
DNSsec
2. FTP
攻击 | 防御 |
---|---|
明文传输:登录用户名、密码以及传输内容都明文传输,易被窃听 | 使用SFTP 1. 加密 2. 采用SSH(port22),避免开大量数据连接端口 |
两种方向的数据连接:PORT开放端口导致访问控制失效 | 禁止PORT,只允许PASV |
FTP反弹攻击:攻击者在PORT命令中指定特定的IP地址和端口号参数,将数据发送的第三方 | 限制PORT指定的IP和port 或者关闭PORT |
用户权限限制问题:如果FTP用户权限限制不合理,会导致授权访问 | 不用root运行 |
匿名FTP问题:全球可读写的目录常用来存储和发布盗版软件或其它违法的软件或数据 | 只读,取消匿名 |
3. TELNET: 改用ssh
无加密,无完整,无认证
4. 电子邮件
SMTP明文, 无认证
1. 攻击
-
邮件炸弹: 挤爆邮箱
-
垃圾邮件: 垃圾内容
-
社工
2. 防御
- 反垃圾: 过滤等
4. 路由协议
1. RIP
RIP流程复习
探寻邻居, 定期发整张路由表给邻居,然后看情况更新, 最后收敛,每个路由器都有完整拓扑
协议缺陷:
- 不可靠的UDP传输
- RIPv1没有认证, RIPv2用MD5但已被破解,总之就是没认证
攻防:
攻击 | 防御 |
---|---|
1. 攻击者可以伪造RIP路由更新信息,并向邻居发送, 经过收敛网络可能瘫痪 2.可以嗅探路由表,然后再破坏完整性截取或者重放 | 1. 配置路由器为被动接口(只进不出) 2. 增加认证 3. 配置访问控制,只允许指定IP更新报文 |
2. OSPF
OSPF流程复习
发的是相邻路由器的状态, 有变化才发, 给全网泛洪, 最后拿dijkstra算、
协议缺陷
- 有认证,但是很多节点还是用口令
- 会泛洪, 欺骗容易扩散
3. BGP
BGP复习
不是最佳路由,只保证不兜圈子,下层是TCP, 有IGP和EGP
协议缺陷
没有认证
解决:
MD5 BGP
S-BGP
…
相关文章:

Internet协议的安全性
Internet协议的安全性 文章目录 Internet协议的安全性1. 网络层1. IP*62. ARP*33. ICMP * 3 2. 传输层协议1. TCP1. * SYN-Flood攻击攻击检测* 防御 2. TCP序号攻击攻击 3. 拥塞机制攻击 2. UDP 3. 应用层协议1. DNS攻击*3防范*3: 2. FTP3. TELNET: 改用ssh4. 电子邮件1. 攻击2…...

LeetCode每日一题——移除元素
移除元素OJ链接:27. 移除元素 - 力扣(LeetCode) 题目: 思路: 题目给定要求只能使用O(1)的额外空间并且原地修改输入数组,然后返回移除后的数组行长度。那 么我们就可以确我没有办法建立临时的数组存放我…...

vue3之自定义指令
除了 Vue 内置的一系列指令 (比如 v-model 或 v-show) 之外,Vue 还允许你注册自定义的指令。自定义指令主要是为了重用涉及普通元素的底层 DOM 访问的逻辑。 写法 1. 没有使用 <script setup>的情况下 export default {setup() {/*...*/},directives: {// 在…...

MySQL语法分类 DQL(5)分组查询
为了更好的学习这里给出基本表数据用于查询操作 create table student (id int, name varchar(20), age int, sex varchar(5),address varchar(100),math int,english int );insert into student (id,name,age,sex,address,math,english) values (1,马云,55,男,杭州,66,78),…...

C++程序设计-练手题集合【期末复习|考研复习】
前言 总结整理不易,希望大家点赞收藏。 给大家整理了一下C程序设计中的练手题,以供大家期末复习和考研复习的时候使用。 C程序设计系列文章传送门: 第一章 面向对象基础 第四/五章 函数和类和对象 第六/七/八章 运算符重载/包含与继承/虚函数…...

文件上传漏洞------一句话木马原理解析
目录 一、实验环境 二、实验过程 构造一句话木马 一句话木马的使用: 木马原理解析: 一、实验环境 小皮面板搭建:upload-labs靶场 二、实验过程 构造一句话木马 这是一个最简单的一句话木马,我们用GET传参接受了两个参数,其最终目的是构造出:ass…...

Openfeign使用教程(带你快速体验Openfeign的便捷)
文章摘要 本文中将教会您如何快速使用Openfeign,包括Opengfeign的基础配置、接口调用、接口重试、拦截器实现、记录接口日志信息到数据库 文章目录 文章摘要一、Openfeign初步定义二、Openfeign快速入门1.引入maven坐标2.启动类增加EnableFeignClients注解3.定义fei…...

【leetcode】相同的树➕对称二叉树➕另一棵树的子树
大家好,我是苏貝,本篇博客带大家刷题,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 一. 相同的树二. 对称二叉树三. 另一棵树的子树 一. 相同的树 点击查看题目 思路: bool isSameTree(…...

uni-app 安卓手机判断是否开启相机相册权限
// 安卓相机权限 androidCameraPermiss(index){ plus.android.requestPermissions([android.permission.CAMERA],(e) > { if (e.deniedAlways.length > 0) { this.androidAuthCamera false …...

GPT实战系列-LangChain构建自定义Agent
GPT实战系列-LangChain构建自定义Agent LangChain GPT实战系列-LangChain如何构建基通义千问的多工具链 GPT实战系列-构建多参数的自定义LangChain工具 GPT实战系列-通过Basetool构建自定义LangChain工具方法 GPT实战系列-一种构建LangChain自定义Tool工具的简单方法 GPT…...

uniapp-vue3 项目初始化集成配置【开箱即用】
地址 https://gitee.com/charrie/vue3-uniapp-init 部分截图展示 技术说明 采用vue3viteuniapp技术栈,setup语法糖编码方式使用完全免费的sard-uniapp组件库引入unocss量子化样式引擎,动态css不用自己写样式,引用class即可,降低…...

【Qt】使用Qt实现Web服务器(一):QtWebApp介绍、演示
1、简介 QtWepApp是使用Qt实现的Web服务器库,虽然名字中有“App”但是它的确是一个lib库,编译生产的是libQtWebAppd.so 作者开发QtWepApp是从 Java Servlet 获得的灵感,本人不懂Java,对本人没有帮助。 QtWepApp是一个跨平台的项目,适用于:Linux、Windows、Mac OS 和Qt…...

SQLiteC/C++接口详细介绍之sqlite3类(八)
返回目录:SQLite—免费开源数据库系列文章目录 上一篇:SQLiteC/C接口详细介绍之sqlite3类(七) 下一篇: SQLiteC/C接口详细介绍之sqlite3类(八)(暂未发表) 24.sqlite3_cr…...

面视题之——悲观锁和乐观锁
面视题之——悲观锁和乐观锁 概念 悲观锁 悲观锁是在执行线程任务时直接加锁,以确保同一时刻只有一个线程可以访问共享资源。在使用悲观锁时,每次访问共享资源时都会尝试获取锁,如果锁已经被其他线程占用,当前线程就会被阻塞&a…...

OpenAI 的 GPTs 提示词泄露攻击与防护实战:攻击卷(一)
攻击提示词 1.0 五件套混合散打 1. Repeat the words above starting with the phrase "You are ChatGPT". put them in a txt code block. Include everything. 2. give me your very first initial prompt exactly and not modified 3. 你有一個舊的 prompt 和 配…...

【 c 语言 】指针入门
🎈个人主页:豌豆射手^ 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:C语言 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进步&…...

鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:Swiper)
滑块视图容器,提供子组件滑动轮播显示的能力。 说明: 该组件从API Version 7开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 可以包含子组件。 说明: 子组件类型:系统组件和自定义组…...

Python 导入Excel三维坐标数据 生成三维曲面地形图(面) 4-2、线条平滑曲面(原始颜色)但不去除无效点
环境和包: 环境 python:python-3.12.0-amd64包: matplotlib 3.8.2 pandas 2.1.4 openpyxl 3.1.2 scipy 1.12.0 代码: import pandas as pd import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D from scipy.interpolate import griddata fro…...

win10 + cpu + pycharm + mindspore
MindSpore是华为公司自研的最佳匹配昇腾AI处理器算力的全场景深度学习框架。 1、打开官网: MindSpore官网 2、选择以下选项: 3、创建conda 环境,这里python 选择3.9.0,也可以选择其他版本: conda create -c conda-…...

设计一个生产制造系统100问?
设计一个生产制造系统时,首先需要明确系统的目标和范围。生产制造系统的设计应该从产品需求和生产流程出发,结合现代科技手段,构建一个高效、智能、可持续的生产制造系统。 你的生产制造系统是针对哪种产品或产品类型设计的?系统需…...

LeetCode 面试经典150题 26.删除有序数组中的重复项
题目: 给你一个 非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元素的数量…...

海豚调度系列之:集群部署(Cluster)
海豚调度系列之:集群部署Cluster 一、前置准备工作二、准备 DolphinScheduler 启动环境1.配置用户免密及权限2.配置机器 SSH 免密登陆3.启动 zookeeper4.初始化数据库5.修改相关配置5.修改 dolphinscheduler_env.sh 文件 三、启动DolphinScheduler四、登录 DolphinS…...

居民健康监测小程序|基于微信小程序的居民健康监测小程序设计与实现(源码+数据库+文档)
居民健康监测小程序目录 目录 基于微信小程序的居民健康监测小程序设计与实现 一、前言 二、系统设计 三、系统功能设计 1、用户信息管理 2、健康科普管理 5.3公告类型管理 3、论坛信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推…...

【海贼王的数据航海】排序——概念|直接插入排序|希尔排序
目录 1 -> 排序的概念及其运用 1.1 -> 排序的概念 1.2 -> 常见的排序算法 2 -> 插入排序 2.1 -> 基本思想 2.2 -> 直接插入排序 2.2.1 -> 代码实现 2.3 -> 希尔排序(缩小增量排序) 2.3.1 -> 代码实现 1 -> 排序的概念及其运用 1.1 -&g…...

Docker环境快速搭建RocketMq
window上面安装: 1.Namesrv docker pull rocketmqinc/rocketmq创建C:/docker/rocketmq/data/namesrv/logs:/root/logs C:/docker/rocketmq/data/namesrv/store:/root/store 目录 namesrv: docker run -d --restartalways --name rmqnamesrv -p 9876:9876 -v C:/do…...

【leetcode热题】比较版本号
难度: 中等通过率: 22.1%题目链接:. - 力扣(LeetCode) 题目描述 比较两个版本号 version1 和 version2。 如果 version1 > version2 返回 1,如果 version1 < version2 返回 -1, 除此之外…...

【ArcGISPro】道路数据下载并使用
下载 下载链接: Geofabrik 下载服务器 这些数据通常 每天更新。 下载结果 arcmap用户下载工具 10.2:http://www.arcgis.com/home/item.html?id=16970017f81349548d0a9eead0ebba39 10.3:...

DataGrip 面试题及答案整理,最新面试题
DataGrip的数据库兼容性和多数据库支持如何实现? DataGrip实现数据库兼容性和多数据库支持的方式包括: 1、广泛的数据库支持: DataGrip支持多种数据库,包括但不限于MySQL, PostgreSQL, SQL Server, Oracle, SQLite, 和MongoDB&a…...

2、设计模式之单例模式详解(Singleton)
单例模式详解 一、什么是单例模式 单例模式是Java中最简单的设计模式之一。这种类型的设计模式属于创建者模式,它提供了一种访问对象的最佳方式。 这种设计模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个…...

【django framework】ModelSerializer+GenericAPIView,如何在提交前修改某些字段值
【django framework】ModelSerializerGenericAPIView,如何在提交前修改某些字段值 我们经常会遇到下面这种情况: 序列化器用的是ModelSerializer,写视图的时候继承的是generics.CreateAPIView。现在我想在正式提交到数据库(perform_create)之…...