본문 바로가기

보안동향

Post Mortem of KlaySwap Incident through BGP Hijacking

https://medium.com/s2wblog/post-mortem-of-klayswap-incident-through-bgp-hijacking-898f26727d66

Executive Summary

클레이스왑에서 공개한 Incident Report에 따르면 2022년 2월 3일 11:31:41경 (한국시간 기준), 클레이스왑 UI를 통해 토큰이 공격자의 특정 지갑으로 전송되는 이상 트랜잭션이 최초로 실행되었다고 한다. 해당 사고에 대한 원인으로 외부 네트워크망 공격에 의한 사용자의 Kakao SDK 파일 위장 악성코드 다운로드가 제기되었다.

클레이스왑 뿐만 아니라 카카오톡 관련 서비스들은 마케팅 목적으로 카카오 SDK (Software Development Kit)라는 파일을 동적으로 로딩하여 사용하는데, 위 공격이 이루어지는 동안 ‘카카오톡 QR체크인’, ‘카카오맵’, ‘다음’ 등과 같은 해당 SDK를 사용하는 서비스에서 접속이 되지 않거나 느려지는 문제가 발생하였다.

S2W에서 이와 관련한 분석을 진행한 결과, 언급된 외부 네트워크망 공격에 BGP Hijacking 기법이 활용된 것으로 파악되었다. 공격자는 BGP Hijacking을 통해 네트워크 흐름을 조작하여, 클레이스왑에 접속한 일반 사용자들이 정상적인 SDK 파일이 아닌 공격자가 세팅한 서버로부터 악성코드를 다운로드 받도록 구성하였다.

알려진 바로는 접속 시 HTTP 헤더의 Referer 값을 확인하여 클레이스왑을 통해 접속한 사용자들에게만 악성코드를 유포했으며, 이외의 유저들에게는 서버 쪽 에러를 반환하였다. 이러한 이유 때문에 해당 SDK를 사용하는 이외 서비스들에 대한 접속 장애가 이루어졌던 것으로 파악된다.

이번 공격으로 인해 3일 11시 30분 부터 1시간 30분동안 클레이스왑 사용자가 자산 예치·스왑·인출 등을 요청할 경우, 즉시 악성코드에 명시된 해커의 지갑으로 코인이 전송되었으며, 블록체인 트랜잭션을 분석한 결과 탈취된 코인은 약 22억원의 가치이지만, 실제 공격자는 최종적으로 약 10억원 가치의 코인을 탈취해간 것으로 확인되었다.

S2W는 이번 BGP Hijacking 이라는 비교적 낯선 공격에 대한 설명, 그리고 자세한 공격 과정을 기술하여 공격의 위험성을 알리고, 이 공격으로 인해 실제로 어떤 피해가 발생할 수 있는지에 대하여 공유하고자 한다.

아래 분석결과에 언급된 모든 시간은 Korea Standard Time (UTC+9)을 기준으로 작성되었다.