Why do I get a zero Android kernel address?

1.4k views Asked by At

If I run:

busybox grep " _text" /proc/kallsyms

on my Android device, I get:

00000000 T _text

Does anybody know the reason?

1

There are 1 answers

0
Ishay Peled On

Android kernels generally do not expose symbol values.

Checkout this upstream for specific implementation and discussion.

tl;dr:

As exposing kernel symbol locations makes exploits easier (e.g. an attacker can look up the exact function he wants to change instead of browsing through the entire kernel image), the defaults in the Android OS are not to expose kernel symbols to unprivileged users

P.S

If you have root privileges on this device, you can do

echo 0 > /proc/sys/kernel/kptr_restrict

to disable this restriction.