제로 데텍션 봇넷, 허니팟으로 역공학 성공!
Rust로 제작된 DDoS 봇넷을 역공학하여 C2 프로토콜을 분석하고, 제로 데텍션 상태를 확인함.
Docker API 취약점을 통해 봇넷이 확산되며, C2 서버를 분석하여 공격 대상 및 패턴을 실시간으로 모니터링함.
허니팟 구축을 통해 봇넷의 공격 명령을 수집하고, AV 탐지 회피 기술의 발전과 대응의 중요성을 강조함.
Rust 봇넷의 기술적 분석
봇넷은 Tokio를 활용한 비동기 네트워킹, Bincode를 사용한 커스텀 바이너리 프로토콜, 그리고 obfstr을 통한 문자열 난독화를 통해 제작되었다. 구체적으로, Ghidra와 GhidRust 플러그인을 사용하여 역공학을 수행했으며, 이를 통해 봇넷의 C2 통신 흐름을 파악했다. 따라서, 봇넷은 Docker API를 악용하여 Alpine Linux 컨테이너를 생성하고, 악성코드를 다운로드하여 실행하는 방식으로 동작한다.
C2 프로토콜 취약점 및 허니팟 구축
C2 프로토콜은 암호화 부재, 예측 가능한 Nonce, 그리고 하드코딩된 사용자 이름과 같은 취약점을 가지고 있다. 구체적으로, 이러한 취약점을 이용하여 허니팟을 구축하고, 봇넷에 가짜 봇으로 참여하여 공격 명령을 수집했다. 반면, 이러한 허니팟은 봇넷의 공격 대상 IP와 공격 패턴을 파악하는 데 기여하며, 실시간 모니터링을 가능하게 한다.
대응 전략 및 보안 강화 방안
봇넷의 공격을 탐지하고 방어하기 위해 YARA 규칙과 Snort 규칙을 활용할 수 있다. 따라서, 봇넷의 파일 해시 및 네트워크 시그니처를 기반으로 탐지 규칙을 생성하여, 잠재적인 위협을 식별할 수 있다. 결과적으로, 정적 분석의 한계를 인지하고, 동적 실행을 통해 봇넷의 동작을 검증하는 것이 중요하다. 또한, Docker API 접근 제한 및 보안 패치를 통해 공격 벡터를 차단해야 한다.