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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/kwilck/copyfail
Defensive ToolsPrivilege EscalationVulnerability ScannersVulnerability AnalysisConfiguration Auditing
GitHubkwilck/copyfail

copyfail

Copy Fail (CVE-2026-31431)는 Linux 커널의 algif_aead 모듈(AF_ALG 사용자 공간 암호화 API의 일부)에 존재하는 논리 결함입니다. 2026년 4월 29일 Theori / Xint Code에 의해 공개되었습니다.

저장소 보기
13개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

CVE-2026-31431 — "Copy Fail" 안전 탐지 스크립트

Copy Fail Linux 커널 로컬 권한 상승 취약점을 위한 읽기 전용 탐지 스크립트입니다.
익스플로잇 코드가 없습니다. AF_ALG 소켓을 열지 않습니다. /etc/modprobe.d 외부에 파일을 쓰지 않습니다(수동으로 완화 조치를 적용할 때만).


배경

Copy Fail(CVE-2026-31431)은 Linux 커널의 algif_aead 모듈(AF_ALG 사용자 공간 암호화 API의 일부)에 있는 논리적 결함입니다. 2026년 4월 29일 Theori / Xint Code에 의해 공개되었습니다.

732바이트 Python 스크립트 하나로 2017년 이후 빌드된 사실상 모든 주요 Linux 배포판에서 권한이 없는 로컬 사용자가 전체 루트 액세스 권한을 얻을 수 있습니다 — 경쟁 조건(race condition), 커널 오프셋, 컴파일된 페이로드 없이 말이죠.

속성세부 정보
CVECVE-2026-31431
CVSS7.8 HIGH
유형로컬 권한 상승(LPE)
영향받는 커널4.14 – 6.18.21, 6.19.0 – 6.19.11
근본 원인algif_aead 제자리(in-place) 최적화(커밋 72548b093ee3, 2017)
업스트림 수정커밋 a664bf3d603d를 통한 되돌리기
익스플로잇 신뢰성결정적(Deterministic) — 경쟁 조건 불필요

스크립트가 확인하는 항목

  1. 커널 버전 — 실행 중인 커널이 취약한 업스트림 범위에 속하는지 여부
  2. algif_aead 모듈 상태 — 로드됨, 내장됨, 또는 없음
  3. 활성 완화 조치 — modprobe.d 블랙리스트, initcall_blacklist 커널 cmdline 매개변수
  4. 배포판별 패치 상태 — Debian/Ubuntu/Parrot: USN-8226-1에 따라 kmod 패키지 버전 확인

Ubuntu / Debian 참고 사항: Ubuntu는 보안 패치를 백포트할 때 업스트림 커널 버전을 올리지 않습니다. 따라서 스크립트는 커널 버전 문자열에만 의존하지 않고 kmod 패키지 버전(>= 31+20240202-2ubuntu7.2, USN-8226-1 기준)을 확인합니다.


지원되는 배포판


사용 방법

root@kitploit:~
# 다운로드
curl -O https://raw.githubusercontent.com/kw-soft/copyfail/main/copyfail.sh

# 실행 권한 부여
chmod +x copyfail.sh

# 실행(전체 모듈 가시성을 위해 root 권장)
sudo ./copyfail.sh

출력 예시

취약한 시스템

root@kitploit:~
============================================
  CVE-2026-31431 'Copy Fail' — 안전 탐지
============================================
[*] 커널: 6.8.0-71-generic
[!] 커널 6.8.0-71-generic이 취약한 업스트림 범위(4.14 – 6.19.11)에 속함
[~] 배포판 백포트 확인이 이어집니다 — 버전 번호만으로는 결론을 내릴 수 없음
[*] algif_aead 모듈 상태:
[!] algif_aead가 로드됨 — 공격 표면이 활성 상태
[*] 배포판 패치 상태:
    배포판 : Ubuntu 24.04
    설치된 kmod : 31+20240202-2ubuntu6
    필요한 kmod : >= 31+20240202-2ubuntu7.2
[!] kmod 31+20240202-2ubuntu6 < 31+20240202-2ubuntu7.2 — 완화 조치가 적용되지 않음
============================================
  결과
============================================
[!] 취약함 — 커널이 영향받고 algif_aead가 활성 상태

완화된 시스템

root@kitploit:~
============================================
  CVE-2026-31431 'Copy Fail' — 안전 탐지
============================================
[*] 커널: 6.8.0-71-generic
[!] 커널 6.8.0-71-generic이 취약한 업스트림 범위(4.14 – 6.19.11)에 속함
[~] 배포판 백포트 확인이 이어집니다 — 버전 번호만으로는 결론을 내릴 수 없음
[*] algif_aead 모듈 상태:
[✓] algif_aead가 로드되지 않음
[✓] modprobe 블랙리스트 활성: /etc/modprobe.d/disable-algif_aead.conf
[*] 배포판 패치 상태:
    배포판 : Ubuntu 24.04
    설치된 kmod : 31+20240202-2ubuntu7.2
    필요한 kmod : >= 31+20240202-2ubuntu7.2
[✓] kmod >= 31+20240202-2ubuntu7.2 — USN-8226-1 완화 조치 적용됨
============================================
  결과
============================================
[✓] 완화됨 — algif_aead가 차단됨
[~] 문제를 완전히 해결하려면 패치된 커널이 제공될 때 적용하세요

완화 조치 적용

Debian / Ubuntu / Parrot / Linux Mint

root@kitploit:~
sudo apt update && sudo apt upgrade && sudo reboot

이 명령은 algif_aead를 차단하는 modprobe.d 규칙을 추가하는 패치된 kmod 패키지(USN-8226-1)를 설치합니다.

즉시 재부팅이 불가능한 경우:

root@kitploit:~
echo 'install algif_aead /bin/false' | sudo tee /etc/modprobe.d/disable-algif.conf
sudo update-initramfs -u
sudo rmmod algif_aead 2>/dev/null || echo "모듈이 사용 중 — 재부팅 필요"

RHEL / CentOS / AlmaLinux / Rocky

⚠️ RHEL 계열 커널에서 algif_aead는 커널에 내장되어 있습니다(CONFIG_CRYPTO_USER_API_AEAD=y).
modprobe.d 규칙은 효과가 없습니다. 대신 grub 매개변수를 사용하세요:

root@kitploit:~
sudo grubby --update-kernel=ALL --args='initcall_blacklist=algif_aead_init'
sudo reboot

Arch Linux

root@kitploit:~
sudo pacman -Syu linux && sudo reboot

영향받지 않는 항목

완화 조치는 다음 항목에 영향을 미치지 않습니다:

  • dm-crypt / LUKS 전체 디스크 암호화
  • SSH
  • IPsec / XFRM
  • OpenSSL(기본 빌드)
  • GnuTLS / NSS
  • kTLS

afalg 엔진을 명시적으로 사용하도록 구성된 애플리케이션이나 AF_ALG AEAD 소켓을 직접 바인딩하는 애플리케이션만 영향을 받을 수 있습니다 — 표준 배포에서는 드문 경우입니다.


자동 업데이트 확인(Ubuntu)

Hetzner는 OS 업데이트를 자동으로 적용하지 않습니다. Ubuntu에는 unattended-upgrades가 사전 설치되어 있지만, 활성화 및 구성이 필요합니다.

root@kitploit:~
# 자동 보안 업데이트가 활성화되어 있는지 확인
cat /etc/apt/apt.conf.d/20auto-upgrades

# 업그레이드 기록 보기
grep "^Start-Date\|^Commandline" /var/log/apt/history.log | tail -30

# kmod 완화 조치가 자동으로 적용되었는지 확인
grep "kmod\|algif" /var/log/apt/history.log

# 마지막 unattended-upgrades 실행 확인
tail -30 /var/log/unattended-upgrades/unattended-upgrades.log

참고: unattended-upgrades가 활성화되어 있어도 자동 재부팅은 기본적으로 꺼져 있습니다.
새 커널은 수동으로 reboot한 후에만 활성화됩니다.


참고 자료


면책 조항

이 스크립트는 귀하가 소유하거나 테스트 권한이 있는 시스템에서 사용하도록 제작되었습니다.
읽기 전용 검사를 수행하며 어떤 방식으로도 취약점을 악용하지 않습니다.

도구 다운로드
배포판확인 방법
Ubuntu / Linux Mintkmod 패키지 버전(USN-8226-1)
Debiankmod 패키지 버전 + 보안 추적기
Parrot OSkmod 패키지 버전(Debian rolling)
RHEL / CentOS / AlmaLinux / Rockydnf updateinfo + initcall_blacklist cmdline
Fedoradnf updateinfo
Amazon Linuxdnf check-update --security
SUSE / openSUSEzypper lp
Arch Linuxpacman -Syu linux
리소스링크
원본 분석 글https://xint.io/blog/copy-fail-linux-distributions
NVDhttps://nvd.nist.gov/vuln/detail/CVE-2026-31431
Ubuntu 권고https://ubuntu.com/blog/copy-fail-vulnerability-fixes-available
USN-8226-1https://ubuntu.com/security/notices/USN-8226-1
CERT-EU 권고https://cert.europa.eu/publications/security-advisories/2026-005/
Debian 추적기https://security-tracker.debian.org/tracker/CVE-2026-31431
Microsoft 블로그https://www.microsoft.com/en-us/security/blog/2026/05/01/cve-2026-31431-copy-fail-vulnerability-enables-linux-root-privilege-escalation/
Wikipediahttps://en.wikipedia.org/wiki/Copy_Fail