xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
阅读:4208回复:12

我想在网卡往外发包时,先截获包然后修改mac地址,用ndis能做到吗?

楼主#
更多 发布于:2007-07-02 22:53
如题
我想在网卡往外发包时,先截获包然后修改mac地址,用ndis能做到吗?用小端口还是中间层或者其他的解决办法?
rangzh
驱动小牛
驱动小牛
  • 注册日期2005-04-24
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望150点
  • 贡献值0点
  • 好评度115点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-07-02 23:20


如果想截网络层发到网卡的包,用中间层

如果想截网卡发的包,那么要crack别人的网卡驱动。象抓802.11的抓包软件就是这样的,因为用中间层的话只能抓到802.3的包,看不到802.11的包
qsc66886688
驱动牛犊
驱动牛犊
  • 注册日期2007-07-02
  • 最后登录2008-06-06
  • 粉丝0
  • 关注0
  • 积分320分
  • 威望43点
  • 贡献值0点
  • 好评度42点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-07-03 00:13
想问大虾一下,为什么不能看到802.11的包,无线网卡和有线网卡对于ndis区别很大吗?
xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-07-03 11:46
就是说,用中间层截获网络层发往网卡的包后,填上自己想要的MAC再经网卡发出后,MAC会被改回网卡自己的MAC吗.
例如: 网卡的MAC为A,我截获到包后我把MAC填为B,然后经网卡发出.我要问的是,这个数据包的MAC回被改回到A吗?如果会,我有什么办法让他不被改回A?
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
地下室#
发布于:2007-07-03 12:19
不会修改回去!
xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-07-03 13:15
zhaock, 先行谢过啦.
我实验一把先,有问题再来请教.
对了,我想用passthru来做,我觉得改一下他的MtSendPackages()就可以了,您觉得呢?
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
6楼#
发布于:2007-07-03 14:09
没问题
xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-07-03 15:37
再问一下,
小端口驱动是否主要是偏向于控制网卡的,象什么中断之类的?
我如果要做自己的链路层协议还是应该用中间层来写?
比如:ARP或PPP协议应该用中间层还是小端口?
WINDOWS的NDISWAN.SYS应该是PPP协议的驱动吧,他是用中间层作的还是小端口作的?
多谢了!
xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2007-07-03 17:47
ZHAOCK,请不吝赐教. 指点指点我.我现在对NDIS的层次结构还是比较模糊,
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
9楼#
发布于:2007-07-04 09:42
1.小端口驱动主要控制网卡.你要做协议相关的,用imd,或者protocol有的时候也可以
2.arp,是在tcpip.sys中实现的.属于协议层驱动
3.ndiswan.sys是imd驱动,实现的ppp协议.
ProPlayboy
驱动大牛
驱动大牛
  • 注册日期2005-07-07
  • 最后登录2022-02-15
  • 粉丝0
  • 关注0
  • 积分1016分
  • 威望811点
  • 贡献值0点
  • 好评度719点
  • 原创分0分
  • 专家分0分
  • 社区居民
10楼#
发布于:2007-07-05 01:13
...呜。。。有必要吗?MiniPort...改MAC
人不靓仔心灵美,版头不正红花仔!
xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2007-07-12 19:32
我用PASSTHRU中的MPSendPackets总是抓不到tcp包。
我拷贝包描述符的所有缓冲区中的内容,通过DebugPrint显示长度。
然后以mac+ip head+tcp/udp head的格式解析,但tcp/udp head描述的数据长度总是大于通过NdisQueryBufferSafe()拷贝报缓冲数据的总长度?
xcdyjx
驱动牛犊
驱动牛犊
  • 注册日期2004-11-14
  • 最后登录2011-11-14
  • 粉丝0
  • 关注0
  • 积分135分
  • 威望37点
  • 贡献值0点
  • 好评度14点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2007-07-12 22:41
不好意思,不是抓不到。而是忘了htons()了。嘻嘻。
游客

返回顶部