Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
rustproofing-linux — Linux 커널 취약점을 Rust로 포팅하는 교육용 예제로, 커널 보안과 Rust의 안전성을 학습하기 위한 의도적으로 취약한 코드와 익스플로잇을 제공합니다. | Kitploit
도구/GitHubGitHub/nccgroup/rustproofing-linux
Static AnalysisVulnerability AnalysisCode AnalysisLearning & EducationCurated ResourcesBinary ExploitationLabs & Practice
GitHubnccgroup/rustproofing-linux

rustproofing-linux

Linux 커널 취약점을 Rust로 포팅하는 교육용 예제로, 커널 보안과 Rust의 안전성을 학습하기 위한 의도적으로 취약한 코드와 익스플로잇을 제공합니다.

저장소 보기
2213년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Rustproofing Linux (Linux 커널 버그를 Rust로 이식하기)

이 소스 코드 저장소는 https://research.nccgroup.com/?p=18577의 블로그 게시물에 딸린 예제 모음입니다.

이 예제들은 블로그 게시물을 따라 하는 용도 외에는 사용하지 마십시오. 여기에는 의도적으로 취약점이 포함되어 있으며, "수정된" 버전에도 버그가 있을 수 있습니다.

블로그 게시물의 예제를 직접 실행하려면 다음 안내가 도움이 될 것입니다.

종속성 가져오기

Rust for Linux 소스 코드를 받으십시오. [https://github.com/Rust-for-Linux/linux/blob/rust/Documentation/rust/quick-start.rst](quick start 페이지)에 나열된 일부 종속성을 설치해야 할 수도 있습니다.

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

virtme를 받으십시오. QEMU 및 기타 종속성도 설치해야 할 수 있습니다.

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

저는 virtme가 코어 커널이나 커널 모듈의 변경 사항을 빠르게 테스트하는 데 매우 유용하다고 생각합니다.

커널 컴파일

대부분의 예제가 실행될 기본 커널을 빌드합니다:

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

약간 다른 구성 옵션을 가진 변형도 빌드합니다:

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

빌드된 커널 실행

다음 명령을 사용하여 QEMU 안에서 빌드된 커널을 시작합니다:

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

다른 두 커널을 실행해야 할 때는 --kdir 옵션을 변경하십시오.

그런 다음 모듈은 다음 명령으로 컴파일됩니다. KDIR이 컴파일된 커널이 있는 디렉터리를 가리켜야 하며, 다르게 컴파일된 커널을 요구하는 예제를 테스트할 때는 ../rust-for-linux.out.stackinit 및 ../rust-for-linux.out.ovf용으로 다시 컴파일해야 한다는 점에 유의하십시오.

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

모듈은 test.sh 스크립트의 도움으로 로드되고 개념 증명 익스플로잇이 실행됩니다. 예제는 블로그 게시물에서 찾을 수 있습니다.

도구 다운로드