jerf.cat
驱动中牛
驱动中牛
  • 注册日期2002-03-30
  • 最后登录2005-09-10
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1990回复:5

如何在Filter-Hook中获取URL

楼主#
更多 发布于:2003-06-04 09:47
我现在做了一个Filter-Hook程序挂接IpFilterDriver,想在网络发送DNS时截获其URL,但不知为什么,我获得的URL长度,DNS解析服务器的地址都对,但就是没找到URL,按说URL应在UDP中紧跟着DNS字段,可读出的却不对,这是怎么回事,是否因为我在局域网上,没有域名服务器,随便指定一个IP地址做域名服务器地址不行?但应该不会影响呀,因为我拦截的是发送包,而且UDP并不确认对方是否连接正常,照样应该将URL地址发送到我指定的域名服务器呀,为什么会取不到正确的字段了?各位同人有这方面经验或原代码的请指教,谢谢!!!
yuke
驱动牛犊
驱动牛犊
  • 注册日期2001-09-02
  • 最后登录2009-04-09
  • 粉丝0
  • 关注0
  • 积分30分
  • 威望3点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-03-30 22:46
这可能是FILTER-HOOK的问题,这个接口得到的发送数据包,只有IP头和TCP/UDP头,数据并不存在。

你可以登录 http://www.110i.net,通过 110i@110i.net 和我联系,我们一起来研究和探讨一下。

再见!
[color=blue]
asmsys
驱动老牛
驱动老牛
  • 注册日期2002-03-29
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望17点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-03-31 10:07
什么是FILTER-HOOK呀。介绍一下。
从我用PASSTHRU改进后截获得到的包看,URL并不是跟在DNS请求之后的。至少还有TCP三次握手的几个包。在随后的包中就是URL,当然要除去MAC头,IP头,TCP头,并且HTTP,FTP等子协议的URL是不同的,但都要通过TCP来发送。
这是我截到的包
00 50 FC 27 C0 D5 00 00-E8 D8 62 1A 08 00 45 00   .P.'......b...E.
01 D7 03 14 40 00 80 06-39 18 C0 A8 00 BF DA F6   ....@...9.......
20 97 04 41 00 50 23 0D-EE 44 6F 0B 59 88 50 18    ..A.P#..Do.Y.P.
43 80 89 00 00 00 47 45-54 20 2F 66 6F 72 75 6D   C.....GET /forum
2F 76 69 65 77 74 68 72-65 61 64 2E 70 68 70 3F   /viewthread.php?
74 69 64 3D 36 33 37 32-35 20 48 54 54 50 2F 31   tid=63725 HTTP/1
2E 31 0D 0A 41 63 63 65-70 74 3A 20 69 6D 61 67   .1..Accept: imag
65 2F 67 69 66 2C 20 69-6D 61 67 65 2F 78 2D 78   e/gif, image/x-x

62 69 74 6D 61 70 2C 20-69 6D 61 67 65 2F 6A 70   bitmap, image/jp
65 67 2C 20 69 6D 61 67-65 2F 70 6A 70 65 67 2C   eg, image/pjpeg,
20 61 70 70 6C 69 63 61-74 69 6F 6E 2F 78 2D 73    application/x-s
68 6F 63 6B 77 61 76 65-2D 66 6C 61 73 68 2C 20   hockwave-flash,
2A 2F 2A 0D 0A 41 63 63-65 70 74 2D 4C 61 6E 67   */*..Accept-Lang
75 61 67 65 3A 20 7A 68-2D 63 6E 0D 0A 41 63 63   uage: zh-cn..Acc
65 70 74 2D 45 6E 63 6F-64 69 6E 67 3A 20 67 7A   ept-Encoding: gz
69 70 2C 20 64 65 66 6C-61 74 65 0D 0A 55 73 65   ip, deflate..Use
。。。。
是标准的MAC头+IP头+TCP头的格式。GET后不是你想要的吗?
asmsys
驱动老牛
驱动老牛
  • 注册日期2002-03-29
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分5分
  • 威望17点
  • 贡献值0点
  • 好评度8点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-03-31 10:11
这都多会的帖子了呀!还翻出来,让我白抓了半天的包。
yuke
驱动牛犊
驱动牛犊
  • 注册日期2001-09-02
  • 最后登录2009-04-09
  • 粉丝0
  • 关注0
  • 积分30分
  • 威望3点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-04-01 11:21
FILTER-HOOK是WINDOWS自带的防火墙的开发技术,它可以对数据进行控制,但是有一个问题就是对发送的数据进行过滤时,对于TCP数据包只有IP头信息和TCP头信息,并没有发送的数据。

你可以登录 http://www.110i.net,通过 110i@110i.net 和我联系,我们一起来研究和探讨一下。

再见!
[color=blue]
rainyss
驱动牛犊
驱动牛犊
  • 注册日期2004-04-05
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2004-04-05 03:07
我ndis一窍不通,只知道接收包在哪个地方,那个packet什么的结构一层套一层,看了都头大,能否装你改过的抓包程序给我?
还有就是我以前一直是在linux下干,现在改windows,连debug怎么输出都不会,能否给我简单说说用什么工具以及方法?
游客

返回顶部