
CVE-2024-36971용 PoC
⚠️ 면책 조항 — 이 저장소를 사용하기 전에 읽어 주세요 이 저장소는 방어적 연구, 분석 및 책임 있는 보고를 위해서만 제공됩니다. 여기에는 악용할 수 없는 개념 증명 파일인
CVE-2024-36971과 영향을 받는 영역을 설명하기 위한 공개 Android 커널 헤더 스니펫(sock.h)이 포함되어 있습니다. 악용 코드, 재현 명령 또는 단계별 지침은 제공되지 않습니다. 프로덕션 장치, 타사 시스템 또는 통제할 수 없는 네트워크에서 이 저장소의 어떤 파일도 실행하지 마십시오. 저자는 오용에 대한 모든 책임을 부인합니다.
sock.h 스니펫 정보CVE-2024-36971은 Android 커널 네트워크 서브시스템의 Use-After-Free(UAF) 취약점입니다. 근본 원인은 소켓 라우팅(sk->sk_dst_cache)에 사용되는 목적지 캐시(dst)를 처리할 때 안전하지 않은 연산 순서로, 동시 실행 코드 경로에서 접근 가능한 댕글링 포인터를 남길 수 있습니다. 이 저장소는 악용 프리미티브(exploit primitive)를 제공하지 않으면서 영향(커널 불안정성 및 데이터 손상)을 입증하는 방어적 연구 PoC를 문서화합니다.
이 README는 PoC가 입증하는 내용, 포함된 sock.h가 관련된 이유, 그리고 테스트 및 공유에 관한 책임 있는 제약 조건을 설명합니다.
CVE-2024-36971 — PoC 소스 파일(투명성을 위해 저장소에 보관됨). 실행할 것이 아니며 보관/분석 목적으로만 포함되었습니다.sock.h — 이 문제와 관련된 소켓/목적지 구조체 및 헬퍼를 보여주는 공개 Android 커널 헤더 스니펫.README.md — 이 파일(문서 및 지침).dst 객체의 참조 처리 및 해제 순서가 잘못되어 Use-After-Free(UAF)가 발생합니다.__dst_negative_advice() / 목적지 캐시 코드 경로를 실행하는 네트워크 경로가 UAF 조건을 발생시킬 수 있습니다. 이 저장소는 이를 트리거하는 지침을 제공하지 않습니다.sock.h 스니펫 정보sock.h 헤더는 공개적으로 사용 가능한 커널 헤더(Android 커널 트리에서 가져온)로, 다음을 포함합니다:
struct sock 및 관련 네트워킹 구조체 정의;sk_dst_cache(소켓 목적지 캐시) 참조 및 목적지 참조를 가져오고 설정하는 헬퍼;dst_release() 사용.이 스니펫은 CVE-2024-36971의 맥락을 제공하는 정확한 구조체와 코드 위치를 보여주기 위해 포함되었습니다. 이 헤더는 순서 또는 동기화가 정확성에 중요한 데이터 필드와 함수를 보여줌으로써 이 README의 설명을 뒷받침합니다.
참고: 다음은 통제된 연구실에서 보안 연구자가 사용하는 일반적인 기능 및 도구 목록입니다. 의도적으로 실행 불가능하도록 작성되었습니다 — 명령, 스크립트, 매개변수 값이 없습니다.
안전하고 격리된 커널 연구를 위한 권장 기능:
adb/fastboot, dmesg/last_kmsg 수집, 커널 주소를 소스 라인에 매핑하는 도구(심볼 파일, addr2line 등).이 프로젝트는 책임 있는 공개 원칙을 따릅니다. 벤더, 유지관리자 또는 보안 담당자이고 문제를 검증하거나 해결하기 위해 추가적인 실행 불가 진단 산출물(전체 백트레이스, 세니타이즈된 로그 또는 포렌식 덤프)이 필요한 경우 보안 채널을 통해 저장소 소유자에게 연락하십시오. 선호되는 방법은 다음과 같습니다:
연구자는 검증된 벤더/유지관리자와 협력하여 안전하고 적절한 조건에서 추가 진단 자료를 공유할 것입니다. 재현 가능한 재현 단계는 공개적으로 게시되지 않습니다.