KlayCity 공식 입장문

KlayCity NFT Minting 관련 요약

OrbCity.AI
7 min readJan 28, 2022

KlayCity는 1/27일 21:00에 NFT Presale을 진행하였습니다.
블록 시간 기준으로 카운트다운 중이였으나 동기화가 안되는 현상이 발생하여클레이튼의 KAS Node의 타임스탬프로 변경하였습니다.

Presale이 시작하는 21:00경에 다수의 접속으로 인해 KAS RPC 서버가 다운되었고 ‘Buy Now’버튼이 동작하지 않아 일시적으로 Presale을 중단하였습니다.

이 때 Klayscope(클레이튼 블록스캐너) 에 딜레이가 발생하여 Minting이 발생하지 않은 것으로 착각하여 관련내용을 공지 하였습니다.

이 후 약 5분 뒤에 Klayscope가 동기화 되었고 235개의 NFT가 Minting 되었다는 것을 알게 되었으나, 저희는 봇이 아니라고 판단하여 21:30분에 남은 물량에 대한 판매를 진행하기로 하였습니다.

하지만, 지속적으로 봇이 Minting을 성공 시키는 것으로 최종 확인되어 Presale을 중단하였습니다.

그리고 유저들의 피해를 최소화하기 위해 환불 처리를 진행하였고 자세한 분석 결과 Presale 전부터 저희를 모니터링 하면서 연구하여 저희 CAPTCHA 알고리즘을 사전에 파악한 봇이 있는 것으로 확인 되었습니다.

봇 관련 사항

구매에 성공한 계정에 대해 면밀한 추적 조사를 한 결과 봇을 통한 구매가 이루어졌다고 판단 하였습니다. 저희는 하루 전 두개의 캡챠 컨트렉트로 테스트 하였으며, 당일 그 중 한개를 선택하여 사용하였고 , 난수를 적용하여 내용 확인을 어렵게 하는 조치를 취했습니다.

https://scope.klaytn.com/account/0x90C8e13e06D6672b905542A62457D5E3Ff539353?tabId=txList

https://scope.klaytn.com/account/0x6d66e75be9864eefc8873360d6feb96d0dd90666?tabId=txList

하지만 저희가 Presale 테스트 과정을 테스트 서버에서 진행하는 것을 지속적으로 확인한 봇유저가 있었고, 전날 사용한 저희 소스와 컨트랙트를 분석하여 CAPTCHA의 알고리즘을 파악 후 입력값을 어느정도 특정하여 봇을 만든 것으로 판단됩니다.

이 봇은 21:00 분의 Presale 시작과 동시에 Minting에 성공하였습니다.

내부 소행에 대한 의혹

이러한 트렌젝션의 성공으로 인하여 내부자의 소행인지에 대한 의혹이 커뮤니티에서 제기 되었습니다.

의혹이 제기된 236번 구매 계정은 저희가 Cypress 환경에서 Presale 테스트 하는 것을 알아내어 테스트 사이트에 접속하여 0.001 Klay를 지불하고 테스트 Mintpass를 구매한 것으로 파악되었습니다.

저희가 보안유지를 위하여 CAPTCHA 알고리즘을 숨기기 위해 테스트시에는 해당 알고리즘을 적용하지 않아 Contract 호출을 통해 구매에 성공한것으로 판단되며, 이 계정이 실구매에 성공하여 다른 유저분들에게 혼란을 드린 것 같습니다.

다음 페이지의 내부 소행에 대한 의혹 추가 자료 를 참고해주시면 감사하겠습니다.

대응 상황

위와같은 내용을 토대로 저희는 Presale을 중단하고 전체 환불을 진행하였습니다.
00시 00분 00초에 발생한 건들이 다수 발생하였고, 노드의 타임스탬프로 카운트다운을 하였으므로 각 노드별 약간의 동기화 차이가 있어서 몇 초 일찍 구매가 가능할수도 있다고 생각하였고, 이에 따라 봇이 아닌 실유저로 판단하여 Presale을 30분 연장하여 재진행 하기로 하였습니다. 더구나 구매 된 건들이 모두 각각 다른지갑에서 1개씩만 구매되어 오판을 하게 되었습니다.

현재 저희 보안의 문제점을 파악하였고, 이에 대한 해결 방안을 강구하고 있습니다.

또한 발생한 사고에 대응하면서 준비가 부족하고 아쉬운 모습을 보여 드렸으며

실망하신 커뮤니티 일원들에 대해 대응하는 과정에서 미숙했던 부분 진심으로 사죄 드립니다.

재발 방지 대책

Presale에서 원활하고 유저들이 만족할 수 있는 수준의 서비스를 보여드리기 위해 라이브 환경에서 테스트 시 좀 더 확실한 보안을 유지 했어야 했습니다. 또한 보다 철저하고 강력한 보안 정책을 적용하여 유저들에게 보다 만족스럽고 공평한 Presale 참여 환경을 제공 했어야 했습니다.

앞으로 저희는 최선을 다해 안전한 QA 보안 체계를 구축하여 유저들이 신뢰할 수 있는 서비스로 거듭나겠습니다.

그리고 사고 발생 가능성이 있는 모든 케이스를 점검하고 대응 전략을 수립할 것이며 문제에 민첩하게 대응하여 유저들이 믿고 같이 성장할 수 있는 서비스로 만들어 나가겠습니다.

또한 그동안 소중한 시간을 할애하여 클레이시티에 관심과 애정을 보여주신 커뮤니티의 기대에 보답할 수 있도록 최선의 방안을 강구하겠습니다.

유저들에게 늦은 시간 큰 불편을 드리고, 미숙한 모습을 보인 점 다시 한번 죄송하다는 말씀을 드리며, 또한 응원과 도움을 주신 모든 분들에게 감사의 말씀을 드립니다.

내부 소행에 대한 의혹 추가 자료

내부소행 의혹이 있는 유저의 Wallet Address:

0xd57e64df029507c80b38f6a6cf1a385e76aa9726

테스트 진행 중인 NFT를 감지하여 직접 컨트랙트를 호출하면서 테스트 NFT를 구매하여 봇 개발 준비를 한 것으로 보임. 이 때 보안 상 캡챠를 적용하지 않아 컨트랙트만 알면 0.001 klay를 지불하고 쉽게 구매 가능했으며 이를 토대로 실제 Minting에도 봇을 통해 성공한 것으로 파악 됨.

내부 소행이라고 보기에는 테스트용 컨트렉트를 통해 구매 시도 시 1)500 Klay를 입력하여 시도한 점과 2)캡챠 실패가 다수 발생하였는데, Minting 경쟁율이 매우 높은 상황에서 일부러 오류를 발생시키면서 시간을 끌고 성공 시키지는 않을 것으로 사료됨.

또한 실제 3)Minting 성공의 시간 Interval이 매우 긴 것으로 보아 내부 로직을 정확히 알고 진행한 것은 아닌 것으로 보이며 스스로 연구를 통해 만든 일반적인 봇으로 파악됨

테스트 민트 패스를 구매한 Opensea 계정으로 봇 구매 연습을 진행 한 것으로 보이는 정황:

https://scope.klaytn.com/account/0x6d66e75be9864eefc8873360d6feb96d0dd90666?tabId=txList

2) 봇을 통해 Minting 시도 현황 -> 대량의 캡챠 실패 발생

3) Minting 성공 시간의 Interval이 긴 것으로 보아 무작위로 캡챠 뚫기

시도

--

--

OrbCity.AI

ORBCITY.AI offers a decentralized Spatial AI service based on LRM, analyzing and converting user-uploaded images and videos into 3D spatial data.