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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2017-5123 — CVE-2017-5123 커널 취약점 재현: waitid 시스템 콜 메모리 쓰기를 통한 로컬 권한 상승, Linux 4.13에서 Docker 컨테이너 탈출로 시연됨. | Kitploit
도구/GitHubGitHub/teawater/cve-2017-5123
Privilege EscalationVulnerability AnalysisExploitationContainer EscapeBinary Exploitation
GitHubteawater/cve-2017-5123

CVE-2017-5123

CVE-2017-5123 커널 취약점 재현: waitid 시스템 콜 메모리 쓰기를 통한 로컬 권한 상승, Linux 4.13에서 Docker 컨테이너 탈출로 시연됨.

저장소 보기
27년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

README

참고: 이 저장소의 코드는 kata containers와 같은 보안 팟 샌드박스 기술의 격리를 시연하기 위한 것이며, 어떤 플랫폼을 공격하려는 의도가 아닙니다.

재현 방법

  • 리눅스 커널 4.13.0 획득
  • 0001-CVE-2017-5123-help-to-make-attack-safely.patch 패치 적용
  • Kconfig 구성으로 리눅스 커널 빌드
  • 커널 부팅 후 다음 명령어로 dac_mmap_min_addr, have_canfork_callback, prepare_kernel_cred, commit_creds, set_fs_root, copy_fs_struct, current_task의 주소 획득. 주소를 CVE-2017-5123.c에 업데이트 echo 0 > /proc/sys/kernel/kptr_restrict cat /proc/kallsyms
  • gdb vmlinux 실행
  • TASK_FS_OFFSET 크기 획득 후 주소를 CVE-2017-5123.c에 업데이트
root@kitploit:~
(gdb) p &(((struct task_struct *)0)->fs)
  • TASK_PARENT_OFFSET 크기 획득 후 주소를 CVE-2017-5123.c에 업데이트
root@kitploit:~
(gdb) p &(((struct task_struct *)0)->parent)
  • FS_ROOT_OFFSET 크기 획득 후 주소를 CVE-2017-5123.c에 업데이트
root@kitploit:~
(gdb) p &(((struct fs_struct *)0)->root)
  • CVE-2017-5123.c를 --static으로 빌드하고 바이너리 파일을 도커 이미지에 넣습니다.
  • 커널 명령줄 옵션 "nosmep"로 커널 부팅
  • 이제 도커 이미지를 사용하여 rock and roll.

이 CVE에 대하여

업스트림 커널의 waitid 구현은 정보 결과를 복사할 대상 대상을 제한하지 않았습니다. 이로 인해 로컬 사용자가 보호된 커널 메모리에 쓰기 작업을 수행할 수 있으며, 이는 권한 상승으로 이어질 수 있습니다.
버그는 2017-05-21에 도입되었고 2017-10-09에 수정되었습니다.

이 CVE는 4.13 브랜치의 이후 릴리스 및 최신 메인라인 커널에서 이미 수정되었습니다. 그러나 유사한 CVE가 존재하여 권한 상승을 허용할 수 있습니다. 이 CVE 자체는 실제로 유명한 dirty cow, CVE-2016-5195 와 매우 유사합니다.

추가 정보

CVE-2017-5123.c는 이 취약점을 사용하여 /proc/sys/vm/mmap_min_addr 값을 변경합니다. 그런 다음 리눅스 커널이 셸코드를 호출하여 호스트 루트의 파일 접근 권한을 획득하도록 합니다.

도구 다운로드