亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 3630 | 回復(fù): 11
打印 上一主題 下一主題

[內(nèi)核模塊] netfilter在NF_ARP_IN處HOOK不到數(shù)據(jù),各位幫忙分析下 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2013-10-08 21:42 |只看該作者 |倒序瀏覽
       
代碼如下:


             unsigned int hook_arp_in(unsigned int hooknum,
                                                struct sk_buff **sb,
                                                const struct net_device *in,
                                                const struct net_device *out,
                                                int (*okfn)(struct sk_buff *))
             {
                int NIC = -1;
                printk(" hook_arp_in!!!\n");
                if(*sb)
                   function(*sb);
                return NF_STOLEN;
             }
         ....
        nfarp_in.hook = hook_arp_in;
        nfarp_in.hooknum = NF_ARP_IN;
        nfarp_in.pf = NF_ARP;
        nfarp_in.owner = THIS_MODULE;
        if(nf_register_hook(&nfarp_in) < 0)
                printk("register_hook failed!!!!\n");
        ....


把代碼的其他地方都注釋掉了,基本就剩了上面的這點代碼。加載模塊之后,根本不會進到 hook_arp_in()里面,而且系統(tǒng)的arp的過程沒受影響。
但是,我將這個nfarp_in.pf = NF_ARP 換成 nfarp_in.pf = NFPROTO_ARP 后,會進入到hook_arp_in,但是判斷sb的時候,始終為空,進入不到function( )里。
我的內(nèi)核版本是3.2.6。希望各位幫忙分析下

論壇徽章:
0
2 [報告]
發(fā)表于 2013-10-09 07:30 |只看該作者
沒人?自己頂頂。感覺這東西就是標(biāo)準的,按照格式來就不會出錯。但是真的沒有hook到數(shù)據(jù)包。是不是跟內(nèi)核的相關(guān)設(shè)置有關(guān)?

論壇徽章:
36
IT運維版塊每日發(fā)帖之星
日期:2016-04-10 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-16 06:20:0015-16賽季CBA聯(lián)賽之廣東
日期:2016-04-16 19:59:32IT運維版塊每日發(fā)帖之星
日期:2016-04-18 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-19 06:20:00每日論壇發(fā)貼之星
日期:2016-04-19 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-25 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-06 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-08 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-13 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-28 06:20:00每日論壇發(fā)貼之星
日期:2016-05-28 06:20:00
3 [報告]
發(fā)表于 2013-10-09 09:17 |只看該作者
回復(fù) 1# FlankerSky
  1.              unsigned int hook_arp_in(unsigned int hooknum,
  2.                                                 struct sk_buff **sb,
  3.                                                 const struct net_device *in,
  4.                                                 const struct net_device *out,
  5.                                                 int (*okfn)(struct sk_buff *))
復(fù)制代碼
看下這個 hook 接口的 skb 參數(shù)類型用的是否正確。


   

論壇徽章:
0
4 [報告]
發(fā)表于 2013-10-09 09:32 |只看該作者
具體還是得看一下內(nèi)核是如何處理arp的,看源碼吧。

論壇徽章:
0
5 [報告]
發(fā)表于 2013-10-09 09:55 |只看該作者
回復(fù) 3# Godbach


謝謝版主提醒,代碼是參考網(wǎng)上的,hook_arp_in()有個參數(shù)struct sk_buff **skb,改為struct sk_buff *skb(參考內(nèi)核里的相關(guān)代碼)后,真的好使了,能hook到arp的數(shù)據(jù)包了,但是還是不知道為什么?雙指針不是一樣嗎?

論壇徽章:
0
6 [報告]
發(fā)表于 2013-10-09 09:56 |只看該作者
回復(fù) 4# 混沌老仙

謝謝,參考了內(nèi)核的相關(guān)代碼,改了一下函數(shù)的參數(shù)形式 ,可以hook到arp了。

   

論壇徽章:
36
IT運維版塊每日發(fā)帖之星
日期:2016-04-10 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-16 06:20:0015-16賽季CBA聯(lián)賽之廣東
日期:2016-04-16 19:59:32IT運維版塊每日發(fā)帖之星
日期:2016-04-18 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-19 06:20:00每日論壇發(fā)貼之星
日期:2016-04-19 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-25 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-06 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-08 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-13 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-28 06:20:00每日論壇發(fā)貼之星
日期:2016-05-28 06:20:00
7 [報告]
發(fā)表于 2013-10-09 10:12 |只看該作者
回復(fù) 5# FlankerSky

參數(shù)類型都不一樣,怎么能保證好使呢。從 C 語言的角度上看,你多了一級解引用

   

論壇徽章:
0
8 [報告]
發(fā)表于 2013-10-09 10:45 |只看該作者
回復(fù) 7# Godbach

嗯,謝謝斑竹,明白了。剛才也看了下2.6.0的內(nèi)核源碼,確實,hook函數(shù)的接口發(fā)生變化了,所以才導(dǎo)致的上述錯誤。

論壇徽章:
36
IT運維版塊每日發(fā)帖之星
日期:2016-04-10 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-16 06:20:0015-16賽季CBA聯(lián)賽之廣東
日期:2016-04-16 19:59:32IT運維版塊每日發(fā)帖之星
日期:2016-04-18 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-19 06:20:00每日論壇發(fā)貼之星
日期:2016-04-19 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-04-25 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-06 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-08 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-13 06:20:00IT運維版塊每日發(fā)帖之星
日期:2016-05-28 06:20:00每日論壇發(fā)貼之星
日期:2016-05-28 06:20:00
9 [報告]
發(fā)表于 2013-10-09 11:35 |只看該作者
回復(fù) 8# FlankerSky
論壇里有多個帖子基本上都是像 LZ 這樣的問題,原因也一樣。

內(nèi)核接口不是穩(wěn)定了,不同版本之間都有可能變化。因此,使用一些實例代碼的時候,千萬要看清楚人家的內(nèi)核版本,以及自己的內(nèi)核版本,并比較一些重要接口是否發(fā)生了變化。


   

論壇徽章:
0
10 [報告]
發(fā)表于 2013-10-09 12:15 |只看該作者
回復(fù) 9# Godbach


  恩恩,,學(xué)習(xí)了!
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP