- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于netfilter的tcp网络包的过滤与修改基于netfilter的tcp网络包的过滤与修改
基于netfilter 的tcp 网络包的过滤与修改 一直对公司封掉mp3 文件的下载耿耿于怀,上次写的那个netfilter 驱动还是有点问题,修改后的后续tcp 网络包的序号还是有问题。最近有空, 仔细看了下内核里面的代码,结合别人你的代码研究一下。更正如下,改正之后打开网址/1.mp3 这个内核模块就可以自 动帮我把地址改为 /1.%6D%70%3 ,哈哈,这样就可以穿透公司的防火墙了,他们没有过滤这个地址。这样就可以打 开百度音乐播放器在线听歌了,不然会被过滤掉。哈哈希望不会很快被公司那些人检测到。 /* * widebright.c * * Created on: 2009-10-13 * Author: widebright */ #include linux/module.h #include linux/moduleparam.h #include linux/kernel.h #include linux/skbuff.h #include linux/ip.h #include linux/tcp.h #include net/tcp.h #include net/udp.h #include linux/netfilter.h #include linux/netfilter_ipv4.h #include net/sock.h #include net/netfilter/nf_nat.h #include net/netfilter/nf_nat_helper.h #include net/netfilter/nf_nat_rule.h #include net/netfilter/nf_conntrack.h #include net/netfilter/nf_conntrack_helper.h #include net/netfilter/nf_conntrack_expect.h MODULE_LICENSE(GPL); //用了nf_conntrack_tcp_update 函数要用这个遵守GPL 开放协议才能编译通过 //MODULE_LICENSE(copyright (c) 2009 widebright); MODULE_AUTHOR(widebright); MODULE_DESCRIPTION(widebrights netfilter); MODULE_VERSION(1.0); static void hex_dump(const unsigned char *buf, size_t len) { size_t i; for (i = 0; i len; i++) { if (i !(i % 16)) printk(\n); printk(%02x , *(buf + i)); } printk(\n); } char * is_mp3_request(char * start) { char data[4] = .mp3; char * i = start; i += 4; //跳过GET while (*i != *i != \n) i++; //查找网络地址最后的位置 if (*(int *) (i - 4) == *(int *) data) return i; else return NULL; } unsigned int check_link_address(unsigned int hooknum, struct sk_buff *skb, const struct net_device *in, const struct net_device *out, int(*okfn)( struct sk_buff *)) { char * payload = NULL; const struct iphdr *iph = NULL; /* struct udphdr _hdr, *hp = NULL; tcphdr 和 udphdr 开头的source dest 一样的, * 我们只用这个来获取的端口,所以用udphdr,避免skb_header_pointer 复制太多数据性能下降 * 也可以直接
您可能关注的文档
- 坚持经济党建两手抓,实现规范营运促发展坚持经济党建两手抓,实现规范营运促发展.doc
- 坂本一成设计师坂本一成设计师.ppt
- 坚持努力成功班会坚持努力成功班会.ppt
- 垂直运输设备施工方案垂直运输设备施工方案.doc
- 垄断资本主义的发展垄断资本主义的发展.ppt
- 垃圾运输问题垃圾运输问题.pdf
- 型角行程电动执行机构(智能型一体化)型角行程电动执行机构(智能型一体化).pdf
- 垫板级进模设计任务书垫板级进模设计任务书.doc
- 垃圾项目开发垃圾项目开发.pdf
- 型砂主要粘结剂概述型砂主要粘结剂概述.pdf
- 基于LDA—wSVM模型的文本分类研究木基于LDA—wSVM模型的文本分类研究木.pdf
- 基于MODIS反演数据的河套地区荒漠化研究_毛志春基于MODIS反演数据的河套地区荒漠化研究_毛志春.pdf
- 基于NETSNMP开发mib说明基于NETSNMP开发mib说明.pdf
- 基于SAS软件的高级RTF排版基于SAS软件的高级RTF排版.doc
- 基于RFID 的人员定位解决方案基于RFID 的人员定位解决方案.pdf
- 基于SIPOC扩展的十五步分析、确定过程的理解与应用(完整版)基于SIPOC扩展的十五步分析、确定过程的理解与应用(完整版).pdf
- 基于SI分析的高速数字接口拓扑结构设计基于SI分析的高速数字接口拓扑结构设计.pdf
- 基于SIR模型的传染病预测及最优控制分析基于SIR模型的传染病预测及最优控制分析.pdf
- 基于STM32的多路电压测量设计方案基于STM32的多路电压测量设计方案.pdf
- 基于STM32的LCD操作基于STM32的LCD操作.doc
最近下载
- 古典文献学第二章 文献的形成和流布.ppt VIP
- 2025年综合窗口岗位工作人员招聘考试笔试试题(附答案).docx VIP
- 纪念中国红军长征胜利89周年PPT课件.pptx VIP
- 2025年中国衬橡胶设备数据监测报告.docx
- (NEW)电子科技大学数学科学学院857概率论与数理统计历年考研真题汇编(含部分答案).pdf
- 中央民族大学非事业编制合同制职工招聘笔试试题及答案2021.docx VIP
- 哲理小故事 哲理小故事.doc VIP
- 2025中央民族大学非事业编制合同制职工招聘10人(第四批)笔试备考试题及答案解析.docx VIP
- (校级台账目录)“全国义务教育优质均衡发展县”督导评估台账目录(中小学通用稿-2024.03.30-修订).docx
- 2025成人高考专升本政治真题及答案.doc VIP
文档评论(0)