kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:4345回复:35

想在2000下的kernel过滤包

楼主#
更多 发布于:2002-05-24 13:16
我现在已经有了winpcap,它里面采用的是BPF过滤机制。想不用BPF来过滤,自己在下面的driver实现过滤,应该怎么做才可以呢?是不是在它下面的PacketRead或者Packet_tap改动就可以,改了以后在NTDDK下编译是否就可以了??要用softice来调试么??我愿意高分请教!真的很急,小女子这里谢谢大家了!

最新喜欢:

luke_gemluke_g...
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2002-05-24 14:42
我现在已经有了winpcap,它里面采用的是BPF过滤机制。想不用BPF来过滤,自己在下面的driver实现过滤,应该怎么做才可以呢?是不是在它下面的PacketRead或者Packet_tap改动就可以,改了以后在NTDDK下编译是否就可以了??要用softice来调试么??我愿意高分请教!真的很急,小女子这里谢谢大家了!

如果你想做的是防火墙一类的东东,wincap没有用,你要用2kdkk里的passthru来修改。
如果你想做sniffer一类的工具,wincap倒是可以。
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-05-24 14:58
是呀,我只要抓到我想要的包再分析就可以了,不是做防火墙,Pcap不可以么?请教!希望能得到回答!
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
地板#
发布于:2002-05-24 15:02
PCAP是协议驱动,完全可以。
cch
cch
驱动牛犊
驱动牛犊
  • 注册日期2001-10-10
  • 最后登录2005-04-14
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2002-05-24 15:21
如果是抓包的话,何必搞的那么麻烦呢,你到网络上找那个isniffer的源程序吧,是delphi的,用zpacket.vxd的,改动一下还可以有发包的功能啊。
雪花飘飘 北风萧萧
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2002-05-24 15:31
我知道pcap可以抓包,而且我也在应用层作了一个高层的分析工具。但是老板让我在driver里面就按ip地址,端口号进行过滤,同时过滤掉非IP,非UDP,非TCP的数据包,以及无内容的TCP ACK包,主要是出于性能上的优化。改动driver可以么??怎么改??谁能告诉我?我都要哭了!
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
6楼#
发布于:2002-05-24 16:13
98下还是2000下?2000下倒是有速成的方法。
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2002-05-24 16:28
2000下呀,有什么办法??可以告诉我么??我真的很急,感谢万分!
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2002-05-24 16:42
你为什么不在应用层做?简单到只写一个app的事!除了你自己做的应用程序之外,你不需要把数据传给其他app吧(比如ie)?
按第一贴的“给分”键,给分。
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2002-05-24 16:47
我的目的就是要在driver里做,放到应用层性能太差,我应用层的都作好了,可是不行!老板要在driver里就能达到目的,怎么办?改动pcap可以么?
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2002-05-24 16:52
你为什么不在应用层做?简单到只写一个app的事!除了你自己做的应用程序之外,你不需要把数据传给其他app吧(比如ie)?

除了你自己做的应用程序之外,你不需要把数据传给其他app吧(比如ie)?
按第一贴的“给分”键,给分。
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2002-05-24 16:58
不用呀,我只要把想要的类型的包取出来进行分析就可以了!你有什么办法么?
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2002-05-24 17:06
实际上,libpcap的编程接口是很好用的,特别是做这种过滤什么的,是它最拿手的事了。放在应用层的性能也不见得差到哪里去。你上面的app是不是没有源码所以这样?
按第一贴的“给分”键,给分。
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
13楼#
发布于:2002-05-24 17:11
不是的,我面对的情况是在一个流量非常大的网络环境里,如果把过滤放到应用层,那么接受包的数量就太大了,就会漏包。为了避免这种情况,所以要在kernel里就进行过滤,是应用程序接受包的数量减少不至于丢包!有什么办法???急!
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
14楼#
发布于:2002-05-24 17:15
这理论是你说的还是你老师说的?
按第一贴的“给分”键,给分。
.X.T.I.M.
驱动大牛
驱动大牛
  • 注册日期2001-09-22
  • 最后登录2021-08-25
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望10点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
15楼#
发布于:2002-05-24 17:20
我的目的就是要在driver里做,放到应用层性能太差,我应用层的都作好了,可是不行!老板要在driver里就能达到目的,怎么办?改动pcap可以么?

吹牛吧??驱动都没写呢APP就做好了????
其实很简单,如果你真的只是要做一个PA[Packet analyser]的话!
你如果想在驱动里面做的话不是不可以,是不实用!!你可以把过滤的部分放在驱动部分,分析的部分一定要在应用层做!要不首先并不好写,再就是耗费系统资源!也就是说你只要用PACKET这个例子来改!其他的都不用看了!怎么改呢?我给你点建议!首先改掉PACKET里面只支持802。3的包这个毛病!加上对WAN的支持!可以参考站上的其他帖子和XP的PASSTHRU里面的PTBINGADAPT函数和DRIVERENTRY函数前面的对载体信息的全局变量的初始化!INF里面加上WAN支持!这些站上都有资料和帖子讨论过,我就不详细说了!然后可以在PACKET驱动部分的PACKETRECIVE和PACKETRECIVEPACKET两个函数里面加入你想做的过滤的代码[如果你要做可设置简单规则的过滤,规则放在注册表里面是最简单的方法,如果真要搞复杂的话就要再写一个服务来协调同步!],那么驱动部分也就完成了!剩下的就是怎么在APP层做分析了!如果你对NDIS开发没什么经验的话,建议你先别开始写代码!首先先要看!怎么看?从DRIVERENTRY看起,然后看BINDADAPT!看懂了就知道OPEN这个东西是怎么来的了!OPEN是什么东西?自己看~再就要从PACKETREAD看起,然后看到RECIVE和RECIVEPACKET,如果是看完RECIVE函数就要接着看TRANSFERDATACOMPLETE!如果是RECIVEPACKET就只看到这里就可以了!可能说的不是很清楚你还看不明白我说什么,先照我说的看吧~~看了1/3你就明白我说什么了!我也好久没看PACKET了所以一些函数的名和变量的名都忘了!大概吧~~具体的问题具体问!
<IMG src="http://www.microsoft.com/traincert/images/logos/mcp.gif" border=0> <IMG src="http://www.microsoft.com/traincert/images/logos/mcdba.gif" border=0><br> <IMG src="http://www.microsoft.com/traincert/images/logos/mcse.gif" border=0> <IMG src="http://www.microsoft.com/traincert/images/logos/mcsd.gif" border=0>
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
16楼#
发布于:2002-05-24 17:20
是老板的要求,我痛苦死了,我都作好一个分析的app了,现在让我改驱动,我是一窍不通。要被开除了!5555555,谁能救救我!
moqingsong
论坛版主
论坛版主
  • 注册日期2002-04-07
  • 最后登录2011-02-03
  • 粉丝0
  • 关注0
  • 积分74分
  • 威望71点
  • 贡献值0点
  • 好评度10点
  • 原创分0分
  • 专家分0分
17楼#
发布于:2002-05-24 17:24
有.X.T.I.M.大侠出手,我就可以接着去调程序了。

按第一贴的“给分”键,给分。
kellyli
驱动牛犊
驱动牛犊
  • 注册日期2002-04-23
  • 最后登录2002-07-12
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
18楼#
发布于:2002-05-24 17:35
Packet???是DDK下的那个驱动么??你的意思是可以在协议驱动里过滤包??那么我去改Pcap下的那个驱动也可以么??我没什么经验?我看完了pcap下的那个驱动的源码,结构也了解了一点。我感觉如果要加过滤,先去掉里面的BPF filter。然后在PacketRead和Packet_tap里加上过滤是不是就可以。还有,如果我改好了,怎么调试呢?一定要用softice么?我一用就死机!而且一开始 *.sys就装不上!55555
fracker
驱动太牛
驱动太牛
  • 注册日期2001-06-28
  • 最后登录2021-03-30
  • 粉丝0
  • 关注0
  • 积分219分
  • 威望81点
  • 贡献值0点
  • 好评度23点
  • 原创分0分
  • 专家分1分
  • 社区居民
19楼#
发布于:2002-05-24 17:45
是老板的要求,我痛苦死了,我都作好一个分析的app了,现在让我改驱动,我是一窍不通。要被开除了!5555555,谁能救救我!


什么老板这么狠,抡起骷髅头砸了过去,什么东西还不得慢慢来啊?博士也是一天一天念出来的吗。
上一页
游客

返回顶部