관점: Web3 보안의 핵심은 예방에 있으며, 네 가지 솔루션이 혁신적인 보안 모델을 구축합니다
저자:Wei Lien Dang, Unusual Ventures 일반 파트너, 보안, 인프라 소프트웨어 및 개발 도구 분야의 투자를 이끌다
출처:Techcrunch
편집:Richard Lee, 체인 포착기
Web1.0과 Web2.0에서 보안 모델은 애플리케이션 아키텍처의 변화에 따라 변화하여 새로운 경제를 여는 데 도움을 주었습니다.
Web1.0에서는 보안 소켓 계층(SSL)이 Netscape에 의해 처음 제안되어 사용자 브라우저와 이러한 서버 간의 안전한 통신을 제공했습니다; 신뢰할 수 있는 Web 2.0 중개 기관인 구글, 마이크로소프트, 아마존 및 인증 기관은 전송 계층 보안(Transport Layer Security, TLS)의 구현을 추진하는 데 핵심적인 역할을 했으며, TLS는 SSL의 후계자입니다.
Web3에서도 같은 일이 발생할 것입니다. 이것이 작년에 새로운 web3 보안 회사에 대한 투자가 10배 이상 증가하여 총액이 10억 달러를 초과한 주요 이유입니다.
Web3의 성공은 다양한 애플리케이션 아키텍처가 가져오는 새로운 보안 문제를 해결할 수 있는 혁신적인 보안 모델에 달려 있습니다. web3에서 분산 애플리케이션(Dapp)은 Web2.0에 존재하는 전통적인 애플리케이션 논리와 데이터베이스 계층에 의존하지 않고 블록체인, 네트워크 노드 및 스마트 계약을 통해 논리와 상태를 관리합니다.
사용자는 여전히 이러한 노드에 연결된 프론트 엔드를 통해 데이터를 업데이트할 수 있으며, 예를 들어 새로운 콘텐츠를 게시하거나 구매를 진행할 수 있습니다. 이러한 활동은 사용자가 거래에 서명하기 위해 개인 키를 사용해야 하며, 개인 키는 일반적으로 지갑에 의해 관리됩니다. 이 모델은 사용자의 통제와 프라이버시를 보호하기 위해 설계되었습니다. 블록체인上的 거래는 완전히 투명하고 공개적으로 접근 가능하며 변경할 수 없습니다(즉, 변경할 수 없다는 의미입니다).
모든 시스템과 마찬가지로 이러한 설계에도 보안 상의 절충이 있습니다. 블록체인은 Web 2.0처럼 참여자를 신뢰할 필요가 없지만, 보안 문제를 해결하기 위해 업데이트하는 것이 더 어렵습니다. 사용자는 자신의 신원에 대한 통제를 유지할 수 있지만, 공격이나 키 유출이 발생했을 때(예: Web 2.0 제공자가 도난당한 자금을 복구하거나 비밀번호를 재설정하는 방법) 중개인이 제공하는 구제 수단이 없습니다. 지갑은 여전히 이더리움 주소와 같은 민감한 정보를 유출할 수 있습니다. ------ 그것은 여전히 소프트웨어이며, 소프트웨어는 결코 완벽하지 않습니다.
이러한 절충은 당연히 중대한 보안 문제를 야기하지만, 이는 web3의 발전 모멘텀을 저해해서는 안 됩니다. 사실, 이는 그럴 가능성이 낮습니다.
Web 1과 Web 2의 유사성을 다시 고려해 보십시오. SSL/TLS의 초기 버전에는 심각한 취약점이 있었습니다. 초기의 보안 도구는 기껏해야 초기 단계에 불과했으며, 시간이 지남에 따라 더욱 견고해졌습니다. Web3 보안 회사와 Certik, Forta, Slita 및 Securify와 같은 프로젝트는 처음 Web1.0 및 Web2.0 애플리케이션을 위해 개발된 코드 스캔 및 애플리케이션 보안 테스트 도구와 유사합니다.
그러나 Web2.0에서는 보안 모델의 상당 부분이 대응에 관한 것이었습니다. web3에서는 거래가 실행되면 변경할 수 없으므로 거래가 먼저 발생해야 하는지 확인하는 메커니즘이 내장되어야 합니다. 다시 말해, 보안은 매우 예방적이어야 합니다.
이는 Web3 커뮤니티가 기술적으로 시스템적 약점을 해결하여 암호 원시에서 스마트 계약 취약점에 이르는 모든 새로운 공격 벡터를 차단하는 방법을 찾아야 함을 의미합니다. 동시에 예방적 web3 보안 모델을 추진할 수 있는 최소한 네 가지 계획이 있습니다:
첫째, 취약점의 진실 데이터 출처(source-of-truth data)
알려진 web3 취약점과 약점에 대한 진실 출처가 필요합니다. 현재 국가 취약성 데이터베이스(National Vulnerability Database)는 취약성 관리 프로그램에 핵심 데이터를 제공합니다.
Web3에는 분산된 동등물이 필요합니다. 현재 불완전한 정보가 SWC 레지스트리, Rekt, 스마트 계약 공격 벡터 및 DeFi 위협 매트릭스 등 여러 곳에 흩어져 있으며, Immunefi가 운영하는 취약점 보상 프로그램은 새로운 약점을 드러내는 것을 목표로 하고 있습니다.
둘째, 보안 의사 결정 규범
web3에서 중요한 보안 설계 선택과 개별 사건의 의사 결정 모델은 현재 불분명합니다. 권한 분산은 이러한 문제에 대해 아무도 책임지지 않음을 의미하며, 이는 사용자에게 큰 영향을 미칠 수 있습니다. 최근의 Log4j 취약점과 같은 사례는 보안을 분산된 커뮤니티에 맡기는 것의 경고 사례입니다.
분산 자율 조직(DAO), 보안 전문가, Alchemy 및 Infura와 같은 제공업체 및 기타가 긴급 보안 문제를 어떻게 협력하여 관리하는지에 대해 더 명확히 이해할 필요가 있습니다. 대규모 오픈 소스 커뮤니티가 OpenSSF 및 CNCF 자문 그룹을 구성하는 방법과 보안 문제를 해결하는 프로세스를 구축하는 방법에서 몇 가지 적용 가능한 교훈을 얻을 수 있습니다.
셋째, 인증 및 서명
현재 대부분의 DAPP, 가장 유명한 DAPP을 포함하여, API 응답에 대한 인증이나 서명을 수행하지 않습니다. 이는 사용자의 지갑이 이러한 애플리케이션에서 데이터를 검색할 때 응답이 예상된 애플리케이션에서 온 것인지, 데이터가 어떤 식으로든 변조되었는지 확인하는 데 격차가 있음을 의미합니다.
기본 보안 모범 사례를 채택하지 않는 애플리케이션의 세계에서 사용자가 자신의 보안 태세와 신뢰성을 결정하는 것은 거의 불가능한 작업입니다. 최소한 사용자에게 위험을 노출하는 더 나은 방법이 필요합니다.
넷째, 더 간단하고 사용자 제어가 가능한 개인 키 관리
암호화된 개인 키는 사용자가 web3 패러다임에서 거래를 수행할 수 있는 능력을 기반으로 합니다. 잘 알려진 바와 같이, 암호화된 개인 키는 올바르게 관리하기가 매우 어렵습니다. 현재 개인 키 관리에 대한 전체 비즈니스가 구축되어 있습니다.
개인 키 관리의 복잡성과 위험은 사용자가 비관리형 지갑이 아닌 관리형 지갑을 선택하도록 유도하는 주요 고려 사항입니다. 그러나 관리형 지갑을 사용하면 두 가지 절충이 발생합니다: 새로운 "중개인"이 생기며, 예를 들어 Coinbase와 같은 중개인은 web3의 완전한 분산 방향에 해를 끼칩니다; 또한 사용자에게 web3 사물에 접근할 수 있는 능력을 제한합니다. 이상적으로는, 추가적인 보안 혁신이 사용자에게 더 나은 사용성과 비관리형 시나리오에 대한 보호를 제공할 것입니다.
결론
주목할 점은, 앞의 두 가지 계획은 사람과 프로세스에 더 중점을 두고 있으며, 세 번째와 네 번째 계획은 기술 혁신이 필요합니다. 새로운 기술, 신흥 프로세스 및 대량의 사용자를 일치시키는 것은 web3 보안성을 이해하기 어렵게 만드는 이유입니다.
동시에 가장 고무적인 변화 중 하나는 web3 보안 혁신이 공개적으로 진행되고 있다는 점이며, 우리는 이것이 창의적인 솔루션을 가져올 것이라는 점을 결코 과소평가해서는 안 됩니다.