1 Star 0 Fork 0

PIG-007 / kernelAll

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

kernelAll

Language: English | 中文简体

只用几个命令即可编译各个版本的内核,且qemu适配运行。

安装

cd ~/
git clone https://github.com/PIG-007/kernelAll.git
#git clone https://gitee.com/Piggy007/kernelAll.git
cd kernelAll
chmod a+x setup.sh
sudo ./setup.sh

使用方法

1.编译各版本内核

compileKernel 4.4.72

这里就代表编译内核为4.4.72版本的。

完成之后在~/kernelAll/kernelSource下可以找到对应版本的内核源码,这个用来编译模块,或者在调试的时候可以用gdb的dir功能来直接调试源码

image-20211102101950797

2.编译驱动模块

把驱动模块的源代码放到~/kernelAll/modFile/中,然后

compileModule kmod.c 4.4.72

这里就代表用刚才的编译好的4.4.72版本的内核源码来编译kmod.c,编译完成之后自动将kmod.ko放到rootfs文件系统中,并且重新打包。

3.添加文件进入文件系统

kernelPocCopy poc

这个即代表将poc文件放入rootfs文件系统中,然后重新打包。

4.启动QEMU

bootPwnKernel 4.4.72

这个即代表以当前的文件系统,使用qemu-system-x86_64启动刚刚编译好的4.4.72内核。

5.GDB附加调试

由于做pwn题时肯定需要附加调试,所以也提供了调试功能

bootPwnKernel 4.4.72 -g 1234

即以1234端口为调试端口,可供gdb附加调试。

扩展

做pwn题时经常需要修改init和qemu启动选项,所以这里也提供相关的更新功能

1.更新init

这个可以直接更新在~/kernelAll/中的init文件,然后输入updateKernelAll命令即可。

image-20211102104712173

2.更新qemu启动项

这个需要在~/kernelAll/kernelCMD/bootPwnKernel文件中更新

找到如下位置,对应修改所需选项即可,然后再输入updateKernelAll命令更新即可。

image-20211102110003180

本人水平比较菜,如有错误或者bug,请师傅们多担待,欢迎提出相关意见。

空文件

简介

暂无描述 展开 收起
Shell 等 3 种语言
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/Piggy007/kernelAll.git
git@gitee.com:Piggy007/kernelAll.git
Piggy007
kernelAll
kernelAll
master

搜索帮助