免费注册 查看新帖 |

Chinaunix

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

[新手入门] 请问AIX如何进行系统调用重定向啊。可以付给报酬。 [复制链接]

论坛徽章:
0
31 [报告]
发表于 2009-09-16 17:04 |只看该作者

回复 #29 younglovej 的帖子

不好意思,进错目录了,我进的是xlc/下runtime,应该是xlc/usr/sys/xxx.image下,
气死人了。

论坛徽章:
0
32 [报告]
发表于 2009-09-16 22:12 |只看该作者
1.要替换system call 可以参考http://www.ibm.com/developerwork ... y/au-kernelext.html 里的办法来扩展内核了。

2.如果还想调用原来的,system call 我现在只知道的是,可以通过 汇编来做了,可以在c里 和汇编内联应该问题不大。
下面是网上找的例子好像有点不对,syscall number 是存储在 r0 里,参数就是 r3,r4,r5 .....,然后通过 sc 调用。可以参考一下
Assembler Language Reference。
网上找的一个shell code的例子可看看

Linux (IA32)

mov eax, 0x01 ; Move system call for exit() into eax. Linux = 1
mov ebx, 0x05 ; Move value 5 into ebx register
int 0x80 ; Activate the system call exit(ebx) or exit(5)

OS X (PowerPC)

li r0, 0x01 ; Load system call for exit() into r0. OS X = 1
li r3, 0x05 ; Load value 5 into r3
sc ; Activate the system call exit(r3) or exit(5)

论坛徽章:
0
33 [报告]
发表于 2009-09-17 22:07 |只看该作者

回复 #32 guojianlee 的帖子

关于SHELLCODE的例子我也找过,可惜太难了,还得学AIX汇编,我在WINDOWS下是用汇编做的,但是网上说的多,呵呵。
不过最后用老方法成功了,我试验成功了unlink和kopen,呵呵,估计其它的也没有什么问题。
这里要感谢guojianlee大侠的帮助了,没有他的帮助我也完不成了,最后感谢CCTV、MTV、CHINAUNIXTV给我这个机会。
WINDOWS/SOLARIS/LINUX/AIX都实现了,下一步开始HP/UNIX。。。。。

[ 本帖最后由 hps9743003 于 2009-9-17 22:09 编辑 ]

论坛徽章:
0
34 [报告]
发表于 2009-09-17 23:43 |只看该作者
可以通过 ld 的 rename  和加静态链接替换系统函数。哪天有时间做个实验

[ 本帖最后由 guojianlee 于 2009-9-18 00:54 编辑 ]

论坛徽章:
0
35 [报告]
发表于 2013-09-27 08:02 |只看该作者
回复 1# hps9743003


拦截aix系统调用的最新技术:
http://bbs.chinaunix.net/thread-4100145-1-1.html
   

论坛徽章:
2
技术图书徽章
日期:2014-04-23 10:23:38射手座
日期:2014-08-14 17:00:52
36 [报告]
发表于 2014-01-13 18:03 |只看该作者
回复 33# hps9743003


    请问您用什么方法进行了系统调用替换?

论坛徽章:
0
37 [报告]
发表于 2016-09-13 15:34 |只看该作者
回复 32# guojianlee

参考上面教程编写新的内核扩展没有问题,已实践。
现在需要对原有系统调用拦截,网上看到有前辈介绍的一种方案为通过两个内核扩展组合实现:
内核扩展一对原系统调用的实现做封装,并导出,名称为新名称;
内核扩展二使用内核扩展一的功能,并能接管原系统调用,名称与原系统调用名称相同。

那么有几个细节问题没搞懂:
1、新写的内核扩展二如何才能接管已有的系统调用呢?Makefile中的选项-bE如何指定?/usr/lib/syscalls.exp ?
2、新写的内核扩展二的名称应该与已有的系统调用名称一致吗?
3、新写的内核扩展二要使用内核扩展一的接口,直接在Makefile的选项-bI中指定内核扩展一的exp文件就可以了吗?


冰天雪地裸身跪求大侠赐教!  


(度娘谷哥也不好使,书店里也没找到AIX相关的书,IBM developerWork上零零碎碎的知识平凑了几日还是无实质进展)

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP