아키뱅크
아키뱅크 버그 바운티에 대한 안내입니다.
내용
디파이 대출 프로토콜인 아키뱅크 출시 전, 컨트랙트 코드에 대한 버그 바운티를 실시합니다.
기간: 9월 15일 ~ 9월 27일
기존 조건
운영 상의 문제가 아닌 코드 상의 문제여야 함
상금: 100만 CAT (현 시세로 6000만원 상당)
40만 CAT 2명: 자금 탈취 가능한 수준의 버그 발견
컴파운드 또는 인버스 파이낸스에서 발생할 수 있는 동일한 문제가 아니어야 함, 배포된 컨트랙트에서 재현 가능해야 함
컴파운드 또는 인버스 파이낸스와 동일한 로직에 대한 버그인 경우 컴파운드 또는 인버스 파이낸스에서 재현 가능해야 함
5만 CAT 2명, 2만 CAT 5명
버그의 심각성에 따라 차등 지급
상금 수여자 발표: 9월 30일
커뮤니케이션 채널
조언
컴파운드와 인버스 파이낸스는 이미 상당기간 운영된 서비스이고 아직 해킹 사례가 없습니다. 이런 상황에서 상금을 받을 확률을 높이려면 변경된 부분에 집중하는 것이 유리할 것입니다.
분쟁 발생 시 처리 방법
커뮤니티에 올려서 공개적인 의견 듣고 처리, 커뮤니티 참여자가 적을 시 권위있는 전문가 의견을 반영
컨트랙트 코드
아키뱅크 컨트랙트 코드는 컴파운드를 포크한 인버스 파이낸스의 anchor를 포크했습니다.
다음과 같은 변경을 했습니다.
Comptroller
업그레이드 가능하지 않도록 최종 버전의 Comptroller를 직접 사용하는 방식을 사용했습니다.
Unitroller 컨트랙트 제거
Comptroller 이전 버전 컨트랙트를 제거
거버넌스 토큰을 직접 지급하지 않도록 함
COMP, INV와 관련된 코드 제거
거버넌스 관련 컨트랙트 제거
구현 없는 verify 함수 제거
에러 코드 리턴을 require로 변경, 명시적으로 컨트랙트가 실패하도록 함
CToken
Erc20 토큰들은 CErc20Immutable 컨트랙트만 사용
다른 Erc20 관련 컨트랙트 제거
JumpRateModelV2
이자모델은 JumpRateModelV2만 사용, 다른 이자모델 컨트랙트 제거
아키스왑 오라클
아키스왑 가격을 사용하는 가격피드와 오라클 작성
ArchiSwapOracle
ArchiSwapTokenFeed
InvFeed 참조
코드는 다음 링크에서 다운로드 받으실 수 있습니다.
* 테스트 중인데 참여자들이 컨트랙트 함수를 실행할 수 있어서, 테스트로 배포한 컨트랙트 주소는 삭제했습니다.
결과
자금 탈취 수준의 결함이나 상금을 지급할 수준의 버그 발견이 없었습니다.
Last updated