컴파운드 코드 무작정 복사 중단, 디파이 대출 프로젝트 취약점 분석

연초에 Compound 코드를 분석했을 재정 보안 영향을 미칠 수 있는 두 가지 허점을 발견 했습니다 .

2022년 3월 15일, Hundred Finance가 공격을 받았고 해커들은 2363 ETH의 이익을 얻었으며 총 가치는 4천만 위안 이상이었습니다.

 

Hundred Finance 프로젝트 의 코드는 Compound에서 가져왔습니다 .

오늘은 컴파운드 의 허점 과 탈중앙화 대출 프로젝트가 생각 없이는 컴파운드 모델을 모방할 수 없는 이유를 간단히 분석해 보겠습니다.

취약점 1

이 취약점의 주된 원인은 Compound가 채택한 펀드 풀의 순가치 알고리즘이 공격받을 수 있기 때문인데, 공격자는 펀드 풀의 점유율이 작을 때 일정 금액의 자금을 악의적으로 이체하여 순가치가 최대값에 도달하여 나중에 입금하는 자금의 경우 주식 = 자금/주식이며, 분할 후 결과는 0이 됩니다. 즉, 사용자가 자금을 입금할 때 주식을 받지 않습니다! 그런 다음 공격자는 주식을 인출하여 사용자의 자금을 훔칠 수 있습니다.

 이 취약점을 악용하기 위한 조건은 상대적으로 까다롭기 때문에 기본적으로 펀드 풀이 생성되어야만 공격이 가능하며 Plugging은 매우 간단하다.

컴파운드는 이미 이 취약점에 대해 알고 있었으며, 이 취약점은 악용하기 어렵고 운영 수단을 통해 우회할 수 있다고 말했다. 실제로 생각해 보면 이 취약점이 악용될 수 있지만 악용되기는 어렵습니다.

취약점 2

이 취약점은 친숙하고 기본 논리는 콜백과 재진입이지만 실제로 첫 번째 취약점보다 심각하고 악용되기 쉽습니다.훅이 있는 토큰이 있는 한 공격할 수 있습니다!

컴파운드의 대답은 여전히 ​​이 취약점을 발견했다는 것입니다!

최종적으로 악용되는 취약점

그래서 2022년 3월 해킹 사건이 발생했고, 악용된 취약점은 위의 두 번째 아이디어와 동일했습니다. 실제로 해커는 더 무자비할 수 있습니다. exitMarket()을 호출하여 공격하는 동시에 대출 시장을 종료하면 공격자가 상환하거나 빌릴 때 모든 연체 금액이 무시됩니다!

실제로 이 허점을 막으려면 두 줄의 코드 순서만 변경하면 됩니다 .

가리비 알림

Scallop Technology는 수년 동안 블록체인 기술 개발을 연구한 회사로서 많은 회사와 기업가에게 프로젝트와 코드를 엄격하게 다루어야 함을 상기시킵니다 .

코드는 다른 사람의 것이지만 복사한 후에 허점은 스스로 부담해야 합니다. 문제가 발생하면 Compound도 감사 회사도 귀하를 책임질 의무가 없기 때문입니다.

프로젝트를 할 때나 큰 일을 할 때 디테일을 잡아야 하는 부분을 소홀히 해서는 안 됩니다! 질문이 있으시면 언제든지 문의해 주십시오.

Supongo que te gusta

Origin blog.csdn.net/shanbei2022/article/details/123921213
Recomendado
Clasificación