Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
rustproofing-linux — Lehrbeispiele zur Portierung von Linux-Kernel-Schwachstellen auf Rust, mit absichtlich verwundbarem Code und Exploits zum Erlernen von Kernel-Sicherheit und Rusts Sicherheit. | Kitploit
Tools/GitHubGitHub/nccgroup/rustproofing-linux
Statische AnalyseSchwachstellenanalyseCode-AnalyseLernen & BildungKuratierte RessourcenBinary-ExploitationLabs & Praxis
GitHubnccgroup/rustproofing-linux

rustproofing-linux

Lehrbeispiele zur Portierung von Linux-Kernel-Schwachstellen auf Rust, mit absichtlich verwundbarem Code und Exploits zum Erlernen von Kernel-Sicherheit und Rusts Sicherheit.

Repository anzeigen
221vor 3 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Rustproofing Linux (Portierung von Linux-Kernel-Bugs nach Rust)

Dieses Quellcode-Repository ist eine Sammlung von Beispielen, die den Blogbeitrag unter https://research.nccgroup.com/?p=18577 begleiten.

Verwende diese Beispiele NICHT für irgendetwas anderes als zum Nachvollziehen des Blogbeitrags. Sie enthalten absichtlich Schwachstellen, und selbst die „behobenen" Versionen könnten Fehler enthalten.

Wenn du die Beispiele aus dem Blogbeitrag ausführen möchtest, sollten die folgenden Hinweise dir das hoffentlich erleichtern.

Abhängigkeiten besorgen

Besorge den Rust-für-Linux-Quellcode. Möglicherweise musst du einige Abhängigkeiten installieren, die auf [https://github.com/Rust-for-Linux/linux/blob/rust/Documentation/rust/quick-start.rst](der Schnellstart-Seite) aufgeführt sind.

root@kitploit:~
git clone https://github.com/Rust-for-Linux/linux rust-for-linux
cd rust-for-linux
git checkout bd123471269354fdd504b65b1f1fe5167cb555fc  # latest commit at the point of writing

Besorge virtme. Möglicherweise musst du auch QEMU und einige andere Abhängigkeiten installieren.

root@kitploit:~
git clone https://github.com/amluto/virtme

Ich finde virtme wirklich nützlich, um schnell eine Änderung entweder im Kernkernel oder in einem Kernelmodul zu testen.

Die Kernel kompilieren

Baue die Kernel-Basis, auf der die meisten Beispiele laufen werden:

root@kitploit:~
cd rust-for-linux
mkdir `pwd`.out
cp ../rustproofing-linux/configs/config-base `pwd`.out/.config
KBUILD_OUTPUT=`pwd`.out make -j$(nproc) LLVM=1

Und Varianten mit leicht abweichenden Konfigurationsoptionen:

root@kitploit:~
mkdir `pwd`.out.ovf
cp `pwd`.out/.config `pwd`.out.ovf
scripts/config --file `pwd`.out.ovf/.config -d CONFIG_RUST_OVERFLOW_CHECKS
KBUILD_OUTPUT=`pwd`.out.ovf make -j$(nproc) LLVM=1

mkdir `pwd`.out.stackinit
cp `pwd`.out/.config `pwd`.out.stackinit
scripts/config --file `pwd`.out.stackinit/.config -e CONFIG_INIT_STACK_ALL_ZERO
KBUILD_OUTPUT=`pwd`.out.stackinit make -j$(nproc) LLVM=1

Einen gebauten Kernel ausführen

Verwende den folgenden Befehl, um den gebauten Kernel in QEMU zu starten:

root@kitploit:~
../virtme/virtme-run --kdir `pwd`.out --show-command --show-boot-console --mods=auto -a "kasan_multi_shot" --qemu-opts -cpu core2duo -m 1G -smp 2

Ändere die Option --kdir, wenn du die anderen beiden Kernel ausführen musst.

Die Module werden anschließend mit dem folgenden Befehl kompiliert. Beachte, dass KDIR auf das Verzeichnis mit dem kompilierten Kernel zeigen muss und dass du für ../rust-for-linux.out.stackinit und ../rust-for-linux.out.ovf neu kompilieren musst, wenn du Beispiele testest, die unterschiedlich kompilierte Kernel erfordern.

root@kitploit:~
cd ../rustproofing-linux
make LLVM=1 KDIR=../rust-for-linux.out

Die Module werden geladen und Proof-of-Concept-Exploits werden mit Hilfe des Skripts test.sh ausgeführt. Beispiele finden sich im Blogbeitrag.

Tool herunterladen