找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 19501|回复: 36

求教,想拦截程序联网行为……

 火... [复制链接]

3

主题

38

回帖

0

精华

初来乍到

积分
14
发表于 2010-9-11 19:05:34 | 显示全部楼层 |阅读模式
请问内核的或Nt系列的一些函数有哪些是用与联网的?

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-11 19:38:35 | 显示全部楼层
主要还是想知道,Google Chrome 使用哪个函数联网的0 0

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-9-12 09:55:02 | 显示全部楼层
NtAcceptConnectPort?

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-12 10:39:51 | 显示全部楼层
本帖最后由 腾袭 于 2010-9-12 10:46 编辑

 l NtCreatePort()
 l NtCreateWaitablePort()
 l NtListenPort()
 l NtConnectPort()
 l NtAcceptConnectPort()
 l NtCompleteConnectPort()
 l NtRequestPort()
 l NtRequestWaiReplyPort()
 l NtReplyPort()
 l NtReplyWaitReceivePort()
 l NtReplyWaitReceivePortEx()。同上,但是带有超时控制
 l NtReadRequestData()
 l NtWriteRequestData()
 l NtQueryInformationPort()

太多了……不知哪个函数的哪个变量是用来保存发送数据的- -

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-9-13 17:30:26 | 显示全部楼层
MSDN没有说明吗?

内核的东西头痛啊.
我就是嗷嗷叫的老马了......

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-13 18:00:45 | 显示全部楼层
表示我也用手机回帖了!

那些函数内核的导出函数貌似是Kf开头的,都没有文档化= =

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-9-13 19:29:59 | 显示全部楼层
那这个就头痛了..........会不会像ZW与NT系列那样,只是名称与导出库不同,与某个系列的函数的接口却一样?
我就是嗷嗷叫的老马了......

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-13 20:09:30 | 显示全部楼层
不清楚啊~

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-13 20:11:47 | 显示全部楼层
不清楚啊~
不过内核的联网那些导出函数和nt那些貌似不一样的…

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-13 20:12:01 | 显示全部楼层

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-13 20:15:44 | 显示全部楼层
本帖最后由 腾袭 于 2010-9-13 20:19 编辑

回复 10# 364589886


貌似这两个贴没什么关系吧…

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-14 12:49:51 | 显示全部楼层
回复 11# 腾袭


    你说的那些什么NtXXXXXPort什么的才是与网络任何关系都没有。。。完全是扯淡,八竿子都打不上关系,那是文件系统的MiniFilter驱动会用到的一些东西



至于你说我发的这个链接与你的帖子没关系,那我只能说你太菜了。。。。连NDIS,IMD都不晓得啥东西

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-14 15:04:01 | 显示全部楼层
本帖最后由 腾袭 于 2010-9-14 15:07 编辑

你联网的函数肯定是要先打开端口,CreatePort就是这样用的,你不信用google自己查…

  = =
而且数据都通过那些连接网络,你可以全部hook掉/看你能不能联网…


其实你是没明白我问什么…我根本用不着那些…

29

主题

134

回帖

4

精华

论坛元老

积分
5970
QQ
发表于 2010-9-14 15:15:04 | 显示全部楼层
网络联网行为 这个东西定义就很模糊 网络过滤可以 ndis什么的
花落时想你
花开时你在哪里

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-14 21:32:25 | 显示全部楼层
回复 13# 腾袭


    我再给你解释一遍:你说的那些函数,完全与网络通信没有任何关系,那些函数是用来进行进程间通信的,做文件系统的minifilter的内核与应用层通信,会用到这个。。。你以为带个Port就是网络通信的东西吗?多了去了。。。。这种东西
     网络通信,一个DeviceIoControl足以。。。。。。我说到这里,你不要以为自己直接hook上DeviceIotrol就可以控制网络通信了,早着呢
     你说的这个目的,我发的那个组件,就是一个NDIS的中间层驱动--------任何网络行为和网络数据的必经之地,没有任何绕过去的可能性。只不过你不懂的东西太多了而已

      回去多看点书吧

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-14 21:48:41 | 显示全部楼层
补充句:那一系列NtXXXXPort函数,确实是可以用来实现网络通信的,但是这只是进程间通讯的一种方式, 并不是说Windows的网络通信就是用这些函数实现的。。。。我就不明白你为啥看到个“Port”就激动成这样,然后就认定这些函数是用于网络通信的

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-15 22:19:43 | 显示全部楼层
本帖最后由 腾袭 于 2010-9-15 22:21 编辑

回复 15# 364589886


    汗,我都说过你没明白我的意思- -
我当然知道联网实际上是要过内核的  = =
我只需要普通的拦截,不需要ndis,要是做得狠一点去挂一个网卡过滤驱动都可以……

我只是想问一般是调用nt中的什么函数联网就足够了- -:'(

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-9-16 10:36:15 | 显示全部楼层
这个。。。。。。。。真复杂。

有点晕。
我就是嗷嗷叫的老马了......

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-16 12:25:20 | 显示全部楼层
回复 17# 腾袭

    说到底你还是基础知识差太多!
   第一:明确告诉你,MS不存在你想象中的那种函数;
   第二:只要是与网络相关的,我发的那个组件就是万能的,不存在需不需要的问题。莫说你只是要获取一个联网通知,即使你要获取所有程序的任意时刻的网络行为,或者修改这些网络行为,也不是什么难事

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-16 12:36:41 | 显示全部楼层
回复 17# 腾袭

还有,看你提到什么“要是做得狠一点去挂一个网卡过滤驱动都可以”。。。。你知道什么是网卡过滤?说的轻巧!
我发的那个就是你所谓的“网卡过滤”,不过并不是如你所说的“挂上去”的;
其次,你所谓的“网卡过滤驱动”正式名字就叫NDIS中间层驱动,英文缩写就是IMD(Intermedia Driver),也就是我发的那个东西。

纠正一点:你的印象中这种驱动好像就是过滤网卡的,事实是:IMD驱动位于协议驱动与端口驱动之间,可以同时对网卡和传输层协议(如TCP/IP协议栈)产生任何你需要的影响,包括获取联网通知,或者拦截联网行为,或者抓取网络数据,再或者对这些数据和行为修改成任意你想要的

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-16 23:38:40 | 显示全部楼层
回复 20# 364589886


    我没说驱动就是过滤网卡的,我承认我的说法是有问题,你也不用来挑毛病吧 = =

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-16 23:41:11 | 显示全部楼层
本帖最后由 腾袭 于 2010-9-16 23:42 编辑

回复 19# 364589886

存在的,你不要否认,像Ring3 ws2_32.dll 中的send之类的,我就是要那种函数 = =你否认只是你和我想的方向不同,都说你没理解我的问题了- -
好吧我的说法是有问题,我服你了~

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-9-17 12:16:00 | 显示全部楼层
Nt**中貌似确实没有函数是用来联网的,至少我没看到WRK中有关于联网的内核函数。

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-17 12:44:53 | 显示全部楼层
回复 23# Tesla.Angela


    其实我是想知道 Google Chrome 使用哪个函数联网 = =

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-9-17 12:47:31 | 显示全部楼层
本帖最后由 Tesla.Angela 于 2010-9-17 12:50 编辑
回复  Tesla.Angela


    其实我是想知道 Google Chrome 使用哪个函数联网 = =
腾袭 发表于 2010-9-17 12:44




这次我郁闷了。。。
chrome调用ws2_32.dll联网,ws2_32.dll可能直接和网络驱动进行通信。。。

857

主题

2632

回帖

2

精华

管理员

此生无悔入华夏,  长居日耳曼尼亚。  

积分
36130
发表于 2010-9-17 12:49:45 | 显示全部楼层
本帖最后由 Tesla.Angela 于 2010-9-17 12:52 编辑

也就是说ws2_32.dll的核心功能和ntosxxxx.exe无关,就像ntosxxxx.exe没有关于控制游戏手柄的内容,但我们又能控制游戏手柄一样。
。。。
我自己都不知道我在说什么了。。。

23

主题

117

回帖

1

精华

银牌会员

积分
400
发表于 2010-9-17 15:13:24 | 显示全部楼层
回复 26# Tesla.Angela


    那我在继续说一下MS自带的socket库是如何联网的吧
   HANDLE hDevice=CreateFile("\\\\.\\Tcpip"................);
     BOOLEAN ret=DeviceIoControl(hDevice,CTL_CODE,...............................)

    这个CTL_CODE就是具体的操作码了,这个就多了,不是一下可以说的完的。但总之,所有的网络通信都是这么完成的,不管是建立连接,断开连接,还是发送接收数据,都是这么做的。

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-9-17 17:26:17 | 显示全部楼层
回复  Tesla.Angela


    那我在继续说一下MS自带的socket库是如何联网的吧
   HANDLE hDevice=Creat ...
364589886 发表于 2010-9-17 15:13



    你这么一说,我想起了看过的一篇有关串口的文章,里面说到,“WINDOWS将硬件抽象成了文件,对于硬件的读写就像文件操作一般,使用CreateFile/ReadFile/WriteFile。”

而实际上,读写串口也确实是用CreateFile "\\.\COM1"这样的方式完成的,尽管它是硬件。

WINDOWS抽象得非常好,统一接口了。

对于接口的定制,是非常不容易的。

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-9-17 17:31:07 | 显示全部楼层
现在从你的例子里看,连网络通讯都抽象成了文件了。。。。。
我就是嗷嗷叫的老马了......

275

主题

3017

回帖

1

精华

管理员

嗷嗷叫的老马

积分
17064

论坛牛人贡献奖关注奖最佳版主进步奖人气王疯狂作品奖精英奖赞助论坛勋章乐于助人勋章

QQ
发表于 2010-9-17 18:25:06 | 显示全部楼层
现在从你的例子里看,连网络通讯都抽象成了文件了。。。。。
我就是嗷嗷叫的老马了......

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-17 19:38:12 | 显示全部楼层
回复 25# Tesla.Angela


    不过,Chrome不用send和recv啊 = =
没找到,拦截不到啊

3

主题

38

回帖

0

精华

初来乍到

积分
14
 楼主| 发表于 2010-9-17 19:39:36 | 显示全部楼层
回复 29# 马大哈


    网络通讯本身利用的就是与网卡的通信吧,也就是和硬件通讯,不知说得对不对
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表