当前位置:网站首页>什么是会话劫持攻击以及如何防止会话劫持
什么是会话劫持攻击以及如何防止会话劫持
2022-08-04 16:00:00 【allway2】
在计算机科学中,会话劫持攻击一词代表了对真实有效的计算机会话的利用。它还用于未经授权访问计算机系统中的信息。毫无疑问,会话是互联网通信的重要组成部分。大多数会议都是基于网络的。此外,会话也是两个计算机系统之间发生的通信周期。当通过网站完成的用户通信使用多个 IP 通道时,每个 Web 服务器都需要进行身份验证。在本文中,我们将通过一个示例介绍什么是会话劫持以及如何防止它。所以,敬请期待!
什么是会话劫持定义?
该术语被归类为攻击者获取用户会话的攻击。它从用户登录任何服务的时间开始。除此之外,此服务可能与银行应用程序有关,您最终会退出。此外,攻击行为或攻击趋势取决于攻击者对您的会话 cookie 的了解。更重要的是,它也被称为cookie劫持。攻击可以通过单击包含准备会话 ID 的恶意链接来窃取用户的会话 cookie 来完成。之后,劫持完成。
任何计算机系统都可能面临这种通常适用于 Web 应用程序和浏览器会话的攻击。当用户登录任何 Web 应用程序时,服务器会在用户的浏览器中设置临时 cookie。他们设置了临时 cookie,因为用户已登录并且当前经过身份验证是为了记住目的。此外,为服务器识别浏览器的最常用方法是 HTTP 标头。攻击者需要用户的会话 ID 来执行会话窃取攻击。
建议您阅读我们关于如何将 http 重定向到 https的文章
什么是会话?
HTTP 是一种无状态协议。这意味着没有信息存储在浏览器中。应用程序设计者想出了一种独特的方式来记录用户的活动。应用程序无需在记录连接之前询问用户,而是在后台匿名运行,无需对用户进行身份验证。每次点击都会被记录并用于各种目的。它被称为会话记录。
会话是两个端点之间执行的多次交互。每个会话都是一系列交换的一部分,在这些交换中,用户活动在登录应用程序时开始记录。单个会话文件是在服务器上的临时文件夹中创建的。跟踪在后台完成,与同一用户的应用程序的所有通信都记录在服务器上。
仅存储对改善用户体验有用的参数。用户注销后,会话结束,不再记录任何活动。会话销毁后,保存在内存中的用户信息也将被永久删除。
由长字符串与字母和数字组合而成的会话 ID 用于识别用户。这些会话 ID 存储在 cookie、URL 中或隐藏在网页中。
如果您愿意了解虚拟化技术的工作原理,这篇文章可以帮助您!
3 种类型的会话劫持
1- 活跃
当攻击者拦截网络中的活动连接时,就会发生活动会话劫持。攻击者将所有与系统的设备链接静音并接管通信通道。关系成功后,服务器与用户系统之间的附属关系被释放。
2-被动
在被动攻击中,黑客监视服务器和客户端之间的信息交换。黑客不会阻止通信或阻止它们。攻击者仅读取双方之间的信息交换,以获取他们以后可用于恶意目的的相关信息。
3-混合
当使用主动和被动方法攻击用户的计算机时,就会发生混合会话劫持。攻击者监控网络流量,直到他们找到系统中的后门;之后,攻击者接管会话并模仿合法用户的会话来欺骗服务器的安全系统。
建议您阅读我们关于什么是分布式拒绝服务攻击的文章
会话劫持技术
通过给定的示例,您将了解它的工作原理以及如何进行会话劫持。继续阅读以教育自己。它不能排他性地完成。下面列出了几种进行会话盗窃的方法:
1- 跨站脚本
在跨站点脚本中,攻击者所做的是借助 Javascript 捕获受害者的会话 ID。首先也是最重要的攻击者将包含恶意 javascript 的精心制作的链接发送给受害者。如果受害者选项卡位于精心制作的链接上,则 javascript 开始运行并完成攻击者的所有指令。除此之外,该指令是由攻击者设置的。
2- IP 欺骗
它也是最优秀的会话劫持技术之一。它用于从计算机系统获得未经授权的访问,包括 IP 地址。此 IP 地址属于受信任的主机。为了执行此技术,攻击者需要客户端的 IP 地址。之后,攻击者将使用客户端 IP 地址欺骗的数据包添加到 TCP 会话中。这些是进行网络会话劫持的几种常见方法。除此之外,还有另一种使用数据包嗅探器的方法。
3- 会话嗅探
它是会话劫持的常见方式之一。黑客一般使用 Wireshark、proxy、OWASP Zed 等嗅探器,通过预测的会话 ID 渗透网络流量。一旦攻击者发现价值,令牌就会被用于未经授权的访问。
4- 可预测的会话令牌 ID
会话 ID 是使用按顺序运行的标准脚本算法生成的。一旦您知道,一个会话 ID 记录在特定日期,另一个会话 ID 记录在未来日期。您可以轻松猜出两个日期之间处理了多少会话。这个过程的一个具有挑战性的部分是准确地猜测会话令牌。较弱的令牌会话更容易找到和预测。攻击者通常会捕获多个 id 并解码模式以找到有效的会话 ID。会话劫持缓解是可能的,但很少了解它是如何工作的以及哪些解决方案可以防止它。
5- 浏览器中的人攻击
在这种劫持方法中,目标是用户的计算机。木马程序存储在用户的计算机上,它跟踪通过计算机记录的会话。一旦恶意软件成功安装在受害者的计算机上,浏览器中的人就可以修改任何交易信息并将所需的数据输入到目标站点。
Web 服务器将无法识别受害者计算机上的安全问题。攻击者将在不可见的情况下执行他们的活动,因此不会有迹象表明他们的计算机被操纵。此外,用户的计算机将从网站的安全层传递,这使得攻击者很容易渗透服务器并请求所需的数据。
6-会话侧顶
网络犯罪分子正在使用数据包嗅探来监控用户的网络流量。在用户在网络浏览器上输入登录凭据后,它们会拦截会话 cookie。网络犯罪分子可以劫持会话并访问用户的安全数据。
7-会话固定攻击
在这种情况下,当用户尝试访问 Web 应用程序时,有效的会话 ID 将成为目标。用户的身份验证正在进行中,而攻击者通过虚假身份验证欺骗用户并负责会话。这样,攻击者就可以访问受害者的计算机。会话固定是通过从各种来源识别会话 ID 进入用户计算机的最常见方式,例如在 URL 参数中找到会话 ID,隐藏在表单中,保存在 cookie 中。调用此数据并用于访问 Web 应用程序。
8-恶意软件注入
专门的恶意软件用于入侵用户的计算机。这些程序旨在窃取浏览器 cookie 并在不让用户知道他们的系统的情况下采取行动。该恶意软件通常放置在未经授权的网站上。当用户点击现场的广告或应用程序时,恶意软件会下载到用户的系统上。
有权访问本地存储系统的黑客可以轻松窃取会话密钥。他们将拥有您的计算机访问权限,这将作为访问浏览器临时文件或 cookie 的窗口。黑客可以执行快速扫描以从服务器或用户的计算机中获取内容。
9-蛮力
黑客正在使用蛮力攻击来查找用户的会话密钥。可预测的会话密钥很容易识别。黑客利用该技术的弱点来查找会话密钥并获得对用户系统的访问权限。该技术过去对黑客非常有效,但现代应用程序变得更加安全,并且不允许对系统进行暴力攻击。今天,会话 ID 是随机生成的,为用户提供了高度的安全性。
会话劫持攻击的级别
1- 传输层劫持
传输层劫持主要用于使用 TCP 连接的多层安全系统。黑客拦截网络服务器和用户之间共享的数据。攻击者阻止通信通道设置其安全连接。
如果服务器无法识别假包和真包的区别,攻击者可以访问用户的会话。一旦获得访问权限,不良行为者就会将作为合法信息覆盖的恶意数据包发送到客户端和服务器。
2- 应用层劫持
一旦用户成功验证了会话 ID,攻击者就会从系统中窃取会话 ID。应用层劫持也称为中间人攻击。劫持者拦截服务器和客户端之间的通信。
代理攻击也被认为是应用层劫持。攻击者使用预定义的会话 ID 嗅探进入代理服务器的直接流量。会话劫持漏洞因果对服务器上存储的个人信息非常危险;因此,您应该保护自己免受它的侵害。
如何防止会话劫持?
一旦你了解了什么是会话劫持攻击?现在是时候看看一些防止会话劫持的有效方法了。
现代 Web 应用程序是通过牢记会话劫持来开发的。但是,您应该亲自检查安全系统,以避免将来劫持您的重要数据。
有很多方法可以防止恶意软件注入您的系统,并防止数据因意外事件而丢失。通过实施这些技术,您可以降低会话劫持的风险。
HTTPS 安全协议
它确保使用 SSL/TLS 加密的服务器和用户计算机之间的数据交换。即使攻击者设法获取数据包,他们也无法解密信息以确保您的数据安全。
仅 HTTP
HTTPOnly 安全方法可防止客户端 cookie 存储。攻击者无法在服务器上部署 XSS 攻击,从而阻止在浏览器中注入 JavaScript。
知名杀毒软件
获取知名的防病毒软件,以保护您的系统免受黑客攻击。防病毒软件检测到对设计的恶意操作并立即阻止该条目。病毒或恶意软件一经识别就会立即删除。使您的操作系统保持最新,以避免系统漏洞。
使用可用的 Web 框架
您应该使用现成的 Web 框架,而不是发明您的自定义构建会话管理。这些将保护您的资产。
除此之外,还有一些缓解会话劫持的方法。您可以根据防止会话劫持的指南选择其中一种方式:
- 您可以使用网络框架。它提供了一种高度安全的会话 ID 生成机制。它还包括一个管理机制。因此,您也可以选择该选项。
- 优先考虑 HTTPS。它确保所有会话流量的加密。它充当攻击者的屏障,使您脱离明文会话。
- 重新生成会话密钥也是防止会话劫持的一种方法。它可以在初始身份验证后完成。
- Web 服务器还能够生成长会话 cookie。它有助于减少对手的猜测。
攻击成功后攻击者可以做什么?
毫无疑问,劫持成为整个会议期间所有群众面临的最重大威胁。攻击者可以在活动会话期间进行各种活动,主要是不相关或非法的行为。攻击者的活动因他们所针对的应用程序而异。这基本上取决于他们,他们可以将钱从受害者的账户转移到另一个版本,从众多的网上商店购物,窃取受害者的所有重要和秘密信息,等等。
此外,攻击者也有可能敲诈受害者并索要钱财,利用受害者的个人信息进行各种非法活动。简而言之,您的声誉掌握在他们手中。会话劫持是知名和杰出组织的耻辱。因此,攻击者可以做这些事情。
会话劫持与会话欺骗
大多数对劫持了解不多的群众认为它们是同一件事或活动。但是,这两者在时间上是不同的。会话窃取是在用户当前登录到应用程序时完成的。
另一方面,在欺骗的情况下,攻击者使用窃取的令牌来创建新会话。此外,这是两者之间最显着的区别之一。
结论
完整分析的推论是,以上所有对于那些认真对待会话劫持攻击的群众来说都是非常必要的。此外,您可以通过意识、知识和适当的指导来解决这个问题。有关更多信息,请查看此帖子。
边栏推荐
猜你喜欢
AAAI‘22 推荐系统论文梳理
吴恩达机器学习[13]-支持向量机
【Idea设置运行参数无效】可能是...
74行代码实现浪漫的红心下落的动画效果
For循环控制
Redis的主从复制和集群
录音文件识别
GPS satellite synchronization clock, NTP network synchronization clock, Beidou clock server (Jingzhun)
JVM Tuning-GC Fundamentals and Tuning Key Analysis
It took half a month to finally make a collection of high-frequency interview questions of first-tier manufacturers
随机推荐
现代 ABAP 编程语言中的正则表达式
初学爬虫笔记(收集数据)
【二叉树】根据描述创建二叉树
C# 写系统日志
Check which user permissions are assigned to each database, is there an interface for this?
跟我学 UML 系统建模
云存储硬核技术内幕——(13) 抓手,组合拳与闭环
全球电子产品需求放缓 三星手机越南工厂每周只需要干 3~4 天
推荐 7 月份 yyds 的开源项目
【TA-霜狼_may-《百人计划》】美术2.7 Metallic 与 Speculer流程
What is the difference between member variable and local variable
dot net double 数组转 float 数组
LeetCode·84.柱状图中最大的矩形·单调递增栈
Projector reached the party benefits 】 【 beginners entry - brightness projection and curtain selection - from entry to the master
#夏日挑战赛# HarmonyOS 实现一个滑块验证
No server is required, teach you to get real-time health code recognition with only 30 lines of code
Beginner crawler notes (collecting data)
Does DMS have an interface to get the list of databases under each instance?
Roslyn 在多开发框架让 msbuild 的 Target 仅运行一次
云存储硬核技术内幕——小结(上)