免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3387 | 回复: 8
打印 上一主题 下一主题

【求助】linux C 打桩 去页保护 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-07-11 23:39 |只看该作者 |倒序浏览
想实现linux下面的C程序函数打桩;
从网上找来一个思路就是修改程序的文本区,而文本区是只读的,首先是要去页保护;
问题就在这里,求在linux X86-64下怎样去页保护??

论坛徽章:
3
处女座
日期:2015-03-18 14:35:45羊年新春福章
日期:2015-03-18 14:48:23午马
日期:2015-03-18 14:51:09
2 [报告]
发表于 2012-07-12 08:20 |只看该作者
修改描述符表属性

论坛徽章:
0
3 [报告]
发表于 2012-07-12 15:12 |只看该作者
如何修改?请明示。因为想做成移植性强点,不希望改变内核。
回复 2# mr_sev


   

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
4 [报告]
发表于 2012-07-12 16:39 |只看该作者
回复 3# bzchan


    神马打桩? 这年头真是神马专业术语都有, 我孤陋寡闻, 没听说过了.

    要修改页表什么的, 代码必须运行在特权级. 可以写一个内核驱动模块或者写增加一个系统调用来完成这样的事情, 不过可不是那么easy的事情, 在那之前至少也要知道内核是怎么干的吧.


论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
5 [报告]
发表于 2012-07-12 17:11 |只看该作者
本帖最后由 starwing83 于 2012-07-12 17:14 编辑

回复 1# bzchan


    你如果只是想去掉文本区的只读,是不是可以试试mremap……毕竟程序代码本身也是被mmap到进程空间的……

UPDATE:好吧想当然了……mprotect……

论坛徽章:
3
处女座
日期:2015-03-18 14:35:45羊年新春福章
日期:2015-03-18 14:48:23午马
日期:2015-03-18 14:51:09
6 [报告]
发表于 2012-07-12 17:17 |只看该作者
回复 3# bzchan


特权级为0才能修改,所以需要添加系统中断门获取特权级,然后系统调用就可以了

论坛徽章:
3
处女座
日期:2015-03-18 14:35:45羊年新春福章
日期:2015-03-18 14:48:23午马
日期:2015-03-18 14:51:09
7 [报告]
发表于 2012-07-12 17:21 |只看该作者
回复 4# captivated


    说难也不是很难,简单也不简单

论坛徽章:
3
15-16赛季CBA联赛之山东
日期:2016-10-30 08:47:3015-16赛季CBA联赛之佛山
日期:2016-12-17 00:06:31CU十四周年纪念徽章
日期:2017-12-03 01:04:02
8 [报告]
发表于 2012-07-12 18:02 |只看该作者
回复 5# starwing83


    mmap是可以的, 不过只能mmap另外一个二进制文件... 要修改进程本身是没办法的.

论坛徽章:
5
狮子座
日期:2013-08-20 10:12:24午马
日期:2013-11-23 18:04:102015年辞旧岁徽章
日期:2015-03-03 16:54:152015亚冠之德黑兰石油
日期:2015-06-29 18:11:1115-16赛季CBA联赛之新疆
日期:2024-02-21 10:00:53
9 [报告]
发表于 2012-07-12 18:06 |只看该作者
回复 8# captivated


    mprotect应该可以吧……而且似乎不需要特权权限……
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP