Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
like-dbg — 完全 Docker 化的 Linux 内核调试环境 | Kitploit
工具/GitHubGitHub/0xricksanchez/like-dbg
漏洞利用调试器模糊测试CTF二进制利用
GitHub0xricksanchez/like-dbg

like-dbg

完全 Docker 化的 Linux 内核调试环境

查看仓库
770571620天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

LIKE-DBG

Code style: black Build Status: flake8 Build Status: shellcheck Build Status: hadolint codecov License: MIT GitHub Release

LIKE-DBG (LInux-KErnel-DeBuGger) 旨在自动化搭建 Linux 内核调试环境时那些繁琐的步骤。 我开始深入研究内核漏洞利用领域,发现现有解决方案不够好用。 因此,本项目试图让正式开始研究之前的所有必要预备步骤尽可能轻松有趣。 从构建内核、在模拟环境中运行内核,到附加调试器,所有步骤都在 docker 容器内透明地完成,以将系统要求降至最低。 目前,以下每个步骤都有一个专用的 docker 容器:

  • 构建内核
  • 创建可与内核配合使用的根文件系统
  • 作为_被调试对象(debuggee)_启动内核 + 文件系统
  • 作为_调试器(debugger)_附加到内核

注意事项

由于该项目仍处于早期阶段,预计内容会快速变化,同时也会不断引入破坏性变更。 主要的改进点包括:

  • 在 x86_64 和 arm64 之外,逐步实现真正的多架构支持
  • 扩展内核构建器,使其不仅能成功构建最新™内核
  • 添加 Android 内核支持
  • 添加(集成)测试
  • 进一步提升调试体验

功能特性

好的一面是,尽管处于早期阶段,一些有用的功能已经具备:

  • 通用:
    • 得益于每一步的容器化,宿主系统要求极低
    • 易于理解的 configs/user.ini 配置文件,可实现高度可定制的会话
      • 也可以通过命令行针对不同的调试环境提供不同的配置!
    • 专为处理 Linux 内核漏洞利用挑战而设计的 CTF 运行器
      • ctf/misc 目录中存放了一些在 CTF 中很有用的小脚本
    • 代码质量保障:
      • 用于 Python 代码的 black 格式化工具
      • 用于所有 Python 代码的 flake8 检查器
      • 用于 Shell 脚本的 shellcheck 检查器
      • 用于 Dockerfile 的 hadolint 检查器
    • 与操作系统无关,意味着它应该能在以下系统上顺利运行:
      • Debian/Ubuntu
      • Arch Linux/Manjaro
      • Fedora
  • 内核构建器:
    • 多架构:x86_64、arm64
    • 可选择使用 gcc 或 clang 构建内核
    • 配置模式:
      • generic-mode(通用模式),
      • syzkaller-mode(syzkaller 模式),
      • custom-mode(自定义模式),或
      • 提供可用的内核配置
    • 细粒度的版本控制,可基于以下版本构建:
      • 提交哈希
      • 发布标签(例如:5.10-rc)
      • 主版本号-次版本号-修订号(例如:5.10.77)
    • 能够自动应用补丁文件
    • 具备添加自定义内核模块的基本能力
  • 根文件系统构建器:
    • 由 debootstrap 驱动
    • 自动生成与内核架构相匹配的文件系统
    • 可自定义:
      • 文件系统中所需的软件包
      • 作为一切基础环境的 Debian 发行版本
  • 被调试对象(Debuggee):
    • 由 QEMU 驱动
    • 可在 configs/*.ini 文件中自定义 QEMU 运行时选项。
  • 调试器(Debugger):
    • 由 GDB(多架构) 驱动,可搭配
      • GEF 和 GEF-extras,或
      • pwndbg
    • 允许用户在 io/scripts/gdb_script 中指定 GDB 脚本,以获得针对特定场景定制的调试体验

环境要求

要开始使用,你需要确保系统已满足以下要求:

  • docker
  • tmux
  • python>=3.11
  • poetry # https://python-poetry.org/docs/

建议不要以 root 用户身份运行,例如在 VPS 上进行测试时。 以 root 运行也许没问题,但总的来说,我强烈建议创建一个专用的非 root 用户,并将其加入 docker 和 sudo 组!

注意:如果你使用的是自定义 TMUX 配置,请确保第一个窗格从 0 开始!

可选工具

本节介绍的工具_并非_运行 LIKE-DBG 所必需,但拥有它们会非常方便,在调试或编写漏洞利用时能提供很大帮助。

  • musl-gcc
  • ctags
  • ropr

安装

在 like-dbg 目录中运行 poetry install

配置

微调内核调试体验是本项目的目标之一。 目前,所有可调选项都暴露在两个配置文件中:configs/system.ini 和 configs/user.ini。 某些字段建议不要修改,因为它们主要用于开发目的。 不过,所有用于按需定制环境的选项都应该是显而易见的,因为它们都带有简短的注释。

使用方法

注意: 首次使用时请运行 poetry install。

当你编写/调整好配置后,具体用法取决于你的场景。 基于 configs/user.ini 配置的最简单入门方式如下:

tmux -f .tmux.conf
poetry shell
# This checks out a kernel, builds it, creates a root file system and starts the debugger and debuggee eventually
./start_kgdb.py

自动创建的文件系统中存在两个用户:

  • root,无密码
  • user:user

这是有意为之,以便你可以轻松地从任一视角进行开发和漏洞利用。

扩展用法

# If you want to try a CTF challenge where you were given a (compressed) Linux Image and a root filesystem try:
./start_kgdb.py --ctf <Image> <RootFS>

# If you want to kill the current debugging session
./start_kgdb.py -k

# If you want to provide a custom 'user.ini' for a specific debugging setup
./start_kgdb.py -c <path_to_cfg> [other_args]

# If you want to test some partial functionality of LIKE-DBG
# Stage 1: Download Kernel
# Stage 2: Stage 1 & unpack Kernel
# Stage 3: Stage 2 & build Kernel
# Stage 4: Only build a root file system
# Stage 5: Stage 3+4 & start debuggee
./start_kgdb.py -p <stage_nr>

# Update all containers
./start_kgdb.py -u

示例

examples 子目录中存放了一些示例,展示 LIKE_DBG 如何在特定的内核调试任务中为你提供帮助。 每个示例还包含一个专门的 README.md,其中包含复现示例所需的信息。

效果展示

img/example.png

参与开发

Python 代码应该相当易读,欢迎你用自己想法来扩展这个项目。非常欢迎所有 PR :)! 此外,你也可以随时创建功能请求 issue,或前往讨论页面集思广益,构思一些炫酷的新功能!

附:如果你想提供 logo,请随时提交。

下载工具