Я позже напишу достаточно обстоятельно, а пока в 2 слова (время позднее) в чём вопросы:
1. какие имена ядра из всех имён /proc/kallsyms экспортируются, а какие - нет, т.е. какие вызовы (может, и структуры данных) ядра можно использовать в программном коде своих модулей ядра, а какие не получится?
2. утверждается, что с версий ядра 2.6.х таблица системных вызовов ядра не экспортируется, вот эта:
Код: Выделить всё
[olej@notebook etc]$ cat /proc/kallsyms | grep sys_call_table
c07ab3d8 R sys_call_table
но уже предлагались способы (хакерские) "добычи" в коде модуля адреса этой таблицы... мне тоже кажется, что есть на то способы...
3. а это даёт путь подмены кода системных вызовов Linux, что а). даёт возможность для вирусописателей + б). может быть использовано и в созидательных целях, например для разного рода мониторинга...
P.S. я уже подробно описал постановку задачи ... в другом месте: http://linuxforum.ru/viewtopic.php?id=18789, если кого интересует, может смотреть там ... сюда же я собираюсь выбрасывать только относительно "чистый" материал, резюме