一些Android sys_call_table获取的方法

原创 2016年06月01日 00:30:43

前天为这个问题纠结好久,搜索了好多方法,成功的不多。这里记下前天用的

在su的情况下,用su权限执行

echo 0 > /proc/sys/kernel/kptr_restrict

cat  /proc/kallsyms | grep sys_call_table 

Android4.4之前的版本可以如下获取

unsigned long* get_vector_swi_addr()
{
  const void *swi_addr = 0xFFFF0008;
  unsigned long vector_swi_offset = 0;
  unsigned long vector_swi_instruction = 0;
  unsigned long *vector_swi_addr_ptr = NULL;
 
  memcpy(&vector_swi_instruction, swi_addr, sizeof(vector_swi_instruction));
  vector_swi_offset = vector_swi_instruction & (unsigned long)0x00000fff;
  vector_swi_addr_ptr = (unsigned long *)((unsigned long)swi_addr + vector_swi_offset + 8);
  return *vector_swi_addr_ptr;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

获取Linux 2.6.x sys_call_table

网上搜索了一下, 发现此代码主要原理是通过搜索 int 0x80的中断服务程序中的sys_call_table来实现.  在linux中所有的syscall都是调用int 0x80, int 0x80...

linux内核:sys_call_talbe hook案例(通讯录读取hook的教程)

最近在学习安卓goldfish的内核hook,把最近半个月的成果写个教程,供大家分享,希望大家不要走弯路。 关于源码下载、内核编译、动态插入内核等等再次不介绍了,可以参考其他的博客,里面写的很详细,...

Linux 2.6版内核中通过模块获取sys_call_table地址的方法

本文主要介绍在Linux 2.6版的内核中实现基地址修改的方法。所有代码我都在基于2.6.19版内核的Fedora Core 6上进行了测试。 Linux 2.6版的内核出于安全的考虑没有将系统调用...

多种方法获取sys_call_table(linux系统调用表)的地址

一.方法一:常用方式,也是一google一堆的方式我们首先需要找到call table-with-offset的特征,先看下面的代码syscall_call:         call *sys_c...
  • dog250
  • dog250
  • 2011年05月28日 14:06
  • 9152

linux中导出sys_call_table解决方法

最近在学linux-kernel编程,刚看到改写系统函数。 文章介绍说,在2.4内核中,可以直接导出sys_call_table,这样的话,很容易在改变系统函数从而做邪恶的事。 但是从2.6开始,...

linux sys_call_table 初始化

Linux Kernel代码艺术——数组初始化 前几天看内核中系统调用代码,在系统调用向量表初始化中,有下面这段代码写的让我有点摸不着头脑: const sys_call_ptr_t sys_...

截获系统调用(sys_call_table/VFS)

转自http://blog.chinaunix.net/uid-20196318-id-28808.html 方法1:修改系统调用表(适用于linux-2.4内核) 内核使用sys_call_tab...

Linux 2.6 中导出sys_call_table表修改系统调用函数

Linux中实现系统调用

[Android L]SEAndroid开放设备文件结点权限(读或写)方法(涵盖常用操作:sys/xxx、proc/xxx、SystemProperties)热门干货

温馨提示      建议你先了解一下上一篇博文([Android L]SEAndroid增强Androd安全性背景概要及带来的影响)所讲的内容,先对SEAndroid窥个全貌,然后再继续本节...

[Android L]SEAndroid开放设备文件结点权限(读或写)方法(涵盖常用操作:sys/xxx、proc/xxx、SystemProperties)热门干货

[Android L]SEAndroid开放设备文件结点权限(读或写)方法(涵盖常用操作:sys/class/xxx、proc/xxx、SystemProperties)热门干货 自Android ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:一些Android sys_call_table获取的方法
举报原因:
原因补充:

(最多只允许输入30个字)