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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
cve-2016-0728-testbed — CVE-2016-0728을 위한 테스트베드, Linux의 refcount 누수/오버플로우 버그 | Kitploit
도구/GitHubGitHub/neuschaefer/cve-2016-0728-testbed
Vulnerability AnalysisExploitationLearning & EducationBinary Exploitation
GitHubneuschaefer/cve-2016-0728-testbed

cve-2016-0728-testbed

CVE-2016-0728을 위한 테스트베드, Linux의 refcount 누수/오버플로우 버그

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2016-0728 테스트베드

이 저장소는 Linux에서 발생하는 refcount 누수 및 오버플로우 버그인 CVE-2016-0728에 대한 테스트 프로그램을 포함하고 있으며, 이는 use-after-free로 이어집니다.

이 버그는 Perception Point에 의해 발견 및 설명되었습니다. 저는 그들과 관련이 없습니다.

사용법

root@kitploit:~
Welcome to the CVE-2016-0728 testbed
sizeof(struct msg_msg) == 0x30, sizeof(struct key) == 0xb8

PID: 27673, UID: (1000/1000)
Keyring: 1b66e5d6, "test-1a328d6e"
Usage:   1
Press a key: (f)ork (i)ncref (a)uto-incref (r)evoke (h)eap-spray (s)hell (q)uit

제 테스트 시스템에서는 다음과 같은 방법으로 루트 셸을 얻을 수 있었습니다:

  1. refcount를 -2까지 올리십시오; incref를 너무 자주 실행하면 커널이 크래시될 가능성이 있습니다.
  2. 두 번 fork하여 오버플로우를 일으키면 키 가비지 컬렉터가 keyring을 해제합니다.
  3. 가짜 keyring으로 힙을 스프레이합니다.
  4. revoke 호출
  5. execl("/bin/sh", "sh", NULL)

무슨 일이 일어나는지 확인하기 위해 watch -n0.1 cat /proc/keys를 실행하는 것이 유용했습니다.

이식성

이 코드는 x86-64에서만 테스트되었지만, 다른 아키텍처에서도 실행되어야 합니다. 매직 오프셋을 사용하지 않고 Linux 헤더에서 구조체 정의를 복사하여 sizeof를 사용했기 때문입니다. (단, prepare_kernel_cred와 commit_creds의 주소는 하드코딩했습니다.)

도구 다운로드