레드테일 악성코드 페이로드: 기술 분석 및 행동
Detection stack
- AIDR
- Alert
- ETL
- Query
요약
RedTail은 다중 아키텍처 리눅스 멀웨어 패밀리로 광범위한 호스트 프로파일링과 프로세스 위장을 기능으로 보유하고 있습니다. 이 멀웨어는 crontab을 통해 지속성을 확립하며, 호스트 방화벽 규칙을 수정하고, inotify and strace등의 프로세스를 종료하여 모니터링 도구를 방해하려고 시도합니다. 또한 멀웨어는 TCP 포트 853을 통해 DNS-over-TLS 네트워크 트래픽을 생성하여 원격 인프라에 도달할 가능성이 있습니다.
조사
분석가는 격리된 우분투 24.04 환경에서 x86-64 RedTail 샘플의 동적 분석을 수행했습니다. 조사는 루트 권한과 비권한 실행을 비교하고, Proxmox/QEMU를 메모리 포렌식에 사용했으며, strace and auditd로 시스템 호출을 모니터링했습니다. 관찰된 행동에는 일관된 호스트 프로파일링, php-fpm으로 프로세스 이름 변경, @reboot 크론 엔트리 생성이 포함되었습니다.
완화
조직은 시스템 수준의 crontab이나 방화벽 규칙을 수정할 수 있는 멀웨어의 능력을 줄이기 위해 최소 권한 원칙을 적용해야 합니다. 보안 팀은 다음과 같은 합법적인 서비스 이름을 포함하여 예상치 못한 경로에서 실행되는 의심스러운 프로세스 위장을 모니터링해야 합니다. php-fpm EDR 솔루션은 보안 모니터링 프로세스를 대상으로 하는 SIGKILL 신호도 감지해야 합니다.
응답
RedTail 활동이 감지되면, 영향을 받은 리눅스 호스트는 즉시 격리되어 측방 이동 또는 추가적인 명령 및 제어 통신을 방지해야 합니다. 대응자는 위장된 프로세스를 식별하기 위해 메모리 포렌식을 수행하고, 승인되지 않은 @reboot 엔트리에 대한 crontab을 검사해야 합니다. 네트워크 로그도 TCP 포트 853에서의 비정상적인 아웃바운드 연결에 대해 검토되어야 하며, iptables 설정에서 승인되지 않은 규칙 변경 여부를 확인해야 합니다.
공격 플로우
이 부분은 아직 업데이트 중입니다.
탐지
수상한 xxd 유틸리티 실행 (cmdline 경유)
크론 파일 생성됨 (file_event 경유)
임시 폴더에 리눅스 스크립트 생성됨 (file_event 경유)
리눅스 호스트에 숨김 파일 생성됨 (file_event 경유)
IOCs (HashSha256)로 탐지: Redtail 페이로드 분석
IOCs (SourceIP)로 탐지: Redtail 페이로드 분석
IOCs (DestinationIP)로 탐지: Redtail 페이로드 분석
SIGKILL에 의한 RedTail 스트레이스 프로세스 종료 [Linux 프로세스 생성]
RedTail 멀웨어 네트워크 연결 시도 탐지 [Linux 프로세스 생성]
RedTail 페이로드 실행 및 프로세스 위장 [Linux 프로세스 생성]
시뮬레이션 실행
-
공격 서술 및 명령: 공격자는
redtail.x86_64라는 특수 멀웨어 샘플을 특정 디렉터리 구조/analysis/run-002/sample/에 배포했습니다. 보안 분석가들이 실행을 디버깅하거나strace를 사용하여 네트워크 통신과 파일 수정을 관찰하는 것을 방지하기 위해, 멀웨어는strace유틸리티의 존재를 확인하도록 사전 스캔합니다. 존재를 확인하면, 해당strace프로세스에 대해SIGKILL(신호 9)를 발행하여 분석 도구를 즉시 조용히 종료시킵니다.stracePID -
회귀 테스트 스크립트:
#!/bin/bash # 시뮬레이션 디렉터리 구조 설정 mkdir -p /analysis/run-002/sample/ # 탐지 논리 경로와 일치하는 가짜 멀웨어 바이너리 생성 echo -e '#!/bin/bashnstrace sleep 100 & nsleep 1nkill -9 $!' > /analysis/run-002/sample/redtail.x86_64 chmod +x /analysis/run-002/sample/redtail.x86_64 # 백그라운드에서 정상적인 프로세스에 대해 strace 시작 strace sleep 100 & STRACE_PID=$! echo "[+] Started strace with PID: $STRACE_PID" # strace 초기화 대기 sleep 2 # strace 프로세스를 종료할 "멀웨어" 실행 echo "[+] Simulated RedTail malware 실행 중..." /analysis/run-002/sample/redtail.x86_64 # strace가 종료되었는지 확인 if ! kill -0 $STRACE_PID 2>/dev/null; then echo "[+] 성공: strace 프로세스가 종료되었습니다." else echo "[-] 실패: strace 프로세스가 여전히 실행 중입니다." fi -
정리 명령:
# 시뮬레이션된 멀웨어 및 디렉터리 구조 제거 rm -rf /analysis/run-002/ # 남아있는 sleep 프로세스 제거 pkill -f "sleep 100"