BPFDoor 🚪
BPFDoor는 지속적인 감시와 원격 액세스를 위해 설계된, 탐지하기 어려운 백도어 악성코드입니다. 이 악성코드의 가장 큰 특징은 **네트워크 필터링 기술(BPF)**을 사용하여 특정 조건의 패킷만 선별적으로 수신하며, 일반적인 네트워크 트래픽에 섞여 있어 방화벽이나 보안 솔루션을 우회하기 쉽다는 점입니다.
- BPF(Berkeley Packet Filter)란?: 리눅스 커널의 패킷 필터링 기술입니다. BPF는 특정 조건을 만족하는 패킷만 캡처하여 처리할 수 있게 해주며, tcpdump 같은 도구에서 사용됩니다. BPFDoor는 이 기능을 악용하여, 특정 소스 IP, 포트, 패킷 시그니처 등을 가진 '마법의 패킷'이 도착했을 때만 활성화됩니다.
- 작동 방식: BPFDoor는 보통 서버에 설치된 후, 평소에는 아무런 활동 없이 대기 상태를 유지합니다. 공격자가 미리 정해놓은 '트리거' 패킷을 보내면, BPFDoor는 이를 감지하고 원격 명령 실행, 데이터 유출 등의 악성 행위를 수행합니다. 트리거 패킷은 일반적인 HTTP, DNS 트래픽처럼 보일 수 있어 탐지가 어렵습니다.
최근 서버 내에서 맞이할 수 있는 상황 예시
회사 서버의 보안 담당자인 A씨는 최근 다음과 같은 상황을 겪었습니다.
- 이상한 네트워크 트래픽: 서버 모니터링 시스템에서 평소에는 보이지 않던 알 수 없는 IP 대역에서 DNS 쿼리 트래픽이 간헐적으로 유입되는 것을 발견했습니다. 쿼리 내용 자체는 정상적인 도메인처럼 보였지만, 빈도가 비정상적이었습니다.
- 로그 파일의 불일치: 로그를 분석하던 중, 외부 IP로부터 whoami나 ls -al 같은 셸(Shell) 명령어가 실행된 흔적을 발견했습니다. 하지만 시스템 접속 기록(SSH)이나 웹 로그에는 해당 IP의 정상적인 접근 기록이 전혀 없었습니다.
- 시스템의 미묘한 성능 저하: 특정 시간에 CPU와 네트워크 사용량이 소폭 증가하는 현상이 반복되었지만, 어떤 프로세스 때문인지 명확하게 파악되지 않았습니다.
BPFDoor 감염의 가능성:
이러한 상황은 전형적인 BPFDoor 공격의 징후일 수 있습니다.
- DNS 쿼리 트래픽: 공격자가 BPFDoor를 활성화하기 위한 트리거 패킷으로 DNS 트래픽을 사용했을 가능성이 높습니다. DNS 트래픽은 방화벽을 쉽게 통과하기 때문에 악용하기 쉽습니다.
- 접근 기록 없는 셸 실행: BPFDoor가 성공적으로 '마법의 패킷'을 수신하여 활성화되면, 접근 기록을 남기지 않고 원격에서 직접 명령어를 실행할 수 있습니다.
- 미묘한 성능 저하: 백도어는 평소에는 비활성 상태로 대기하며 시스템 자원을 거의 사용하지 않지만, 활성화될 때만 일시적으로 자원을 소모합니다. 이는 일반적인 악성코드처럼 지속적으로 CPU를 소모하는 것과 다른 패턴입니다.
대응 방안: A씨는 다음과 같은 조치를 통해 문제를 해결해야 합니다.
- 네트워크 트래픽 분석: tcpdump를 사용하여 의심스러운 DNS 트래픽을 더 정밀하게 캡처하고 분석합니다.
- 시스템 파일 검사: 시스템 파일의 무결성을 검사하고, 의심스러운 파일이나 프로세스가 없는지 확인합니다.
- BPF 필터링 검사: bpftool과 같은 리눅스 명령어를 사용하여 의심스러운 BPF 프로그램이 커널에 로드되어 있는지 확인합니다.
'기타' 카테고리의 다른 글
| 12. 랜섬웨어 & 복구방안 (0) | 2025.08.30 |
|---|---|
| 32. (장애) (1) | 2025.08.30 |
| 31. (장애) 포트 트래픽 증가 및 대응 (0) | 2025.08.30 |
| 23. 가상화(cache miss와 경합) (0) | 2025.08.30 |
| 22. 서버 가상화 기술 (0) | 2025.08.30 |