カーネルCTFチャレンジ
カーネルセキュリティの概念を学ぶためのLinuxカーネルエクスプロイトチャレンジ集です。
要件
- Linuxシステム(Ubuntuで動作確認済み)
- ビルド必須ツール(gcc、make)
- お使いのカーネルバージョン用のLinuxヘッダー
sudo apt-get update
sudo apt-get install build-essential linux-headers-$(uname -r)
チャレンジ
レベル1:基本的なバッファオーバーフロー
- カーネルモジュールのエクスプロイト入門
- 単純なバッファオーバーフローの脆弱性
- 初心者に最適な出発点
/level1 ディレクトリにあります
レベル2:Use-After-Free
- より高度なカーネルエクスプロイト
- ノート管理システムにおけるUse-After-Free脆弱性
- カーネルヒープの概念を紹介
/level2 ディレクトリにあります
レベル3:競合状態
- 高度なカーネルエクスプロイト
- カウンタ管理システムにおける複数の競合状態
- 並列実行とタイミング攻撃に焦点
/level3 ディレクトリにあります
はじめに
- このリポジトリをクローンします:
git clone https://github.com/0xCD4/kernel-CTF.git
cd kernel-CTF
- チャレンジレベルを選択し、そのディレクトリに移動します:
cd level1 # or level2, level3
- 各チャレンジディレクトリのREADME.mdに記載された具体的な手順に従ってください。
安全に関する注意
- これらのチャレンジは教育目的のみを意図しています
- これらのモジュールはテスト環境でのみ実行してください
- カーネルエクスプロイトはシステムをクラッシュさせる可能性があります - 可能であればVMを使用してください
作者
Created by shadowintel