Tôi không biết nhiều về nhân Linux và tôi có một số câu hỏi.
Mục đích chính của việc tách bộ nhớ kernel khỏi bộ nhớ không gian người dùng là gì? Để chắc chắn rằng một ứng dụng người dùng không thể làm bất cứ điều gì xấu cho kernel?
Có bao nhiêu cách để một ứng dụng cấp người dùng chuyển điều khiển sang kernel? Những gì tôi có thể đưa ra bao gồm (1) gọi một cuộc gọi hệ thống, (2) ánh xạ bộ nhớ vào kernel (nhưng tôi nghĩ mmap () cũng là một cuộc gọi hệ thống) và (3) đang tải một mô-đun hạt nhân (nhưng tôi đoán lsmod cũng gọi một số cuộc gọi hệ thống). Tôi có đúng không? Có cách nào khác mà tôi bỏ lỡ không?
Có bao nhiêu cách để tấn công kernel? Tôi có thể có một số chi tiết ngắn gọn về họ?
Nếu tôi có được quyền root, điều đó có nghĩa là tôi hoàn toàn kiểm soát kernel? Cụ thể, tôi có thể làm bất cứ điều gì tôi muốn với kernel và phần cứng? Hoặc tôi vẫn có quyền lực hạn chế trên kernel?
Tôi thực sự đánh giá cao nếu ai đó có thể giúp tôi tìm ra câu trả lời cho những câu hỏi này.