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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/chosenonehacks/cve-2026-32746
Vulnerability AnalysisExploitationNetwork SecurityPenetration TestingLearning & EducationBinary Exploitation
GitHubchosenonehacks/cve-2026-32746

CVE-2026-32746

# GNU InetUtils telnetd 사전 인증 버퍼 오버플로우(CVE-2026-32746)에 대한 개념 증명 익스플로잇 승인된 보안 테스트를 위한 Docker 랩 환경 및 탐지 스크립트를 포함한 GNU InetUtils telnetd의 사전 인증 버퍼 오버플로우(CVE-2026-32746)에 대한 개념 증명 익스플로잇입니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-32746 - telnetd LINEMODE SLC 버퍼 오버플로우

GNU InetUtils telnetd의 LINEMODE SLC(Set Local Characters) 핸들러에서 버퍼 오버플로우를 통한 인증 전 원격 코드 실행.

CVSS 3.1: 9.8 (Critical) | CWE: CWE-120, CWE-787

개요

telnetd/slc.c의 add_slc() 함수는 경계 검사 없이 SLC 트리플릿당 3바이트를 고정 108바이트 버퍼(slcbuf)에 추가합니다. 인증되지 않은 공격자는 로그인 프롬프트 이전의 옵션 협상 중에 40개 이상의 트리플릿(함수 코드 > 18/NSLC)이 포함된 조작된 SLC 하위 옵션을 전송하여 버퍼를 오버플로우시키고, BSS의 slcptr 포인터를 손상시키며, end_slc()가 손상된 포인터를 사용할 때 임의 쓰기를 달성할 수 있습니다.

영향

  • GNU InetUtils telnetd 2.7까지 (모든 버전)
  • BSD SLC 코드베이스에서 파생된 모든 telnetd
  • 2026년 4월 1일까지 패치 예정

이 PoC가 수행하는 작업

  • ✅ 버퍼 오버플로우를 트리거하고 telnetd를 충돌시킵니다 (취약점 확인)
  • ❌ 코드 실행을 달성하지 않습니다 (셸코드/ROP 체인 없음)
  • 빠른 시작

    root@kitploit:~
    # 취약한 실습 환경 구축
    docker compose up -d
    
    # 탐지 (비파괴적)
    python3 detect.py 127.0.0.1 2323
    
    # 익스플로잇 (telnetd 충돌 - 취약점 확인)
    python3 exploit.py 127.0.0.1 2323
    
    # 정리
    docker compose down
    

    실습 환경

    Docker 설정은 xinetd 하에서 inetutils-telnetd 2.4가 포함된 Debian 컨테이너를 실행하며, 포트 2323에 노출됩니다. 완전히 격리되어 있으며 호스트에는 아무런 영향을 미치지 않습니다.

    작동 방식

    1. telnetd에 연결하고 초기 옵션 협상을 완료합니다
    2. 클라이언트가 WILL LINEMODE를 사전에 전송하여 LINEMODE 협상을 트리거합니다
    3. 서버가 DO LINEMODE로 응답하고 SLC 하위 옵션 처리를 시작합니다
    4. 클라이언트가 함수 코드 > 18 (NSLC)인 40-60개의 트리플릿이 포함된 조작된 SLC 하위 옵션을 전송합니다
    5. add_slc()는 각 트리플릿에 대해 "지원되지 않음" 응답(3바이트)을 104바이트 버퍼에 큐잉합니다
    6. 약 35개 트리플릿 이후 버퍼가 오버플로우되어 slcptr 및 인접 BSS 데이터가 손상됩니다
    7. end_slc()는 손상된 slcptr을 통해 하위 옵션 종료 마커를 씁니다 (임의 쓰기)
    8. telnetd가 충돌합니다 (또는 오버플로우 내용에 따라 더 심각한 상황 발생)

    파일

    파일설명
    exploit.pyPoC 충돌/DoS 익스플로잇
    Dockerfile취약한 telnetd 실습 환경
    docker-compose.yml원커맨드 실습 환경 설정
    xinetd-telnet.confxinetd 서비스 설정
    detect.py비파괴적 버전 탐지 스크립트

    RCE 체인 개발

    DoS를 넘어서려면 다음이 필요합니다:

    1. BSS 레이아웃 매핑 (slcbuf → slcptr 오프셋)
    2. 손상된 slcptr을 통해 end_slc()가 쓰는 값 제어
    3. GOT 엔트리 또는 함수 포인터 덮어쓰기
    4. 셸코드 또는 ROP 체인으로 실행 흐름 리디렉션

    참고 자료

    • Dream Advisory
    • GNU bug-inetutils 공개
    • The Hacker News
    • NVD

    면책 조항

    이 도구는 공인된 보안 테스트 및 교육 목적으로만 제공됩니다. 소유하지 않았거나 명시적 테스트 권한이 없는 시스템에 사용하지 마십시오. 작성자는 오용에 대해 책임을 지지 않습니다.

    크레딧

    • 취약점 발견자: Adiel Sol, Arad Inbar, Erez Cohen, Nir Somech, Ben Grinberg, Daniel Lubel (DREAM Security Research Team)

    라이선스

    MIT

    도구 다운로드