我的动机很善良
以下是上次讨论的片段,供参考:
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
来自:SNKoala 时间:00-9-25 15:53:07 ID:348584
最近在摸索Sygate的实现方法,给你贴点东东,看有没有帮助。
Dump of file Wg0n.sys
File Type: EXECUTABLE IMAGE
Section contains the following imports:
ntoskrnl.exe
10F04 Import Address Table
11020 Import Name Table
0 time date stamp
0 Index of first forwarder reference
1C2 KeInitializeSpinLock
F2 InterlockedExchange
2D DbgPrint
389 RtlQueryRegistryValues
47 ExFreePool
FE IoAllocateMdl
246 MmMapLockedPages
3A ExAllocatePoolWithTag
18F IofCompleteRequest
81 ExfInterlockedRemoveHeadList
7E ExfInterlockedInsertTailList
11F IoDeleteDevice
35A RtlInitUnicodeString
115 IoCreateDevice
12D IoFreeMdl
106 IoBuildPartialMdl
NDIS.SYS
10EE0 Import Address Table
10FFC Import Name Table
0 time date stamp
0 Index of first forwarder reference
73 NdisFreePacket
2B NdisAllocatePacket
3E NdisCloseAdapter
74 NdisFreePacketPool
2C NdisAllocatePacketPool
EB NdisOpenAdapter
104 NdisRegisterProtocol
67 NdisDeregisterProtocol
上面是从Sygate的SYS中DUMP出来的东东。
路漫漫其修远兮,吾将上下而求索
要是谁知道Sg的详细实现方法,麻烦帮我一把,免去我苦苦的摸索。
-------------------------------------------------------------------------
来自:SNKoala 时间:00-9-26 8:42:36 ID:349247
我又来了!
其实上面的东西没什么用处,我只是想看看能不能从上面的东西中找到努力的方向而已。
因为Sygate能实现NAT功能,所以它肯定能达到你的目的的。上面是Sygate安装的驱动的
静态引入表,也就是说Sygate的驱动用到了这些函数,所以我觉得,Sygate是实现了一个
协议栈,然后再把处理过得packet传给原来的tcp/ip协议栈。所以,你也可以学Sygate
实现一个协议栈,然后重新邦定。不过如果只是想破坏,我想协议栈可以不实现而只是
修改一下网络设备的邦定即可。可以看看网络设备驱动程序的安装部分,里面有怎么修改
邦定的说明。
我的要求可能比你的还要复杂。朋友公司的网络限制只能使用110端口(也就是只能收收
pop3的信),我想实现一个透明的tunnel,让所有的tcp/ip操作都透过这个tunnel,由
110端口传到另外一台能上网的机子上。不过太难了,所以到现在还是无从下手。况且现
在也没时间。所以索性在这借个地方,看看有那位高手以前做过,能出手相助,不胜感激!
-------------------------------------------------------------------------
来自:foxs 时间:00-10-1 22:50:07 ID:354595
又是网卡!
网卡区分是否接受桢是通过一个判别的寄存器,
你可以通过一个端口来设置它。具体的我忘了。
立刻参考<<西安电子科技大出的<<网卡的设计,驱动分析>>书名不对,大概是这个意思>
不过是居于dos下的还有大量的汇编源代码。你看一下就明白了。
在以太网中的桢的传输是每个机器都受到的,只不过在网卡的设置上
一般都是非自己的ip的包和公用的包都不接受。
设置一下,接受所有包就成了杂乱模式
在linux下只要在配置里改一下就课轻松做到.
不过这就是所有的sniffer的工作原理.
但哟一个缺陷,就是只对同一网段里才有效。
如果2台机器江是通过了hub等连接的无效。
sNKoala的要求做的其实也可做到.
不过你自己的在重心收到包后进行在一次的打包,
这非的作驱动不可,要不速度跟不上。
这个驱动就是祈祷一个转发器的作用.
windowsDDK里有一个网络的驱动的例子.
研究一个,在根据个个协议的格式重新打包,发出.
-------------------------------------------------------------------------
来自:iie 时间:00-10-3 14:45:28 ID:355623
小猫眯:这个问题我很感兴趣,不过50分怕是吝啬了一点——我准备开一个系列问了
-------------------------------------------------------------------------
来自:iie 时间:00-10-4 9:39:19 ID:356355
fox:你说的书我没有找到,能否确认一下书名和出版日期?
我开了一个系列问“拷问网卡”,希望众位大侠赐教——分数没问题,我还剩5000呢!
-------------------------------------------------------------------------
来自:JJams_King 时间:00-10-4 23:59:49 ID:357000
拷问网卡(0):
以太网的电气参数规格
-------------------------------------------------------------------