Kant's IT/Issue on IT&Security

고도화된 리눅스 루트킷 PUMAKIT 등장: 권한 상승·파일 은닉·디텍션 우회

Kant Jo 2025. 1. 3. 08:13

New Linux Rootkit PUMAKIT Uses Advanced Stealth Techniques to Evade Detection

 

PUMAKIT, a sophisticated rootkit that uses advanced stealth mechanisms

 

PUMAKIT, a sophisticated rootkit that uses advanced stealth mechanisms 

Researchers discovered PUMAKIT, a Linux rootkit capable of hiding files, escalating privileges, and evading system tools and detection.

securityaffairs.com

 

  • 개요
    • PUMAKITLKM(Loadable Kernel Module) 기반 리눅스 루트킷으로 Elastic Security Lab이 발견
    • 권한 상승, 파일·디렉터리 은닉, 안티디버깅, C2와의 은밀한 통신 등 고급 기법 탑재
    • 주요 구성요소
      • 드로퍼: "cron"
      • 메모리 상주 실행 파일: "/memfd:tgt", "/memfd:wpn"
      • 루트킷 모듈: "puma.ko" (ftrace 훅 이용)
      • 사용자 레벨 공유 라이브러리: "Kitsune"("lib64/libs.so")
  • 공격 체인 및 특징
    • 다단계 구조
      • 드로퍼("cron") → 메모리에 로드되는 실행 파일("/memfd:wpn") → 조건 충족 시 루트킷("puma.ko") 배포
      • 루트킷 내부에 Kitsune SO 내장, 사용자 공간과 상호작용
    • ftrace() 훅
      • 최소 18개 syscalls 및 "prepare_creds", "commit_creds" 등 핵심 커널 함수 후킹
      • 파일/디렉터리 숨김, 프로세스 은닉, 루트킷 자기 보호
    • rmdir() 시스템콜 악용
      • "zarya.[명령]" 형식으로 명령 전달
      • 명령 구조
        • zarya.c.0 → 설정(config) 가져오기
        • zarya.k. → 지정 PID 은닉
        • zarya.v.0 → 루트킷 버전 조회
    • 조건부 활성화
      • Secure Boot 활성 여부, 커널 심볼(kallsyms_lookup_name 등) 접근 가능 여부 확인
      • 모든 파일은 ELF 바이너리 형태로 드로퍼에 내장, 특정 조건 충족 시 로딩
  • 주요 기능
    • 권한 상승: prepare_creds/commit_creds 훅킹, rmdir() 콜 훅 등으로 권한 조작
    • 은닉 기법
      • 파일/디렉터리/프로세스 숨김
      • 루트킷 자체 숨김 및 안티 디버깅
      • 메모리 상주로 디스크 흔적 최소화
    • C2 통신
      • 명령&제어 서버와 통신하여 추가 페이로드 전달, 시스템 제어
      • ftrace로 syscall 흐름 변경 등 은밀한 방식
  • 기술적 특이점
    • kallsyms_lookup_name() 사용
      • 커널 5.7 이전 버전에서 익스포트되어 있어, 비정상 모듈도 심볼 접근 가능
      • MODULE_LICENSE("GPL") 위장으로 라이선스 검사 우회
    • 다중 아키텍처 지원
      • x86뿐 아니라 다른 아키텍처도 고려
      • “puma.ko”가 kprobes 대신 ftrace 사용 → 구버전 커널 대응
  • 보안 권고
    • 최신 커널 업데이트로 kallsyms_lookup_name 등 비익스포트 함수 악용 방지
    • Secure Boot 활성, 커널 모듈 서명 검증 필수
    • Syscall 모니터링:
      • Sysmon(리눅스) 혹은 BPF 기반 추적으로 rmdir 훅 등 이상 동작 감지
    • 안티루트킷 툴(chkrootkit, rkhunter 등) 활용, 정기 검사
    • 리눅스 서버 관리자: 미승인 커널 모듈 적재 차단, LKM 로딩 시도 이벤트 모니터링