버신: zkSync 생태 DEX Merlin 보안 사고 분석
원본 출처:Beosin
원본 출처:2023년 4월 26일 버신이글아이 상황인식 플랫폼에 따르면 멀린덱스에서 보안사고가 발생했다.USDC-WETH 유동성 풀의 모든 자금이 인출되었으며 공격자는 약 180만 달러의 총 이익을 얻었습니다.
멀린덱스는 탈중앙화 거래소인 것으로 파악되며, 이번 보안사고에 대해 버신 보안팀에서 1차로 분석한 결과 다음과 같다.
이벤트 관련 정보
분석을 위한 예로 트랜잭션 중 하나를 살펴보겠습니다.
0xf21bedfb0e40bc4e98fd89d6b2bdaf82f0c452039452ca71f2cac9d8fea29ab2
공격자 주소
0xc0D6987d10430292A3ca994dd7A31E461eb28182
0x2744d62a1e9ab975f4d77fe52e16206464ea79b7
공격받은 계약
0x82cf66e9a45Df1CD3837cF623F7E73C1Ae6DFf1e (USDC-WETH 풀)
공격 과정
공격 과정
1. 첫 번째 단계에서 풀 작성자(0xc0D6987d10430292A3ca994dd7A31E461eb28182)가 공장 계약(0x63E6fdAdb86Ea26f917496bEEEAEa4efb319229F)을 생성하고 Feeto 주소를 (0xc0D6987d10430)으로 설정했습니다. 2 92A3ca994dd7A31E461eb28182).2. 공격자는 공장 계약을 통해 USDC-WETH 풀(0x82cf66e9a45Df1CD3837cF623F7E73C1Ae6DFf1e)을 배포하고,
풀이 초기화되었을 때 풀에 있는 USDC와 WETH는 컨트랙트 팩토리의 Feeto 주소에 최대한 권한이 주어졌는데, 중앙 집중화의 명백한 위험이 있음을 알 수 있습니다.
3. 따라서 최대 권한으로 공격자는 풀의 모든 토큰을 전송합니다.
4. 공격 전에 공장 컨트랙트의 Owner와 Feeto 주소가 변경된 점에 유의할 필요가 있는데, 이 단계는 공격에 필요하지 않으며, 이는 공격자가 다른 사람들을 혼란스럽게 하기 위한 조작일 수 있다고 추측됩니다. .
마지막으로 USDC-WETH 유동성 풀의 모든 자금이 인출되었으며 공격자는 약 180만 달러의 총 이익을 얻었음을 알 수 있습니다.
취약점 분석버신 보안팀은 이번 공격이 주로 사용된 것으로 분석했다.
페어 컨트랙트의 중앙 집중화 문제는 초기화 시 팩토리 컨트랙트의 Feeto 주소에 대한 권한을 최대화하고 풀에 있는 자금은 초기화 시 설정된 Feeto 주소로 언제든지 인출할 수 있습니다.
자금 추적
공격자는 풀에서 811K USDC를 공격자 주소 1(0x2744d62a1e9ab975f4d77fe52e16206464ea79b7)로 전송하기 위해 transferFrom 함수를 호출했습니다. 공격자 주소 2(0xcE4ee0E01bb729C1c5d6D2327BB0F036fA2cE7E2)는 토큰 1 계약(WETH)에서 435.2 eth를 추출하여 이더리움 주소(0xa7D481944730a88B862eB57248Cb1B2C 8aa358Ad)와 주소(0x 0b8a3ef6307049aa0ff215720ab1fc885007393d) 총 수익은 약 180만 달러입니다.Beosin KYT 자금세탁방지 분석 플랫폼은 도난 자금이 위에서 언급한 공격자의 두 이더리움 메인넷 주소에 여전히 저장되어 있는 것으로 확인되었으며, Beosin 보안 팀은 도난 자금을 계속 모니터링하고 추적할 것입니다.
요약하다
요약하다이번 사건에 대해 버신보안팀은 다음과 같이 권고합니다.


