Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ubuntu-cve-2026 — IPv4 use-after-free CVE-2026-98432에 대한 업스트림 kfree_rcu 수정을 포함하는 패치된 Ubuntu 커널 .deb 패키지를 빌드하는 셸 스크립트입니다. | Kitploit
도구/GitHubGitHub/c4dt/ubuntu-cve-2026
Defensive ToolsVulnerability AnalysisExploitationUtilities & Frameworks
GitHubc4dt/ubuntu-cve-2026

ubuntu-cve-2026

IPv4 use-after-free CVE-2026-98432에 대한 업스트림 kfree_rcu 수정을 포함하는 패치된 Ubuntu 커널 .deb 패키지를 빌드하는 셸 스크립트입니다.

저장소 보기
3일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-98432용 패치된 Ubuntu 커널

build-patched-kernel.sh는 CVE-2026-98432에 대한 업스트림 수정 사항을 포함하는 Ubuntu 커널 .deb 패키지를 빌드합니다:

e3f33b0a1d89 "ipv4: RCU 유예 기간 이후 inet_opt 및 ireq_opt 해제"

이 버그는 ip_options_build()의 use-after-free입니다. 한 CPU가 여전히 SYNACK을 전송하는 동안 다른 CPU가 TCP 소켓의 IPv4 옵션을 해제할 수 있습니다. 이 수정은 net/ipv4/af_inet.c와 net/ipv4/tcp_ipv4.c에서 두 개의 kfree() 호출을 kfree_rcu()로 대체합니다.

스크립트가 하는 일

  1. 첫 번째 인수에서 커널 버전을 가져오며, 인수가 없으면 uname -r에서 가져옵니다 (예: 6.8.0-45-generic).
  2. deb-src 저장소를 활성화하고 컴파일러와 빌드 도구를 설치합니다.
  3. apt-get source로 이 커널을 빌드한 Ubuntu 소스 패키지를 다운로드합니다. 아카이브에 더 이상 해당 버전이 없으면 Launchpad의 pull-lp-source로 대체합니다. 그런 다음 빌드 의존성을 설치합니다.
  4. 수정 사항을 적용합니다. 주변 코드가 Ubuntu 커널마다 다르기 때문에 업스트림 diff를 적용하는 대신 두 줄을 직접 대체합니다. kfree_rcu()가 NULL을 허용하지 않는 5.7 이전 커널에서는 NULL 검사를 추가합니다.
  5. 패키지 버전에 +cve202698432.1을 추가하여, 새 패키지가 동일한 ABI의 아카이브 패키지를 업그레이드하도록 합니다.
  6. Ubuntu의 debian/rules로 빌드하고 .deb 파일을 ./debs-<version>/에 복사합니다.

스크립트를 다시 실행하면 다운로드한 소스를 재사용하며 두 번 패치하지 않습니다.

사용법

Ubuntu 머신 자체에서 (root 또는 sudo로 실행):

./build-patched-kernel.sh                    # uname -r의 커널
./build-patched-kernel.sh 6.8.0-45-generic   # 특정 커널

Docker에서는 커널과 일치하는 Ubuntu 릴리스를 사용하세요 (6.8은 noble, 5.15는 jammy). 컨테이너 내부의 uname -r은 호스트의 커널을 보여주므로 버전을 명시적으로 전달해야 합니다:

docker run --rm -v "$PWD":/work -w /work -e WORKDIR=/build ubuntu:24.04 \
    ./build-patched-kernel.sh 6.8.0-45-generic

WORKDIR=/build는 커널 소스를 컨테이너 내부에 유지합니다. macOS처럼 마운트된 디렉터리가 대소문자를 구분하지 않는 경우에 필요합니다. 기타 설정(OUTDIR, LOCAL_SUFFIX, SRC_PACKAGE/SRC_VERSION, JOBS)은 스크립트 상단에 설명되어 있습니다.

설치

sudo apt install ./debs-<version>/linux-image-unsigned-<version>_*.deb \
                 ./debs-<version>/linux-modules-<version>_*.deb \
                 ./debs-<version>/linux-modules-extra-<version>_*.deb \
                 ./debs-<version>/linux-headers-*.deb
sudo reboot

커널 이미지는 서명되지 않았으며 서명된 linux-image-<version> 패키지를 대체합니다. Secure Boot가 켜져 있으면 자체 MOK 키로 이미지에 서명하거나 Secure Boot를 끄세요.

도구 다운로드