免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: mkshtk

[内核模块] 内核如何实现实现替换下载 [复制链接]

论坛徽章:
6
金牛座
日期:2013-10-08 10:19:10技术图书徽章
日期:2013-10-14 16:24:09CU十二周年纪念徽章
日期:2013-10-24 15:41:34狮子座
日期:2013-11-24 19:26:19未羊
日期:2014-01-23 15:50:002015年亚洲杯之阿联酋
日期:2015-05-09 14:36:15
发表于 2012-09-05 07:48 |显示全部楼层
回复 4# mkshtk
不太明白,斑竹能否说的明白点啊?折腾一天了,到现在也只想出一个思路.....还有如果可以麻烦帮我解答下上面我的疑问,万分感谢斑竹!

1、在什么时候进行判断比较好,是根据a的请求判断还是c返回的数据包?
当然是请求包了
2、内核中去sk_buff判断其中的关键字如:“.exe”“.zip”是否可行?ip_input.c,ip_output.c,ip_foward.c在哪里修改更好?
可行。哪里修改都不好,添加一个hook操作
3、判断有下载请求伪造数据包后是否需要断开a与c之间的连接?
不需要的。操作系统会自己断掉的
4、判断有下载请求后如何让b伪造数据包并发送?用内核从新构建数据包?
既可以alloc一个新的skb,然后复制相应的内容;也可以直接修改原来的skb   

评分

参与人数 1可用积分 +6 收起 理由
Godbach + 6 赞一个!

查看全部评分

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2012-09-05 10:05 |显示全部楼层
回复 10# 瀚海书香
瀚海兄一般不这么给下属安排工作吧 :wink:


   

论坛徽章:
0
发表于 2012-09-05 17:49 |显示全部楼层
回复 11# 瀚海书香


    首先谢谢两位版主的指点,因为是编程小白也从来没接触过内核,花了一天时间看了netfilter方面的资料,现在会hook然后判断,但是版主说的替换原来的数据部分就不懂怎么实现了。是不是说我还要接受c发过来的下载文件的数据包,替换里面的data部分呢?还有就是版主说的redirect应该在哪一步去实现呢?能不能这样:b接收到a的下载请求,直接根据a请求包的syn值构造一个合适的构造数据包发送给a呢?个人刚接触编程,能力有限,公司也没有人弄这块,可能问题过于小白,希望版主多多见谅~~~

论坛徽章:
6
金牛座
日期:2013-10-08 10:19:10技术图书徽章
日期:2013-10-14 16:24:09CU十二周年纪念徽章
日期:2013-10-24 15:41:34狮子座
日期:2013-11-24 19:26:19未羊
日期:2014-01-23 15:50:002015年亚洲杯之阿联酋
日期:2015-05-09 14:36:15
发表于 2012-09-05 19:29 |显示全部楼层
回复 12# Godbach
现在在新单位,没有下属了

在老单位的时候,也不会给大家分配不熟悉的领域作为主要工作的。

   

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2012-09-05 23:35 |显示全部楼层
回复 13# mkshtk

skb 这个核心的的数据结构你要了解。这是前提。

瀚海版主的建议就是修改你截获到的 GET 请求,构造一个 Redirect 应答。GET 请求和应答不再在于 7 层的内容不一样,而且数据包的发送方和接收方也不一样,这些都是修改数据包时要考虑的地方。

   

论坛徽章:
0
发表于 2012-09-08 16:12 |显示全部楼层
回复 15# Godbach


    谢谢版主的提醒,这两天看了版主以前写的关于构造数据包的帖子,试着修改get请求,然后发送回去。由于本人太笨,在构造redirect包的时候遇到问题解决不了。ack_seq的值怎么弄?是在get请求包的基础上+1?redirect到其他的地址后能直接下载么?tcp不是三次握手的么?redirect的结构是不是这样的:HTTP/1.1 302 Found   Date:....  Server:....  Location:.... Content-type:...  ?  还有就是不知道版主有没有关于redirect的结构方面的文章推荐下,谢谢~

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
发表于 2012-09-09 01:40 |显示全部楼层
回复 16# mkshtk

你的问题都说明了一些基础知识的欠缺,比如 TCP 协议号的维护、HTTP 协议的 Redirect 应答等。建议你系统的加强一下。

   

论坛徽章:
0
发表于 2012-09-12 15:58 |显示全部楼层
回复 17# Godbach


    感谢版主,TCP序列号的维护已经解决,单关于redirect方面的真心没找到合适的资料,能否推荐下关于内核构建http重定向方面的资料,谢谢

论坛徽章:
0
发表于 2012-09-13 10:10 |显示全部楼层
两位版主不要好心做坏事啊!
楼主这不是想挂载木马的吧?
挂马的人的不得好死啊!

论坛徽章:
0
发表于 2012-09-13 10:24 |显示全部楼层
回复 19# hmsghnh


    不是挂马,工作需要。而且楼上你说话很幼稚~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP