Liquid Exchange 해킹피해 가상자산 추적 및 조사: 자금세탁 과정, 연루된 거래소들, 토네이도 캐시(Tornado Cash) 그 이후는?

Sentinel Protocol Team
Sentinel Protocol
Published in
15 min readSep 1, 2021

--

(*Tornado Cash: 이더리움 거래 프로토콜 중 하나로, 강화된 익명성을 보장하는 서비스를 제공한다.)

작성자: 도노반(Donovan), Team Manager (Threat Intelligence Operations)

지난 2021년 8월 19일 목요일, 리퀴드 거래소(Liquid Exchange) 는 약 9천만 달러(한화 약 1,053억) 로 추정되는 대규모 가상자산 해킹을 당했습니다. 일본 암호화폐 거래소는 먼저 트위터 성명을 통해 자신들의 웜 월렛(Warm wallet)이 해킹 당한 사실을 밝혔고, 도난당한 자산이 이체된 해커의 암호화폐 주소 목록도 함께 공유했습니다.

(*Warm wallet: 웜 월렛은 ‘핫 월렛(Hot Wallet)’과 같은 기능을 하는 디지털 자산 보관 시스템이다. 이들의 가장 큰 차이점은 대부분의 거래소에서 제공하는 핫 웰렛과 달리, 웜 웰렛은 다운로드 가능한 소프트웨어라는 점이다.)

트위터에 게재된 리퀴드 거래소의 공지 (https://twitter.com/Liquid_Global/)
트위터에 게재된 해커의 암호화폐주소 리스트(https://twitter.com/Liquid_Global/)

이번 해킹으로 도난당한 자산에는 비트코인(BTC), 이더리움(ETH), 트론(TRON), 리플(XRP) 등 다양한 블록체인이 포함되어 있었습니다. 저희 팀은Ethereum Chain(이더리움 체인)을 중심으로 자금 흐름을 조사했으며, 당사의 추적 툴을 활용하여 다양한 조사결과를 도출해낼 수 있었습니다.

이번 조사를 통해, 우리는 해커의 운영 방식이 비교적 명확히 확인해볼 수 있었는데 이는 1) 탈취한 다양한 토큰들을 ETH로 교환한 후 도난 자산을 세탁하기 위해 트랜잭션 개인 정보 보호 믹서 서비스인 Tornado Cash(토네이도 캐시)를 통해 전달하거나 또는 2) 탈취자산을 중앙화 거래소(CEX)로 이전해 궁극적으로는 현금화 시키고자 한 것으로 보입니다. 이중에서도 해커는 방법1)에 좀 더 비중을 둔 것으로 보이며 이더리움 체인상에 있는 아주 소량의 탈취자산만 중앙화 거래소(CEX)를 거친 것으로 보입니다.

총 25개의 지갑이 이더리움 체인에서 발생한 자금세탁과정에 연루되었으며, 우리 팀은 이를 보다 쉽게 이해할 수 있도록 5개의 주요 카테고리(해커의 지갑, 스와핑, 보관, 거래소 및 자금세탁 지갑)으로 구분했습니다.

1: 해커의 지갑

해커 1: 0x5578840AAe68682a9779623Fa9e8714802B59946 (이더스캔 상, 리퀴드 거래소 해커 1)

해커 2: 0xEFB33ccafC98d5fDB27A6F5Ff17350CA76BF3b53 (이더스캔 상, 리퀴드 거래소 해커 2)

이 지갑들은 리퀴드 거래소에서 최초로 식별된 해커의 지갑입니다. 서로 다른 ERC-20계열 토큰 69개를 포함한 대부분의 탈취자산은 다수의 거래를 거쳐0x5578(해커 1)로 전송되었고, 이 지갑들을 기반으로 스와핑 및 자금세탁 프로세스도 촉진되었습니다.

해커1과 달리 해커2는 한 번의 거래로 총 538.274 ETH를 받았고, 자금은 더 이상의 이동없이 그대로 해커2의 지갑에 들어 있었습니다.

2: 스와핑용 지갑

해커 3: 0xFF0f573bdf4c23E41EA3ECD82efa66828706B711

해커 4: 0xEC06A00Df7fe291c9F872449385BD593E38d8133

해커 5: 0x262feb0550F3b6927ee5CBaa2fcfF77c1D270dbe

해커 6: 0xD66D9EC7f0D89E0E6698953a7f44158552fbaf8f

해커 7: 0xaf9bdc92c920415CBCB8572a2dCb8aaDE778312b

해커 8: 0xC4Af9d67850eD5523b876B2276656170689162cE

해커 9: 0x11cf04ee89C9EF56D9EF6126e914286770B8571f

스와핑 지갑은 해커가 탈취한 토큰을 ETH로 교환하기 위해 사용하는 지갑입니다.
탈취자산들은 해커 1에서 각기 다른7개의 지갑으로 분산되었습니다. 해커는 이러한 지갑을 통해 다양한 DEX(Decentralized Exchange) 또는 1인치(1inch), 유니스왑(Uniswap), 스시스왑(SushiSwap)과 같은 관련된 서비스를 이용하여 스왑을 진행했습니다. 스왑으로 생성된 ETH는 이후 해커 1의 지갑으로 다시 보내지거나 스와핑 지갑들에 그대로 두었습니다.

이러한 스왑의 발췌 내용은 아래 CAMS(Crypto Asset Monitor Service)의 스왑 테이블에서 캡처한 스크린샷에서 확인할 수 있습니다. CAMS는 최신 가상자산 모니터링 툴로, 사용자가 정보 대시보드를 통해 가상자산을 실시간으로 추적하고 결과를 확인할 수 있는 서비스를 제공합니다. 현재 상업적으로 미공개 상태이나, 현재는 개발 막바지 단계에 있으며 이번 조사를 돕기 위해 사용되었습니다.

CAMS의 스왑 테이블

3: 보관용 지갑

해커 10: 0x5D3eED25350E5737c9377d5B4b9AF69ca0d3444C (SAND)

해커 11: 0x5D8eCEF85058b33Cc7130b975Cfe07B548feE50A (SAND, IDRT, UNI, ENJ, RSR, DENT)

해커 12: 0x5D2C9f717Da427a9c8Cc20c44EA57BA61d5bc457 (SNX)

해커 13: 0xE327405403D735BF88cD12543181B441e629b978 (WaBi)

해커 14: 0x1d5693804559484Ec5DDf2E9B5277F7434B0aD12 (WaBi)

해커 15: 0xCC6fAdeD04355924121E1666c22c6e323DE319d3 (WaBi)

해커 16: 0xc7e167Cf39737f4580F4427126Fe0BA72339222f (WaBi)

보관용 지갑은 해커가 탈취한 자산들을 더 이상의 이동없이 통합해 보관하는 지갑이자 토큰들이 해커에게 전달되기위해 거쳐가는 중계 지갑을 말하며 총 7 개의 지갑이 확인되었습니다.

처음 해커 1에 있던 탈취자산들은 해커 3(0xFF0f5)을 통해 해커 10(0x5D3e)과 11(0x5D8e)으로 이동했고 해커 5(0x262fe)를 통해 해커 12(0x5D2C)에 전송되었습니다. 해커 1에서부터 흘러 들어온 탈취된 와비 (WaBi)토큰은 해커 9, 13, 14, 15을 거쳐 해커 16(0xc7e16)으로 이동했습니다.

4: 거래소 지갑

해커 17: 0x23b4f411AC7D45be5380741bb10957cE11b0E483

해커 18: 0x583905662f2736bA8e867603B286E1345e201A7b

해커 19: 0xCcBb13AE65a39624cdCd2C96C973ae0370540e47

해커 20: 0x4811788fc28FdCf97099B07E71aef8Fdf899c679 (Huobi User Wallet)

해커 21: 0xF03D4a4529a47791B30156d3d381E19dd1A0C9fE

해커 22: 0xb514cC2b57b6A9a88e4DBf033a3A8d71c6b340eE (Bilaxy User Wallet)

우리 팀은 이더리움 체인상에서 탈취당한 자산들도 후오비(Huobi)와 빌락시(Bilaxy) 거래소로 이동한 것을 확인할 수 있었습니다. 가상자산 모니터링 툴CAMS(Crypto Asset Monitor Service)에서 캡처한 스크린샷을 보면, 3,216,461.3 LND가 해커22(빌락시 사용자 지갑)으로 이동되는 동안, 25,496,397.9 VIDY와 90,579.4 FSN의 가상자산도 해커20 (후오비 사용자 지갑)으로 전송된 것이 확인되었습니다.

후오비 사용자 지갑(해커20: 0x48117)과 연관된 탈취자산 입금내역 (CAMS 스크린샷)
빌락시 사용자 지갑(해커22: 0xb514cc)과 입금된 관련 탈취자금들 현황(CAMS 스크린샷)

해커 1에서 2 CEX(중앙화 거래소)로의 자금 흐름은 지갑 간 거래 흐름을 직관적으로 시각화한 포렌식 조사 분석 툴 CATV (Crypto Analysis Transaction Visualization)를 통해 하단에서 보다 명확히 확인할 수 있습니다.

탈취된 자산이 해커1→후오비로 이동한 자금흐름 (CATV 스크린샷)
탈취된 자산이 리퀴드 거래소→ 빌락시 거래소로 이동한 자금의 흐름 (CATV 스크린샷)

5: 자금세탁용 지갑

해커 23: 0x37A0D873E8B29fB5303E00e9300Ccb2EeB5A2786

해커 24: 0xb551160E088709076bB1c25A33028c040e790f61

탈취된 토큰들은 ETH로 스왑된 이후 스와핑 지갑을 통해 해커 1에게 되돌아갔고, 해커는 해커 1에서 세탁 지갑2으로 ETH를 전송하기 시작했습니다.

이러한 자금세탁 지갑들은 해커가 ETH를 개인 정보보호 서비스인 토네이도 캐시로 보내, 믹서 역할이 보다 효율적으로 이행되는데 사용되었고, 이는 탈취자산을 세탁하고 해커의 흔적들을 덮기 위한 의도로 볼 수 있습니다. 이 글을 작성하는 현재, 리퀴드 거래소 해커로부터 약 9,000 ETH가 토네이도 캐시를 거쳐갔습니다.

토네이도 캐시 이후는?

해커 25: 0xC4C6E460D0F659e99802208813A2Cc80a0F8B7Fe
흥미롭게도, 우리는 해커24 (자금세탁지갑)가 6.7604 ETH을 0xC4C6E460D0F659e99802208813A2Cc800F8B7Fe (해커 25)주소로 보낸 것을 확인했습니다.

출처: 이더스캔(etherscan.io)

해당주소를 CATV를 통해 분석해보면, 아래와 같은 정보를 도출해낼 수 있습니다.

토네이더 캐시와 해커9로부터의 ETH 자금흐름이 해커25에서 마무리되는 모습 (CATV 스크린샷)

위와 같이 첫 기점인 해커9로부터 해커24에서 보낸 6.7604 ETH 외에도 0xC4C6E는 모두 2홉이 넘는 토네이도 캐시에서 나온 각기 다른 지갑에서 ETH를 받았습니다.

이에, 위의 관찰내용을 바탕으로 한 다양한 시나리오를 생각해 볼 수 있습니다.

시나리오 1: 0xC4C6E는 해커의 소유, 잠재적인 실수 발생

첫째, 0xC46CE는 해커의 소유일 수 있으며, 여기에서 그는 6.7604 ETH를 보냈고, 이 지갑을 이용해 토네이도 캐시에서 세탁한 자금 중 일부를 통합했습니다. 이번 ETH 전송은 기본적으로 토네이도 캐시를 통해 세탁된 자금의 일부를 해커와 다시 연결하기 때문에 이는 해커의 실수일 수 있습니다.

이 지갑의 ETH는 1인치(1inch) 및 유니스왑(Uniswap)을 통해 이후 RenBTC로 스왑되었고 그 후에는 Ren: BTC 게이트웨이 계약(0xe4b679400F0f267212D512B95F58C83243EE71)을 통해 사라졌습니다. 본질적으로 이 과정은 자산을 크로스 체인을 이용해 이더리움 체인에서 비트코인 체인으로 이동하려는 것으로 볼 수 있습니.

우리는 이러한 크로스 체인을 이용한 거래의 분석을 통해 총 99.22 BTC에 달하는 자산을 받은 다음의 3개의 BTC 주소를 밝혀냈습니다.

1. 16EjYD8gUJLAUvgzRhU9uwFh9zq1efLpzm

2. 15vp5bKz2HEyXozaj1Qj5bvErGmEHDJRnj

3. 15hGxz64gCPfUiLKbH7CTgGbk7wNKQw89G.

이 글을 작성하는 현재, BTC는 이 지갑에서 전송되지 않았습니다.

시나리오 2: 해커가 소유한 것이 아닌 0xC4C6E, 해커가 유인하고자 한 바는?

해커가 세심하고 조심스러운 행동을 보인 것을 감안할 때, 우리는 해커가 의도적으로 함정을 만들었을 가능성을 무시해서는 안 됩니다. 6.7604 ETH 송금은 토네이도 캐시의 자금이 0xC4C6E로 보내진 이후에 발생했기 때문에, 이 지갑은 해커 소유가 아닐 수 있습니다. 토네이도 캐시를 이용한 다른 사용자일 수도 있으며, 6.7604 ETH 전송은 미끼일 가능성이 있습니다.

가능성이 있는 다른 해커 지갑?

해커가 서비스를 통해 돈을 세탁한 이후 기간(8월 20일~23일)동안 토네이도 캐시로부터 ETH를 받은 지갑들을 분석 결과, 다량의 ETH를 전송받은 지갑 2개의 고유한 지갑을 확인했습니다.

1.0x24D97E138AFb957eD2D752b93e48A6E00b4a6723

2.0xAb24a 1990B94A4A01314f774bC55c747e6167805

각각의 계좌는 토네이도 캐시에서 시작된 3,000개의 ETH를 받았으며, 이 계좌들의 자금 흐름을 추적해 보니 자금들은 3개의 Binance(바이낸스) 사용자 지갑에 있었고, 각 지갑마다 1,500개의 ETH가 들어 있었습니다.

바이낸스 사용자 지갑

1.0x849d33d0Ae0E7DA506788b1e340BF08C395c88dB

2.0x8646366D3ecCa3bC77dD20e8D581F313374A084

3.0x86Ba42e98eA77B55B80408d81aBf7eF86499806e

비록, 토네이도 캐시 서비스 특성상 이 지갑들이 해커 소유인지를 확인할 수는 없지만 여러 가지 요인들에 비추어 볼 때, 이는 충분히 더 조사할 가치가 있다고 판단됩니다. 수집된 자료에 기반해, 우리는 다음 사항을 관찰하고자 합니다.

1. TRON과 XRP상 해커의 활동에 비추어 볼 때, 해커는 같은 숫자로 자금을 분리하여 새로운 지갑들에 두는 것을 선호합니다.

2. 식별된 지갑들로 유입은 대규모(6,000ETH)로, 해커가 토네이도 캐시에 보낸 약 9,000ETH의 일부일 수 있습니다.

3. 해커는 이전에 TRON과 XRP를 통해 탈취한 자산을 Binance에도 보낸 이력이 있습니다.

이러한 사항들은 해커와 이 지갑들을 연결 지을 수 있는 구체적인 증거는 아니나, 연관 가능성을 보여주는 지표가 될 수 있습니다.

지속적인 노력

이 글을 작성하는 현재, 탈취된 토큰의 상당수가 해커의 메인 지갑(해커 1)에 그대로 들어 있고, 해커는 여전히 이 토큰을 스왑하고 세탁하는 과정에 있습니다. 앞으로도 우리 팀은 자사 툴을 이용해 탈취된 자산의 거래 흐름을 지속적으로 모니터링하고 연관된 거래소들에 연락을 취할 것입니다.

Uppsala Security에서는 귀하와 귀사가 가상자산 규정을 준수하고 가상자산을 안전하게 유지할 수 있도록 포괄적인 솔루션을 제공합니다 당사는 또한 가상자산 추적에 도움이 필요한 개인과 기업 모두에게 가상자산 추적 서비스를 제공합니다.

이번 조사에 사용된 거래 흐름을 직관적으로 시각화한 포렌식 조사 분석 툴 CATV에 대한 자세한 내용은 여기를 참조해주세요.

가상 자산 추적 서비스가 필요한 경우 당사 웹사이트
https://uppsalasecurity.com/trackingsvc/를 방문해주세요.

최신 가상자산 모니터링 툴 CAMS(Crypto Asset Monitor Service)와 같은 향후 제품 릴리즈에 대한 업데이트를 받으려면 Telegram, LinkedIn, Twitter, Facebook, 에서 웁살라시큐리티를 팔로우 하고 최신 뉴스를 확인해보세요.

회사 정보

웁살라시큐리티 (Uppsala Security)
아시아 테크의 중심 싱가포르에 본사를 둔 웁살라시큐리티는 30여명의 숙련된 보안 전문가로 구성된 블록체인 사이버 보안 회사로, 최초의 블록체인 기반 크라우드 소싱 보안 플랫폼인 ‘센티넬프로토콜(Sentinel Protocol)’을 서비스하고 있습니다. 자사의 독자적인 AI 머신러닝 알고리즘 바탕으로 가상자산 부정거래를 사전에 식별 및 신속하게 추적할 수 있는 원천기술을 소유하고 있으며 세계적인 컨설팅 기업 ‘프로스트 앤 설리번(Frost & Sullivan)’으로부터 ‘2020년 아시아태평양 블록체인/가상자산 보안기술 혁신상’을 아태지역 최초로 수상하며 기술력을 인정받은 바 있습니다. 현재 글로벌가상자산대응센터(CIRC)를 부설기관으로 설립, 싱가포르 본사를 중심으로 아세안 지역과 한국 시장의 사법기관, 거래소, 지갑회사, 결제사업 업체, 디파이(De-fi) 금융기업 및 글로벌 엔터프라이즈 등 다양한 분야의 고객을 확보하고 있습니다.

--

--

Sentinel Protocol Team
Sentinel Protocol

Operating on blockchain technology, Sentinel Protocol harnesses collective cyber security intelligence to protect crypto assets against hackers, scams and fraud