会话劫持

简介:

会话劫持由若干步骤组成,这里先简要地描述一下,随后再做详尽地解释。

先做以下假定:

首先,目标主机已经选定。其次,信任模式已被发现,并找到了一个被目标主机信任的主机。黑客为了进行IP欺骗,进行以下工作:使得被信任的主机丧失工作能力,同时采样目标主机发出的TCP 序列号,猜测出它的数据序列号。然后,伪装成被信任的主机,同时建立起与目标主机基于地址验证的应用连接。如果成功,黑客可以使用一种简单的命令放置一个系统后门,以进行非授权操作。




使被信任主机丧失工作能力  

一旦发现被信任的主机,为了伪装成它,往往使其丧失工作能力。由于攻击者将要代替真正的被信任主机,他必须确保真正被信任的主机不能接收到任何有效的网络数据,否则将会被揭穿。有许多方法可以做到这些。可以用上面介绍的任一种 DoS 攻击方法。这里介绍 SYN
黑客往往向被进攻目标的 TCP 端口发送大量 SYN 请求,这些请求的源地址是使用一个合法的但是虚假的 IP 地址(可能使用该合法 IP 地址的主机没有开机)。而受攻击的主机往往是会向该 IP 地址发送响应的,但可惜是杳无音信。与此同时 IP 包会通知受攻击主机的 TCP :该主机不可到达,但不幸的是 TCP 会认为是一种暂时错误,并继续尝试连接(比如继续对该 IP 地址进行路由,发出 SYN/ACK 数据包等等),直至确信无法连接。

序列号取样和猜测  

要对目标主机进行攻击,必须知道目标主机使用的数据包序列号。现在,我们来讨论黑客是如何进行预测的。他们先与被攻击主机的一个端口( SMTP 是一个很好的选择)建立起正常的连接。通常,这个过程被重复若干次,并将目标主机最后所发送的 ISN 存储起来。黑客还需要估计他的主机与被信任主机之间的 RTT 时间(往返时间),这个 RTT 时间是通过多次统计平均求出的。 RTT  对于估计下一个 ISN 是非常重要的。前面已经提到每秒钟 ISN 增加 128000 ,每次连接增加 64000 。现在就不难估计出 ISN 的大小了,它是 128000 乘以 RTT 的一半,如果此时目标主机刚刚建立过一个连接,那么再加上一个 64000 。再估计出 ISN 大小后,立即就开始进行攻击。当黑客的虚假 TCP 数据包进入目标主机时,根据估计的准确度不同,会发生不同的情况:   ·如果估计的序列号是准确的,进入的数据将被放置在接收缓冲器以供使用。 ·如果估计的序列号小于期待的数字,那么将被放弃。   ·如果估计的序列号大于期待的数字,并且在滑动窗口(前面讲的缓冲)之内,那么,该数据被认为是一个未来的数据, TCP 模块将等待其它缺少的数据。如果估计的序列号大于期待的数字,并且不在滑动窗口(前面讲的缓冲)之内,那么, TCP 将会放弃该数据并返回一个期望获得的数据序列号。下面将要提到,黑客的主机并不能收到返回的数据序列号。  

攻击者伪装成被信任主机的 IP  地址,此时,该主机仍然处在停顿状态(前面讲的丧失处理能力),然后向目标主机的 513 端口 (rlogin 的端口号 ) 发送连接请求。目标主机对连接请求作出反应,发送 SYN/ACK 数据包给被信任主机(如果被信任主机处于正常工作状态,那么会认为是错误并立即向目标主机返回 RST 数据包,但此时它处于停顿状态)。按照计划,被信任主机会抛弃该 SYN/ACK 数据包。攻击者向目标主机发送 ACK 数据包,该 ACK 使用前面估计的序列号加 1 (因为是在确认)。如果攻击者估计正确的话,目标主机将会接收该 ACK  。数据开始传输。

防范措施

* SPF检查

* 正确的ACL

* 对通信进行加密

  本文转自游来游去岛博客51CTO博客,原文链接http://blog.51cto.com/ylyqd/2220如需转载请自行联系原作者


  wingking84

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
22天前
|
存储 安全
Cookie会话跟踪的原理
会话跟踪技术包括Cookie和Session。Cookie是客户端技术,首次访问时服务器通过Set-Cookie响应头发送Cookie,浏览器保存并在后续请求中通过Cookie请求头回传,实现会话跟踪。但Cookie易被用户修改或禁用,安全性较低。Session则是服务器端技术,每次会话生成唯一的Session ID,通过Cookie传递给客户端,客户端在后续请求中携带此ID,服务器据此识别会话。Session更安全,但在集群环境中需解决会话共享问题。
38 1
|
3月前
|
安全 Go PHP
Web安全-会话ID漏洞
Web安全-会话ID漏洞
34 3
|
7月前
|
监控 安全 网络安全
什么是劫持检查,劫持检测意义是什么
什么是劫持检查,劫持检测意义是什么
|
存储 Java 应用服务中间件
客户端会话跟踪技术 Cookie 浅谈
客户端会话跟踪技术 Cookie 浅谈
148 0
|
JavaScript API
数据劫持2
Reflect和Object来说,框架封装更需要健壮性强的Reflect Proxy处理响应式数据更具优势 Object.defineProperty那些缺点在vue框架里也提供了相应的api进行解决
165 0
数据劫持2
数据劫持
对属性的读取和修改拦截简单来说就是数据的任何变化都要能监测到,这样才能根据数据变化做对应操作
371 0
数据劫持
|
安全 应用服务中间件 数据安全/隐私保护
漏洞:会话固定攻击(session fixation attack)
什么是会话固定攻击? 会话固定攻击(session fixation attack)是利用应用系统在服务器的会话ID固定不变机制,借助他人用相同的会话ID获取认证和授权,然后利用该会话ID劫持他人的会话以成功冒充他人,造成会话固定攻击。
371 0
|
Web App开发 JavaScript 安全
黑客利用弹出窗口冒充安全警告发起钓鱼攻击
根据安全厂商Trusteer研究员的发现,该种新型的钓鱼攻击主要是利用了众多浏览器中都存在的漏洞,通过这种称为“in-session phishing”的会话钓鱼攻击,可以更轻易地窃取到网上银行证书。
1037 0
|
Web App开发 安全 数据安全/隐私保护