免费注册 查看新帖 |

Chinaunix

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

突破linux内核模块验证 [复制链接]

论坛徽章:
0
发表于 2009-12-25 19:41 |显示全部楼层
原帖由 W.Z.T 于 2009-12-25 17:59 发表


很容易oops?   呵呵, 不见得, 文章已经说的很清楚了, 大内核版本, 函数接口都不会变很多,尤其向AS5-92, AS5-128之类的版本。

我说很容易 oops,是说在接口不同的情况下会报错,不会在你自己不知情的情况下被强行加载
当然,如果你一定要 modprobe -f xxxx.ko 的话当然也很容易 oops
但对于没有任何提示的内核来说,没有提示自动加载比有提示却强行加载的情况下更容易 oops

另外恕我无知,我还真没见过不能 modprobe -f 而用兄弟的方法却可以加载的模块,兄弟能否提供一个让我测试一下?

论坛徽章:
0
发表于 2009-12-25 21:15 |显示全部楼层

  1. #include <linux/kernel.h>
  2. #include <linux/module.h>
  3. #include <linux/init.h>
  4. #include <linux/version.h>
  5. #include <linux/string.h>
  6. #include <linux/list.h>

  7. MODULE_LICENSE("GPL");
  8. MODULE_AUTHOR("wzt");

  9. struct module *m = &__this_module;

  10. int print_module_test(void)
  11. {
  12.         struct module *mod;

  13.         list_for_each_entry(mod, &m->list, list) {
  14.                 printk("%s\n", mod->name);
  15.         }
  16.         return NULL;
  17. }

  18. static int list_print_init(void)
  19. {
  20.         printk("load list_print module.\n");

  21.         print_module_test();

  22.         return 0;
  23. }

  24. static void list_print_exit(void)
  25. {
  26.         printk("unload list_print module.\n");
  27. }

  28. module_init(list_print_init);
  29. module_exit(list_print_exit);
复制代码


你可以在as5.2下编译, 然后到as5.4或到as4.7上看看能直接安装不? 前提是要开启CONFIG_MODVERSIONS选项。

论坛徽章:
0
发表于 2009-12-25 22:23 |显示全部楼层
是编译的环境需要开启 CONFIG_MODVERSIONS,还是加载模块的内核需要开启 CONFIG_MODVERSIONS?

论坛徽章:
0
发表于 2009-12-26 07:40 |显示全部楼层
原帖由 platinum 于 2009-12-25 22:23 发表
是编译的环境需要开启 CONFIG_MODVERSIONS,还是加载模块的内核需要开启 CONFIG_MODVERSIONS?


加载模块的内核需要开启 CONFIG_MODVERSIONS。 默认的AS系列内核都已经打开这个选项了。

论坛徽章:
0
发表于 2009-12-27 08:34 |显示全部楼层
又仔细看了一次文章,真不好意思是我之前没有完全理解你的意图
这个方法可是够危险的啊,不知道 2.6.31 以后的内核会不会再次有针对性的修正……

论坛徽章:
7
丑牛
日期:2013-10-18 14:43:21技术图书徽章
日期:2013-11-03 09:58:03辰龙
日期:2014-01-15 22:57:50午马
日期:2014-09-15 07:04:39丑牛
日期:2014-10-16 14:25:222015年亚洲杯之伊朗
日期:2015-03-16 10:24:352015亚冠之城南
日期:2015-05-31 09:52:32
发表于 2009-12-29 18:35 |显示全部楼层
这个高版本ko到低版本好使吗?2.6.26到2.6.25 PCI的网卡驱动,PC上做试验麻烦死了.

论坛徽章:
0
发表于 2009-12-30 11:04 |显示全部楼层
这个很好很强大,应该多看看理解一下,但是我怎么收藏呢

论坛徽章:
0
发表于 2010-01-06 15:12 |显示全部楼层
楼主最好可以再开篇醒目的位置描述一下这种绕过机制的场景,免得误导读者。
linux内核模块的这种验证机制本意是好的,保证其健壮性,但其实现机制是比较差的,

论坛徽章:
0
发表于 2010-01-06 15:21 |显示全部楼层
I AM BLACKHAT.

论坛徽章:
0
发表于 2010-01-11 00:33 |显示全部楼层
好东西,收藏一下!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP