免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: superhappy1
打印 上一主题 下一主题

Linux内核的代码段是只读的吗?进程的代码段呢? [复制链接]

论坛徽章:
0
21 [报告]
发表于 2010-07-13 12:12 |只看该作者
请查看内核原码

论坛徽章:
0
22 [报告]
发表于 2010-07-13 13:12 |只看该作者
请查看内核原码
linux初学三月 发表于 2010-07-13 12:12



    查看过了,请参见第十楼。
你看哪个函数?

论坛徽章:
0
23 [报告]
发表于 2010-07-13 13:43 |只看该作者
回复 21# linux初学三月

而且在kernel的_text开始的地方我是可以更改内容的,这不就说明是可写的吗?见11楼。

论坛徽章:
0
24 [报告]
发表于 2010-07-13 17:32 |只看该作者
回复  linux初学三月

而且在kernel的_text开始的地方我是可以更改内容的,这不就说明是可写的吗?见11楼 ...
kgn28 发表于 2010-07-13 13:43



    只读是在运行的时候只读,不是静态的可以更改

论坛徽章:
0
25 [报告]
发表于 2010-07-13 17:48 |只看该作者
回复 24# linux初学三月


    什么意思?运行时只读?系统启动不就算是运行时,那么我在系统运行时候改了_text+1中的内容,不就算是在运行时改了代码段的内容?

论坛徽章:
11
未羊
日期:2013-12-16 12:45:4615-16赛季CBA联赛之青岛
日期:2016-04-11 19:17:4715-16赛季CBA联赛之广夏
日期:2016-04-06 16:34:012015亚冠之卡尔希纳萨夫
日期:2015-11-10 10:04:522015亚冠之大阪钢巴
日期:2015-07-30 18:29:402015亚冠之城南
日期:2015-06-15 17:56:392015亚冠之卡尔希纳萨夫
日期:2015-05-15 15:19:272015亚冠之山东鲁能
日期:2015-05-14 12:38:13金牛座
日期:2014-12-04 15:34:06子鼠
日期:2014-10-16 13:40:4715-16赛季CBA联赛之八一
日期:2016-07-22 09:41:40
26 [报告]
发表于 2010-07-13 18:13 |只看该作者
代码段谈不上可不可写, 代码段是指保存在 cs 寄存器的段, 其和数据段映射到同一块内存单元上, 所谓代码段不可写, 指的是不可以通过cs寄存器来写, 然而通过 ds 寄存器, 就可以通过段描述符检查这一关了。

然后就到了检查页表权限了, 一般来说, 代码所在的页, 其可写标志是置为0的, 所以可读, 可执行, 但不可写。 然而通过 mmap 调用, 可以重写这个标志, 这样, 通过 ds 寄存器与 mmap, 就可以向代码段覆盖任意指令, 写完后再将写权限拿掉, 就是常用的 hack 手段了

论坛徽章:
0
27 [报告]
发表于 2010-07-13 20:09 |只看该作者
回复 26# zylthinking


    那么如何解释10楼的代码?

论坛徽章:
11
未羊
日期:2013-12-16 12:45:4615-16赛季CBA联赛之青岛
日期:2016-04-11 19:17:4715-16赛季CBA联赛之广夏
日期:2016-04-06 16:34:012015亚冠之卡尔希纳萨夫
日期:2015-11-10 10:04:522015亚冠之大阪钢巴
日期:2015-07-30 18:29:402015亚冠之城南
日期:2015-06-15 17:56:392015亚冠之卡尔希纳萨夫
日期:2015-05-15 15:19:272015亚冠之山东鲁能
日期:2015-05-14 12:38:13金牛座
日期:2014-12-04 15:34:06子鼠
日期:2014-10-16 13:40:4715-16赛季CBA联赛之八一
日期:2016-07-22 09:41:40
28 [报告]
发表于 2010-07-14 09:49 |只看该作者
回复  zylthinking


    那么如何解释10楼的代码?
kgn28 发表于 2010-07-13 20:09


汗, 没仔细看代码, 现在我也纳闷了

论坛徽章:
0
29 [报告]
发表于 2010-07-14 10:41 |只看该作者
回复 28# zylthinking


    我指的代码段并不是保护模式下分段的那个段的概念,而是说‘内核代码存放的内存区域’,也就是EIP指向的地方。(当然这个其实也是代码段的概念,只不过段限长度不去考虑)。

论坛徽章:
0
30 [报告]
发表于 2010-07-15 10:43 |只看该作者
回复 1# superhappy1


Linux内核代码并非只读的,参见10楼的代码,很多Rootkit的攻击目标就是内核代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP