基于网站TCP协议劫持攻击原理与安全测试



              网站劫持攻击,是目前发生较多的一种网站攻击,首先我们要来了解TCP三次握手过程以

及TCP协议头详细的信息,由于TCP协议并没有对TCP的传输包进行安全
验证,所以在我们知道一

个TCP连接中的seq和ack的信息后就可以很容易的伪造传
输包,假装任意一方与另一方进行通信,

我们将这一过程称为 TCP 会话劫持(TCP 
Session Hijacking)如下图所示:tcp协议并无验证部

分。



 
 
为解决这个安全问题,通常会在网络层采用 IPSec 协议,在传输层采用 TLS 协议,在应用层采

用对应的协议。各协议安放位置如下。所以对于一些未进行防护的,
采用明文传输的协议,我们

就可以很容易的进行会话劫持。Sine安全公司是一家专
注于:服务器安全、网站安全、网站安全

检测、网站漏洞修复,渗透测试,安全服务
于一体的网络安全服务提供商。
 
 
这里以网站连接tcp 80端口为例,采用三台虚拟服务器进行演示。
 
攻击机     192.168.1.97
 
服务器     192.168.1.98
 
客户机     192.168.1.99
 
 
攻击机工具: wireshark,netwox,shijack
 
服务器需要配置telnet服务器,此时,在同一网段的攻击机使用wireshark嗅探共用网卡,等待客

户机和服务器通信,捕捉telnet包。为了直接找到telnet包可以在
wireshark设置过滤telnet ,同时

设置wireshark查看包实际序号(Edit 
Preferences->Protocols->TCP-> 不选 Relative Sequence

Numbers)。
 
在 客户机 和 服务器 进行通讯后,我们成功捕捉到包,如下图:
 

 
因为我们要伪造发下一个包,所以直接采用nextseq作为下一个包的ack,采用ack 作为下一个包的

seq(这里是tcp协议的规定,不懂的同学可以百度下tcp协议三次
握手)获取到信息之后,攻击机

使用 netwox 工具伪造客户端3给服务器发一个tcp
包。发送成功后,原来的客户端3就会失去连

接,同时服务器会把攻击机当作客户
端3 ,这样攻击机就实现了会话劫持。Sine安全公司是一家

专注于:服务器安全、
网站安全、网站安全检测、网站漏洞修复,渗透测试,安全服务于一体的网络

安全服
务提供商。


 
 
攻击机终端输入:
 
netwox 40 --ip4-dontfrag --ip4-offsetfrag 0 --ip4-ttl 64 --ip4-protocol 
 
6 --ip4-src 192.168.1.97 --ip4-dst 192.168.1.98 --tcp-src 45116 --tcp-
 
dst 23 --tcp-seqnum 3332505945 --tcp-acknum 4096321077 --tcp-ack --tcp-
 
psh --tcp-window 128 --tcp-data "6c"


 
 
解释:因为是伪造客户机给服务器发送消息,所以源ip为 192.168.1.97,目的ip 是192.168.1.98 

seq和ack按刚才所说填写,末尾的6c是字母l的十六进制数,可
以更换为别的,其余参数默认就可

以了。
发送成功后wireshark显示出一个带着数据l的包,说明我们劫持成功。那么会话劫持成功

后,我们一遍可以采用反向shell的方法让攻击机直接获取服务器的权限,
这部分内容以后再讲。

同时我们要注意的是在渗透的时候可以使用nmap这类工具对
攻击点进行扫描,如果发现有类似

telnet这种不安全的协议的端口开放的话就可以
采用相应手段进行攻击了。
分享: