아크로폴리스(Akropolis) - REKT



페리클레스는 무덤 속에서도 탄식할 것 같습니다.

아크로폴리스(Akropolis)는 B.C. 480년 살마니아 전투 이후로 이렇게 까지 망했던 적은 없었습니다.

현대 시대 왕인 Xerses는 아크로폴리스(Akropolis)를 다시 한 번 일으켰고, 플래시 론과 재진입(re-entrancy)공격을 통해 $2,000,000 DAI 를 훔쳤습니다.

처음에는, 아크로폴리스(Akropolis) 관리자들이 단순히 몇 가지 "오류"를 해결하고 있다고 주장했습니다.

우리는 그들이 2백만 달러를 소각시킨 것을 알고 있습니다.
어떻게 그랬을까요?

아크로폴리스(Akropolis) 프로토콜은 유저들이 볼트(vault)에 토큰을 넣으면 다른 토큰들을 주었습니다. 새로 받는 토큰의 양은, 얼마나 입금했는지에 따라 다르게 제공하였습니다.

입금을 얼마나 했는지 계산하는 방법은, 전송이 일어나기 전과 후의 잔고를 비교함으로써 진행되었습니다.

여기서 보듯이, 공격자는 재입금이라고 불리는 악의적인 토큰 컨트랙트(재진입, reentrancy)를 만들어서 공격했습니다. 이것이 공격자의 컨트랙트 입니다.

  1. 가짜 토큰을 만든다

  2. 가짜 토큰을 입금한다

3a. 가짜 토큰을 콜백하고, 25k DAI를 입금한다

3b. 25k DAI 입금만큼의 새로운 토큰을 받는다

  1. 25k DAI 입금만큼의 새로운 토큰을 받는다

  2. 받은 토큰들로 50k DAI를 출금한다

Credit samczsun

공격자들은 자신의 컨트랙트를 입금 토큰으로 사용할 수 있었기 때문에, 아래와 같이 dydx 플래시 론을 사용해서 재진입 공격을 할 수 있었습니다.
이것이 해커의 주소입니다. 여기서 보듯이 해커들은 8시간 전에 $50k 공격을 시작하였습니다.

그리고 그들은 여기서 얻어진 200만 달러의 수익을 다른 주소로 옮겼고, 이 글을 작성할 시점에는 이곳에서 멈춰있었습니다.

Credit @dogetoshi

해커들이 가지고 놀았던 스마트 컨트랙트들은 두 곳의 독립적인 보안 회사인 Smartdec과 Certik의 오딧(audit)을 받았다는 점을 명심해야합니다.

Smartdec은 비교적 좋은 트랙 레코드가 있지만, Cerik의 경우에는 이전에 오딧을 진행했음에도 해킹을 당했던 프로젝트 리스트에, 원치 않지만, 아크로폴리스(Akropolis)가 추가되었습니다.

bZx, Lien, Harvest, 그리고 아크로폴리스(Akropolis)까지. 보안 오딧(audit)이 완벽한 보안을 보장하지는 않지만, Certick 오딧(audit)의 경우 그 무게감이 조금 가벼워졌습니다...

아무리 잘만들고, 세심하게 오딧(audit)을 받은 컨트랙트라도 나쁜 사람의 손에 들어간다면 가치가 없어질 수밖에 없습니다. 아크로폴리스(Akropolis)가 유저들에게 그렇게 빨리 거짓말을 했던 것을 보면, 온전히 Certik이나 해커들만 비난할 것은 아닙니다.

우리는 항상 신뢰할 필요 없는 프로토콜을 원하지만, 유저와 서비스 제공자간의 커뮤니케이션은 언제나 신뢰성으로 보호받아야 마땅하기 때문입니다.

아크로폴리스(Akropolis)는 그 신뢰를 잃었고, 털렸습니다.


기사 공유하기

REKT는 익명 작성자들에 의한 공공 플랫폼이며, REKT에 작성된 관점이나 내용에 대해서 그 어떤 책임도 지지 않습니다.

기부 (ETH / ERC20): 0x3C5c2F4bCeC51a36494682f91Dbc6cA7c63B514C

disclaimer:

REKT는 당사 웹 사이트의 익명의 작성자 또는 REKT에 의해 게시되거나 관련된 서비스에서 게시되는 콘텐츠에 대해 어떠한 책임도 지지 않습니다. 당사는 익명 작성자들의 행동 및 게시물에 대한 규칙을 제공하지만, 익명의 작성자가 웹 사이트 또는 서비스에 게시, 전송 혹은 공유한 내용을 통제하거나 책임지지 않으며, 귀하가 웹 사이트 또는 서비스에서 직면할 수 있는 불쾌함, 부적절함, 음란함, 불법 또는 기타 해로운 콘텐츠에 대해서도 책임을 지지 않습니다. REKT는 당사 웹 사이트 또는 서비스 사용자의 온라인 또는 오프라인 행위에 대한 책임을 지지 않습니다.