了解并缓解 IP 欺骗攻击
欺骗是黑客用来未经授权访问计算机或网络的一种网络攻击,IP 欺骗是其他欺骗方法中最常见的欺骗类型。通过 IP 欺骗,攻击者可以隐藏 IP 数据包的真实来源,使攻击来源难以知晓。一旦访问网络或设备/主机,网络犯罪分子通常会挖掘其中的敏感数据,利用计算机,它们可以变成僵尸,并可用于发起拒绝服务 (DoS)攻击。
什么是 IP 欺骗?
IP 地址用于互联网上设备之间的通信。网络犯罪分子使用虚假的源 IP 地址来隐藏和冒充另一个系统。本质上使目标系统更难检测到。此类攻击的目的是窃取敏感数据,用恶意软件或病毒感染您的计算机,甚至使您的服务器崩溃。
IP 欺骗的工作原理
那么,让我们深入了解 IP 欺骗的工作原理。IP 地址是一系列数字,用于在互联网上识别您的设备,每个连接到互联网的设备都有一个 IP 地址,通过使用它,它们可以交换数据。下面是 IP 标头数据包的样子

IP 欺骗利用来源,伪造数据包内的来源,类似地,这就像在邮箱中的信封上放置假的回信地址。大多数情况下,IP 数据包在到达目的地时会经过多个中间设备或路由器,而这些设备或路由器根本不检查源地址。
在下面的例子中,您可以看到网络攻击者已成功将数据包的源 IP 从 1.1.1.1 更改为 3.3.3.3(更改的 IP)。

现在,假设有人想要破坏并完全切断他们的互联网服务,他们可以向受害者发送带有虚假源地址的数据包,数据包数量如此之多,以至于受害者没有资源来处理合法数据包。攻击者可以在许多数据包中使用许多不同的虚假源地址,而且通常无法追溯攻击者的来源以阻止受害者的攻击,更糟糕的是,攻击者可以征用中间节点来放大攻击,方法是触发该节点向受害者发送非常大的数据包,这需要更多的资源来处理,如下图所示。

IP 欺骗的类型
以下三种是最常见的 IP 欺骗类型
1. 分布式拒绝服务(DDoS)攻击
分布式拒绝服务 (DDoS) 攻击是最常见的网络攻击,它使用欺骗方法,本质上是目标主机、服务或网络充斥着互联网流量。
DDoS 攻击的主要特征
- 基于流量的攻击:其目的是使目标主机的带宽饱和。其中一些方法是执行 ICMP 洪水、UDP 洪水和其他欺骗性数据包洪水。攻击以每秒比特数 (bps) 为单位进行测量。
- 协议攻击:这些攻击利用网络协议中的弱点。例如,在 TCP 中,它会使用 SYN 洪水。碎片数据包攻击是另一个例子,其中数据包被碎片化并重新组装以逃避安全控制并发起攻击。死亡之 Ping 和 Smurf DDoS 是其他一些攻击。这些攻击以每秒数据包 (pps) 为单位进行测量。
- 应用层攻击:这些攻击针对特定应用程序或服务,使攻击看起来像合法流量。示例包括 HTTP 洪水、GET/POST 洪水和 Slowloris。这些攻击以每秒请求数 (rps) 来衡量。
2. 掩盖僵尸网络设备
IP 欺骗可用于通过掩饰僵尸网络来访问计算机。一旦僵尸网络获得对 PC 的访问权限,犯罪者就会利用它从单一来源进行控制。受僵尸网络影响的 PC 会代表攻击者进行恶意攻击。
3.中间人攻击
中间人攻击用于更改数据包并在原始发送者或接收者不知情的情况下传输它们。如果攻击者伪造 IP 地址并获得个人帐户的访问权限,他们就可以跟踪通信的任何方面。一旦获得访问权限,个人信息很容易被盗,犯罪者可以将用户引导到虚假网站等等。随着时间的推移,黑客收集了大量可以使用或出售的机密信息——这意味着中间人攻击比其他攻击更有价值、更有利可图。
如何检测 IP 欺骗
网络监控工具可用于分析端点的流量。虽然最终用户很难检测到 IP 欺骗攻击,但源 IP 的更改是在网络层(即开放系统互连通信模型的第 3 层)中完成的。由于修改是在数据包级别完成的,因此不会留下任何更改的迹象。通常,欺骗的连接请求从外部看起来是真实的。让我们讨论一下您可以缓解此类攻击的方法:
- 数据包过滤: 用于分析数据包,检查数据包的 IP 地址与访问控制列表 (ACL) 上详细的 IP 地址之间是否存在不一致,用于检测被篡改的数据包。
- 入口过滤: 检查传入数据包以评估源 IP 报头是否与允许的源地址匹配。如果检查失败,则丢弃数据包。
- 出口过滤: 验证出站数据包的源地址是否与组织网络的源地址不匹配。这可以防止内部用户发起 IP 欺骗攻击。
如何防范 IP 欺骗
IP 欺骗的工作方式可以隐藏攻击者的身份,因为很难追溯到其原始来源。但是,我们可以采取一些反欺骗措施来降低此类攻击的风险。
- 不断扫描网络以查找异常活动
- 数据包过滤机制,用于检测与组织注册网络不同的源 IP
- 验证所有 IP 地址并部署网络攻击预防工具
- 在路由器/防火墙上启用保留路径转发,以验证如果流量来自伪造的 IP 地址,是否会在接口上被阻止。
欺骗攻击示例
GitHub 欺骗攻击(2019 年)
2019 年 7 月,一场复杂的网络钓鱼活动针对 GitHub 用户,目的是窃取他们的登录凭据和双因素身份验证 (2FA) 代码。入侵涉及欺骗方法,攻击者冒充 GitHub 和其他知名实体,以获取用户的信任,从而泄露敏感信息。
攻击细节
- 网络钓鱼电子邮件:攻击者发送电子邮件,声称自己来自 GitHub。电子邮件中的信息是通知用户有关可疑的登录尝试、帐户安全问题或需要更新的情况,这些情况对其帐户的安全至关重要,并敦促用户单击链接以保护其帐户。
- 欺骗性网站: URL 链接将用户带到镜像 GitHub 登录页面的网站。现在,当用户输入其凭据时,攻击者就会获取此信息。
- 凭证收集: 一旦用户在欺骗网站上输入其凭证和 2FA 代码,攻击者就能够收集这些信息。 这使攻击者能够未经授权访问用户的 GitHub 帐户。
- 利用:访问 GitHub 帐户,将可能会导致大量的利用。
- 更改或删除代码存储库
- 访问包含敏感信息的私人存储库。
- 使用被盗账户在网络或组织内发起进一步攻击
结论
IP 欺骗仍然是一种普遍且危险的网络攻击类型,它允许犯罪者通过隐藏其真实身份来未经授权访问网络和系统。更改源 IP 地址并将其追溯到攻击源非常困难。正如在 GitHub 欺骗攻击中讨论的那样,攻击者使用了各种策略,这些策略有效地欺骗用户向您提供他们的敏感信息,从而导致凭证被盗、未经授权的访问和进一步的利用。
为了缓解此类攻击,我们需要采用全面的网络监控系统、数据包过滤、入口和出口过滤等工具。此外,在路由器和防火墙上启用反向路径转发等高级技术将有助于验证 IP 数据包的来源。
必须采取主动的方法来保护网络和用户免受 IP 欺骗攻击,这将降低此类攻击的风险和影响,并有助于保护敏感数据。
相关文章:
了解并缓解 IP 欺骗攻击
欺骗是黑客用来未经授权访问计算机或网络的一种网络攻击,IP 欺骗是其他欺骗方法中最常见的欺骗类型。通过 IP 欺骗,攻击者可以隐藏 IP 数据包的真实来源,使攻击来源难以知晓。一旦访问网络或设备/主机,网络犯罪分子通常会挖掘其中…...
java LogUtil输出日志打日志的class文件内具体方法和行号
最近琢磨怎么把日志打的更清晰,方便查找问题,又不需要在每个class内都创建Logger对象,还带上不同的颜色做区分,简直不要太爽。利用堆栈的方向顺序拿到日志的class问题。看效果,直接上代码。 1、demo test 2、输出效果…...
02. Hibernate 初体验之持久化对象
1. 前言 本节课程让我们一起体验 Hibernate 的魅力!编写第一个基于 Hibernate 的实例程序。 在本节课程中,你将学到 : Hibernate 的版本发展史;持久化对象的特点。 为了更好地讲解这个内容,这个初体验案例分上下 2…...
MySQL超详细学习教程,2023年硬核学习路线
文章目录 前言1. 数据库的相关概念1.1 数据1.2 数据库1.3 数据库管理系统1.4 数据库系统1.5 SQL 2. MySQL数据库2.1 MySQL安装2.2 MySQL配置2.2.1 添加环境变量2.2.2 新建配置文件2.2.3 初始化MySQL2.2.4 注册MySQL服务2.2.5 启动MySQL服务 2.3 MySQL登录和退出2.4 MySQL卸载2.…...
初识SpringBoot
1.Maven Maven是⼀个项⽬管理⼯具, 通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包 主要功能 项⽬构建管理依赖 构建Maven项目 1.1项目构建 Maven 提供了标准的,跨平台(Linux, Windows, MacOS等)的⾃动化项⽬构建⽅式 当我们开发了⼀个项⽬之后, 代…...
Qt之元对象系统
Qt的元对象系统提供了信号和槽机制(用于对象间的通信)、运行时类型信息和动态属性系统。 元对象系统基于三个要素: 1、QObject类为那些可以利用元对象系统的对象提供了一个基类。 2、在类声明中使用Q_OBJECT宏用于启用元对象特性,…...
Provider(1)- 什么是AudioBufferProvider
什么是AudioBufferProvider? 顾名思义,Audio音频数据缓冲提供,就是提供音频数据的缓冲类,而且这个AudioBufferProvider派生出许多子类,每个子类有不同的用途,至关重要;那它在Android哪个地方使…...
加密与安全_密钥体系的三个核心目标之完整性解决方案
文章目录 Pre机密性完整性1. 哈希函数(Hash Function)定义特征常见算法应用散列函数常用场景散列函数无法解决的问题 2. 消息认证码(MAC)概述定义常见算法工作原理如何使用 MACMAC 的问题 不可否认性数字签名(Digital …...
【C++】:继承[下篇](友元静态成员菱形继承菱形虚拟继承)
目录 一,继承与友元二,继承与静态成员三,复杂的菱形继承及菱形虚拟继承四,继承的总结和反思 点击跳转上一篇文章: 【C】:继承(定义&&赋值兼容转换&&作用域&&派生类的默认成员函数…...
昇思25天学习打卡营第13天|基于MindNLP+MusicGen生成自己的个性化音乐
关于MindNLP MindNLP是一个依赖昇思MindSpore向上生长的NLP(自然语言处理)框架,旨在利用MindSpore的优势特性,如函数式融合编程、动态图功能、数据处理引擎等,致力于提供高效、易用的NLP解决方案。通过全面拥抱Huggin…...
nigix的下载使用
1、官网:https://nginx.org/en/download.html 双击打开 nginx的默认端口是80 配置文件 默认访问页面 在目录下新建pages,放入图片 在浏览器中输入地址进行访问 可以在电脑中配置本地域名 Windows设置本地DNS域名解析hosts文件配置 文件地址…...
nginx+lua 实现URL重定向(根据传入的参数条件)
程序版本说明 程序版本URLnginx1.27.0https://nginx.org/download/nginx-1.27.0.tar.gzngx_devel_kitv0.3.3https://github.com/simpl/ngx_devel_kit/archive/v0.3.3.tar.gzluajitv2.1https://github.com/openresty/luajit2/archive/refs/tags/v2.1-20240626.tar.gzlua-nginx-m…...
算法学习笔记(8.4)-完全背包问题
目录 Question: 图例: 动态规划思路 2 代码实现: 3 空间优化: 代码实现: 下面是0-1背包和完全背包具体的例题: 代码实现: 图例: 空间优化代码示例 Question: 给定n个物品…...
C++catch (...)陈述
catch (...)陈述 例外处理可以有多个catch,如果catch后的小括弧里面放...,就表示不限型态种类的任何例外。 举例如下 #include <iostream>int main() {int i -1;try {if (i > 0) {throw 0;}throw 2.0;}catch (const int e) {std::cout <…...
Redis实践
Redis实践 使用复杂度高的命令 如果在使用Redis时,发现访问延迟突然增大,如何进行排查? 首先,第一步,建议你去查看一下Redis的慢日志。Redis提供了慢日志命令的统计功能,我们通过以下设置,就…...
【Lora模型推荐】Stable Diffusion创作具有玉石翡翠质感的图标设计
站长素材AI教程是站长之家旗下AI绘图教程平台 海量AI免费教程,每日更新干货内容 想要深入学习更多AI绘图教程,请访问站长素材AI教程网: AI教程_深度学习入门指南 - 站长素材 (chinaz.com) logo版权归各公司所有!本笔记仅供AIGC…...
vscode 远程开发
目录 vscode 远程连接 选择 Python 环境 vscode 远程连接 按 CtrlShiftP 打开命令面板。输入并选择 Remote-SSH: Open SSH Configuration File...。选择 ~/.ssh/config 文件(如果有多个选项)。在打开的文件中添加或修改你的 SSH 配置。 这个可以右键…...
前端Vue组件化实践:打造灵活可维护的地址管理组件
随着前端技术的不断演进,复杂度和开发难度也随之上升。传统的一体化开发模式使得每次小小的修改或功能增加都可能牵一发而动全身,严重影响了开发效率和维护成本。组件化开发作为一种解决方案,通过模块化、独立化的开发方式,实现了…...
虚幻引擎ue5游戏运行界面白茫茫一片,怎么处理
根剧下图顺序即可调节游戏运行界面光照问题: 在大纲里找到post,然后选中它,找到Exposure 把最低亮度和最高亮度的0改为1即可...
《代理选择与反爬虫策略探究:如何优化网络爬虫效率与稳定性》
代理IP如何选以及常见反爬策略 为什么需要代理? 因为有的网站会封IP,用户如果没有登录,那IP就是身份标识,如果网站发现用户行为异常就非常可能封IP 什么是代理IP 就是让一个人帮你转交请求,帮你转交的人对面不熟&a…...
uniapp 对接腾讯云IM群组成员管理(增删改查)
UniApp 实战:腾讯云IM群组成员管理(增删改查) 一、前言 在社交类App开发中,群组成员管理是核心功能之一。本文将基于UniApp框架,结合腾讯云IM SDK,详细讲解如何实现群组成员的增删改查全流程。 权限校验…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
04-初识css
一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...
【开发技术】.Net使用FFmpeg视频特定帧上绘制内容
目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法,当前调用一个医疗行业的AI识别算法后返回…...
九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...
【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
