Доступна ли запись памяти ядра с помощью системного вызова?

Я знаю, что системные вызовы используются для связи между уровнем использования и уровнем ядра

Итак, это означает, что я могу записать память ядра с помощью системного вызова?

например, write() используется для записи памяти ядра

Но если то, что я думаю, доступно, это также относится к проблеме большой безопасности?

Если я не могу, почему?

1 ответ

Решение

Давайте разберем ваши вопросы один за другим.

Да, вы можете записывать в память ядра через системные вызовы напрямую, если вы реализовали тот, который позволял писать в произвольные места в памяти. Хотите ли вы чего-то подобного или почему - это другой вопрос. Нечто подобное может создать огромный риск для безопасности. Например, любой процесс может повысить свои привилегии или легко установить руткиты в ядре, используя системный вызов.

Однако в Linux есть интерфейс для чтения и записи в память ядра. Посмотри на /dev/kmem, Это позволяет вам открывать память ядра как "файл", искать и читать и записывать в нее.

Другие вопросы по тегам