不用虚拟机,使用windows调试linux内核

1.安装msys2

https://www.msys2.org/

2.打开msys2 ucrt64安装qemu和gdb还有gef

pacman -S mingw-w64-ucrt-x86_64-qemu

pacman -S gdb

pacman -S binutils

用下面的脚本安装gef

bash 复制代码
#!/usr/bin/env bash

set -e

# check dependencies
if [ ! "$(command -v python3)" ]; then
	echo "GEF requires Python3 installed."
	exit 1
fi

# Backup gdbinit if any
if [ -f "${HOME}/.gdbinit" ]; then
    mv "${HOME}/.gdbinit" "${HOME}/.gdbinit.old"
fi

tag=$(python3  -X utf8 -c 'import urllib.request as r,json as j; x=j.loads(r.urlopen("https://api.github.com/repos/hugsy/gef/tags").read()); print(x[0]["name"])')
python3 -X utf8 -c "import urllib.request as r; x=r.urlopen('https://github.com/hugsy/gef/raw/${tag}/gef.py').read(); print(x.decode('utf-8'))" > ${HOME}/.gef-${tag}.py

if [ -f "${HOME}/.gef-${tag}.py" ]; then
    echo "source ~/.gef-${tag}.py" > ~/.gdbinit
    exit 0
else
    echo "GEF was not properly downloaded"
    exit 2
fi

官方版本里面缺少-X utf8会出错。

3.去github下载一键包,如:

https://github.com/bsauce/kernel-exploit-factory/tree/main/CVE-2017-11176

注意start.sh里面的-enable-kvm要去掉,因为windows不支持。

4.在msys2 ucrt64里面运行start.sh

5.打开另一个窗口,运行gdb_kernel.sh

相关推荐
智象科技1 分钟前
化繁为简:一体化运维平台的效率革命
运维·it运维·一体化运维·itsm
萧技电创EIIA5 分钟前
威纶通触摸屏入门指南(从安装到入门使用)
运维·服务器·网络
我是koten6 分钟前
用Ansible查找文件并记录文件名的playbook
linux·运维·centos·ssh·ansible·find·playbook
wanhengidc12 分钟前
在线服务器的应用场景都有哪些?
运维·服务器·科技·游戏·智能手机·云计算
炼丹精神小伙26 分钟前
ssh通过多跳板机连服务器
运维·服务器·ssh
吕了了1 小时前
116Dism++备份系统,如何选择性的备份文件?
运维·windows·电脑·系统
清平乐的技术专栏1 小时前
电脑核心参数一次讲透
运维
爱倒腾的老唐1 小时前
02、打不开某个网站
windows·笔记·电脑
云qq1 小时前
x86操作系统19——键盘驱动
linux·c语言·汇编
测试人社区—小叶子1 小时前
低代码平台测试秘籍:OutSystems组件校验法则
运维·网络·人工智能·测试工具·低代码·自动化