阅读:2026回复:5
问个可行性问题,tdi filter修改数据长度的。求助楚狂人了
我现在在进行tdi filter的研究
主要的功能是要实现数据转发的功能 一台机子装了我的驱动,那么这台机子的数据包(tcp,udp)通过我的驱动。被修改了地址端口,还有长度和数据。 另一台机子装了我的驱动,那么这台机子接收的数据包(tcp,udp)通过我的驱动。被修改回原来的地址端口、数据长度和数据。再转发出去 最后一台机子收到。搞定 现在修改地址和端口的问题,已经可以搞定。 修改数据也很简单,但是就是那个修改数据长度,着实把我难住了。不知道怎么改。 看到那个楚狂人的文档说这个长度。。。。。。好像很难改 想知道这个可以实现吗? 其实这个问题我已经用imd实现了,但是导师就是要求我用tdi来实现,:( 后来我想用client来实现,但好像也不行。client是自己产生irp来发送自己数据的。 不是用来过滤数据的。这个方法也被我排除了。 在这里谢谢一个在论坛上认识的朋友 zxm 虽然都是初学tdi,但是与他在qq上的讨论,得益非浅。 楚狂人 大哥啊 赶快出马吧 这些问题 我们这些肤浅之人实在不会啊 其他的牛人 也多多指点一下 搞了好几天了 |
|
|
沙发#
发布于:2007-01-23 09:16
我现在想到一个方法 就是自己在SEND的时候 我可以得到对方的ip和port。
自己的ip和port也是可以得到的。发送的数据我也可以得到。 那么我就自己创建一个SEND的irp,然后进行设置。设置两个ip和两个端口和数据。 然后进行发送 看看对方能不能把它看作是一样的。 这样的方法不知道行不行 试看看吧 |
|
|
板凳#
发布于:2007-01-25 18:20
楼主,厉害啊,能把imd下修改长度的问题搞定
楼主,厉害啊,能把imd下修改长度的问题搞定。我是刚接触驱动,领导安排的任务中涉及到要修改数据长度,看了PassThru ,还没什么头绪呢。 能否给个简单的示例啊?要不说说原理也行啊! 拜托了!mail: anlan051228@163.com |
|
地板#
发布于:2007-01-26 09:08
IMD下满简单的,你整个包都能拿下来。
还改不了吗? 就是要注意那个checksum就可以了; |
|
|
地下室#
发布于:2007-01-29 10:23
呵,TDI_Filter拿来修改数据包长度?呵呵,有得你玩了。。发送还无所谓,接收会让你BSOD得非常爽!劝你不要用TdiFilter来修改数据包。。我倒是很想知道你怎么对TdiClientRecvChained()进行数据包修改,如果你是用来做加解密的话。
|
|
|
5楼#
发布于:2007-01-29 11:38
不打算这么做了
我还没到达这个程度。 决定放弃。 那个net stop会死机的问题,完全不太可能解决。除非先断掉网络。 我试了试tdifw1.4.4。要net stop他的tdifw_drv。也是照样蓝屏死机。 那个修改长度,真不是人做的。已经决定放弃了。 有成功过的人吗?就说一下。 让我知道这个世界是存在高人的,牛人的。 我已经不打算做了。 |
|
|