iot rootkit 学习 week2-1

这次主要是关于Linux内核编程

Loadable Kernel Module Basics

何为可加载的内核模块?
1
特别是在Linux系统中
分为用户空间,内核空间还有硬件空间。
其中用户的请求只能通过内核来与硬件交互
而内核是通过设备的驱动来与内核驱动
我们可以编写一些内核模块来提升内核能力
这些我们编写的模块就叫做LKM即Loadable Kernel Module

LKM <-> Kernel

一般的内核模块就是设备驱动
比如说无线遥控车上的
还有很多fs的驱动啊或者说有关安全方面的

编程

2
注释都加上了
然后是makefile
这边遇上了很多问题。。。。。。。
首先编译错误。。。
看了半天才发现英文单词拼错了。。。
应该是AUTHOR
路径的话我写的是KERNEL_ROOT=/usr/src/linux-headers-4.15.0-46-generic make
和作者的不一样
搞定后可以查看
3
然后就能玩了
4
最后小提一下KERNEL_ROOT=/usr/src/linux-headers-4.15.0-46-generic make
是生成模块
而要删除要KERNEL_ROOT=/usr/src/linux-headers-4.15.0-46-generic make clean
看完了
看完了
看完了

最近都块自闭了。。。
pwn好难啊
我想re啊啊啊

文章目录
  1. 1. Loadable Kernel Module Basics
  2. 2. LKM <-> Kernel
  3. 3. 编程
|