해법
약 2년 동안 한 봇넷을 추적한 아카마이 연구진은 그 봇넷이 새로운 생존 수법을 도입하는 것을 지켰다. 명령제어(C2) 서버가 싱크홀 처리될 때 — C2 인프라를 장악하는 방어자의 표준 조치 — 감염된 기기들은 비트코인 블록체인에 인코딩된 백업 서버의 IP 주소를 찾아낸다.
인코딩은 간결하고 정확하다. 운영자가 고른 한 지갑의 가장 최근 두 거래가 주소를 사토시 값, 즉 비트코인의 1억분의 1 단위로 담고 있다. 악성코드는 각 값을 16진수로 변환하고 바이트로 쪼갠 뒤 네 개의 옥텟으로 재조립한다 — 36,305 사토시는 209.141이 되고, 6,957은 45.27이 되어 209.141.45.27에서 작동하는 예비 서버가 완성된다. 원장은 탈중앙화되어 있으므로, 전통적인 백업 채널과 달리 테이크다운하거나 검열하거나 차단할 중앙 권한이 없다.
아카마이는 실제 환경의 봇넷이 탈중앙화 블록체인을 이런 방식으로 사용한 사례를 이전에 본 적이 없다고 밝혔다. 다만 연구 단계에서 이더리움 기반의 개념 증명 명령 서버가 존재했다. 범죄자들은 이전에도 은닉 채널을 사용했다 — 2018년 러시아 정부의 지원을 받는 해커들이 50만 대의 라우터를 대상으로 배포한 VPNFilter는 서버 포인터를 포토버킷 이미지 속 GPS 데이터에 숨겼다 — 그러나 그런 플랫폼들은 협조하도록 설득되거나 강요될 수 있었다. 블록체인은 그럴 수 없다.
달성한 것
테이크다운이 불가능한 공개 원장을 예비 주소록으로 사용하기: C2 IP를 평범한 비트코인 거래의 사토시 값으로 인코딩한다.
통한 이유
싱크홀링은 서버를 차단하거나 장악함으로써 작동한다. 원장에 저장된 쪽지는 어떤 압수에도 살아남는다.
비트코인 거래는 평범한 경제 활동이며, 외부인에게는 지갑 잡음과 구별되지 않는다.
쓰기 권한은 운영자에게만 필요하다. 감염된 모든 기기는 공개 체인을 읽기만 하면 된다.
탈중앙화는 호스팅 제공업체나 플랫폼에 압력을 가해 삭제하도록 하는 최후의 수단을 없앤다.
영속성이 필요한 누구에게나 공개적이고 불변하는 데이터 저장소가 인프라가 된다 — 방어자의 테이크다운 플레이북은 블록체인에 없는 삭제 버튼을 전제로 한다.
여파
아카마이는 2021년 2월에 이 분석을 발표하여 이 기법과 그 한계(예: 감시 가능한 지갑)를 공개했다. 연구진은 이더리움 개념 증명이 이 접근법이 다른 체인에도 일반화됨을 보여주었다고 언급했다. 봇넷 인프라의 숨바꼭질은 삭제 키가 없는 원장으로 옮겨갔을 뿐이다.
근거 확인하기
출처
- The bitcoin blockchain is helping keep a botnet from being taken down Ars Technica · arstechnica.com ·