보안 침해 사고를 분석하다 보면, 다양한 유형의 백도어가 등장합니다. 이 중에서 특히 자주 언급되는 것이 WebShell과 BPFdoor입니다. 이름은 비슷해 보여도, 두 백도어는 작동 방식, 은닉성, 목적에서 본질적으로 다릅니다.
이번 글에서는 이 둘의 차이를 심층적으로 비교해보겠습니다.
☠️ WebShell: 웹 기반 백도어
WebShell은 공격자가 웹 서버의 취약점을 이용해 설치하는 웹 스크립트 기반의 백도어입니다. PHP, JSP, ASP 같은 언어로 작성되며, 공격자는 웹 브라우저를 통해 이를 제어합니다.
🔧 특징
- 설치 위치: 웹 서버의 공개 디렉토리 (ex: /var/www/html)
- 언어: PHP, JSP, ASP 등
- 기능: 명령어 실행, 파일 업로드/다운로드, DB 조작
- 접근 방법: HTTP 요청 (GET, POST 등)
- 탐지 용이성: 시그니처 기반 보안 솔루션에 의해 비교적 쉽게 탐지 가능
💬 예시
<?php system($_GET['cmd']); ?>
공격자는 http://example.com/shell.php?cmd=ls 와 같이 명령을 실행
🐚 BPFdoor: 스텔스 커널 백도어
BPFdoor는 최근 몇 년간 국가 기반 APT 공격 그룹이 사용한 리눅스 백도어입니다. eBPF (extended Berkeley Packet Filter) 기술을 악용하여, 방화벽을 우회하고 탐지를 피하며, 거의 흔적 없이 명령을 수신하고 실행합니다.
🔧 특징
- 설치 위치: 리눅스 시스템 (일반적으로 백그라운드 프로세스)
- 동작 방식: eBPF로 패킷 검사 → 특정 시그니처가 들어오면 쉘 실행
- 기능: 명령어 실행, 역방향 쉘, 포트리스닝 없이 명령 수신
- 접근 방법: 비정상적인 TCP/UDP 패킷 이용, 포트 열지 않음
- 탐지 난이도: 매우 어렵다. 대부분의 보안 솔루션으로 탐지 불가
🔥 핵심 차별점
- 방화벽 우회: 방화벽이 열려있지 않아도 내부로 접근 가능
- 로그 미기록: 커널 레벨에서 수신 → 시스템 로그에 남지 않음
- 포트리스: 리스닝 포트 없이도 명령 수신 (정적 분석으로도 탐지 어려움)
⚔️ WebShell vs BPFdoor 비교표
항목WebShellBPFdoor
| 🧩 설치 대상 | 웹 서버 | 리눅스 OS (시스템 전체) |
| 🌐 통신 방식 | HTTP 기반 (브라우저 요청) | TCP/UDP 패킷 기반 (eBPF 필터) |
| 🎯 공격 진입점 | 웹 애플리케이션 취약점 | 서버 내부 침투 이후 설치 |
| 🛠 실행 권한 | 웹서버 권한 (www-data) | 루트 또는 시스템 권한 |
| 🔍 탐지 여부 | 비교적 탐지 쉬움 | 탐지 매우 어려움 (은닉성 극대화) |
| 🔒 포트 리스닝 | O (보통 웹 포트 80/443) | X (무포트 백도어) |
| 📄 로그 남김 | 웹 서버 로그에 흔적 남음 | 시스템 로그에 거의 안 남음 |
| 💣 위협 수준 | 낮음~중간 | 매우 높음 (APT급 위협 도구) |
🧠 보안 담당자 관점 요약
항목위험 신호대응 방법
| WebShell | 웹 서버에 이상한 .php, .jsp 파일 존재 | 웹 취약점 점검, WAF 설정 강화 |
| BPFdoor | 리스닝 포트 없이도 외부 명령이 실행됨, 이상한 프로세스 | eBPF 탐지 가능한 EDR/NDR 사용, 시스템 무결성 검사 |
📝 마무리
- WebShell은 웹 애플리케이션 단의 위협, 관리 부주의나 취약점에서 발생
- BPFdoor는 시스템 커널 레벨에서 동작하는 은폐형 백도어, APT 공격자의 고급 툴
이 둘은 같은 "백도어"라는 이름을 공유하지만, 침투 경로, 위협 수준, 탐지 난이도까지 완전히 다릅니다. 특히 BPFdoor는 방화벽이나 포트 설정만으로는 막을 수 없는 신종 위협이므로, 고도화된 탐지 체계를 갖춘 보안 체계가 필요합니다.
'서버인프라 > IT 뉴스' 카테고리의 다른 글
| 🎉 Gen AI 혁명의 시대를 여는 컨퍼런스 (1) | 2025.05.22 |
|---|---|
| 💡 CPU와 GPU는 뭐가 다를까? – 쉽게 풀어보는 컴퓨터의 두 뇌 이야기 (4) | 2025.05.20 |
| 🧠 네트워크 트래픽을 투명하게 파악하자 – eBPF 기반 Qtap 소개 (4) | 2025.05.20 |
| 🎯 AI가 앱을 만들어 준다고? 결국 당신이 알아야 할 것들 (2) | 2025.05.10 |
| PostgreSQL 18 베타 1 발표: 성능 개선과 새로운 기능들 (5) | 2025.05.09 |
댓글