인터뷰
Giovanni Vignone, Octane Security CEO 겸 설립자 – 인터뷰 시리즈

Giovanni Vignone, CEO 겸 설립자 Octane Security, 2022년에 회사를 설립하여 Web3에서 증가하는 사전 예방 사이버 보안 필요성을 해결하고자 했습니다. 불과 22세에 그는 AI 기반 플랫폼을 구축하기 시작했으며, 이 플랫폼은 24시간 365일 보안 엔지니어처럼 작동하여 스마트 계약 코드베이스를 실시간으로 분석하고 CI/CD 파이프라인에 직접 통합하며 전통적인 감시에서는 종종 놓치는 취약점을 포착합니다.
이번 대화에서는 Octane의 사명을 살펴봅니다. 지속적이고 설명 가능한 취약점 탐지를 소프트웨어 개발 라이프사이클에 삽입하는 것과 smart contracts의 미래를 보호하기 위해 필요한 것에 대해 이야기합니다.
듀크 대학을 떠나 Octane을 전념해 구축하게 된 동기는 무엇이었나요? 기회를 명확히 한 특정 순간이 있었나요?
듀크 대학 3학년 때, OpenAI 플랫폼에 조기 베타 액세스를 받아 암호화폐 스마트 계약에 대형 언어 모델을 실험하기 시작했습니다. 그 결과는 가능성에 대한 눈을 크게 열어 주었습니다.
특히 기억에 남는 순간이 하나 있었습니다. 스마트 계약을 채팅 인터페이스에 입력하고 문제를 찾아달라고 요청했습니다. 결과는 다소 보완이 필요했지만, LLM을 사용해 찾기 어려운 취약점을 발견할 수 있는 거대한 잠재력을 즉시 확인할 수 있었습니다. 이는 2023년 3월의 일입니다.
이때 산업 전반에 걸쳐 발생하는 해킹과 악용 사례들을 목격하고 있었습니다. 이러한 보안 문제를 신속히 해결해야 할 절박함을 깨달았고, 이 모델들이 독특한 해결 방안을 제공한다는 것을 알게 되었습니다. 바로 이 순간이 Octane에 전념하기에 적절한 시점이라는 직감이 들었습니다.
Octane을 개념 단계에서 주요 암호화폐 기업이 채택하도록 만드는 과정에서 가장 큰 기술적 또는 운영상의 도전 과제는 무엇이었나요?
가장 큰 기술적 도전은 취약점을 식별하고 이를 사용자가 실제로 활용할 수 있는 방식으로 보여주는 방법을 찾는 것이었습니다. 이는 취약점이 흑백이 아니라 다차원적이기 때문에 매우 어려웠습니다.
잠재적인 취약점을 살펴볼 때, 우리는 여러 요소를 고려해야 합니다: 영향(누군가가 금전이나 중요한 상태를 잃을 수 있는가?), 악용 난이도, 해결 방안, 그리고 근본 원인. 이러한 모든 측면을 동시에 다루고 명확히 제시하는 데 많은 작업이 필요했습니다.
우리는 이러한 각 구성 요소를 제품화하는 데 많은 노력을 기울여 고객이 Octane을 사용해 취약점을 찾고, 그 심각성을 빠르게 이해하며, 즉시 수정할 수 있도록 했습니다. 다양한 코드베이스에서 일관되게 이러한 문제를 감지할 수 있는 시스템을 구축하려면 기술적 전문 지식과 다양한 취약점에 대한 방대한 데이터가 모두 필요했습니다.
Octane은 모든 개발 팀에 내장된 AI 보안 엔지니어처럼 기능하는 것을 목표로 합니다. 이 목표를 산업 전반에 완전히 실현하기 위해 필요한 이정표는 무엇인가요?
첫 번째 큰 이정표는 개발자들의 보안 인식을 바꾸는 것입니다—출시 몇 주 전이 아니라 처음부터 보안을 구축하도록 하는 것이죠. 이는 보안을 처음부터 시작하면 문제를 조기에 해결함으로써 실제로 시간을 절약한다는 것을 보여주는 것을 의미합니다.
또한 사용자가 취약점을 조기에 발견했을 때 어떤 일이 일어나는지 직접 보고 이해하도록 도와야 하며, 이를 통해 혜택을 체감할 수 있게 해야 합니다.
제품 측면에서는 Solidity뿐만 아니라 다른 스마트 계약 언어와 궁극적으로 일반 프로그래밍 언어까지 지원해야 합니다. 우리는 모델의 정확성을 높이고 더 다양한 유형의 취약점을 포착하도록 지속적으로 개선하고 있습니다.
플랫폼은 피싱이나 악성코드 기반 악용과 같은 복잡하고 코드와 무관한 위협을 어떻게 대응하도록 발전할 예정인가요?
우리는 이미 이러한 위협 중 일부를 처리하고 있습니다. 중앙화 위험을 표시하여 팀이 어떤 개인 키와 역할이 특히 민감한지 알 수 있도록 돕습니다.
또한 스마트 계약에서 흔히 나타나는 피싱 패턴을 포착합니다. 예를 들어, tx.origin을 호출자 검증 로직에 사용하는 경우 피싱 공격으로 이어질 수 있습니다. 우리는 이러한 점을 사용자에게 반드시 알려줍니다.
현재 Octane은 실시간 위협을 감지하는 것이 아니라 주로 배포 전 보안 도구로 작동합니다. 우리의 계획은 코드가 실서비스에 올라가기 전에 감지할 수 있는 범위를 지속적으로 확대하여, 개발자가 잠재적인 문제를 실제 공격이 되기 전에 해결할 수 있는 도구를 제공하는 것입니다.
비지도 머신러닝, 특히 클러스터링이 전통적인 규칙 기반 시스템보다 스마트 계약 취약점을 분류하는 데 더 효과적인 이유는 무엇인가요?
비지도 머신러닝은 존재하는 버그 유형을 파악하는 데 큰 도움이 되었습니다. 우리는 여전히 규칙 기반 기법을 사용해 감독 학습 모델을 구축하지만, 비지도 학습, 특히 클러스터링은 어떤 모델을 구축해야 할지와 우선순위를 결정하는 데 도움을 줍니다.
이 접근 방식은 모델을 다양한 취약점 유형에 맞는 보다 전문화된 분석 파이프라인으로 분해할 수 있게 합니다..
우리는 실제로 감독 학습과 비지도 학습을 함께 사용합니다—비지도 학습으로 전체 상황을 이해하고, 감독 방법으로 정확한 탐지 기능을 구축합니다. 이 조합은 전통적인 규칙 기반 시스템만을 의존하는 것보다 더 효과적입니다.
클러스터링이 기존 감사나 보안 검토에서 인식되지 않았던 새로운 취약점 클래스를 발견한 사례를 공유해 주실 수 있나요?
클러스터링은 새로운 취약점 카테고리를 처음부터 만들지는 않습니다—기존 데이터를 의미 있는 방식으로 그룹화합니다. 우리의 데이터는 실제 온체인 악용 사례, 공개된 취약점 보고서 및 기타 스마트 계약 버그 출처에서 수집됩니다.
비지도 학습이 정말 잘하는 점은 기존 취약점 카테고리를 이해하는 방식을 정교화하는 것입니다. 서로 다른 취약점 사이의 패턴과 연관성을 포착하여, 놓치기 쉬운 부분을 발견하고 더 나은 탐지 방법을 구축할 수 있게 합니다.
이러한 패턴 인식와 데이터 그룹화를 통해 우리는 알려진 취약점 유형의 미묘한 변형을 포착할 수 있는 보다 정교한 모델을 만들었으며, 완전히 새로운 취약점 클래스를 발견하는 것이 아니라 기존 유형을 더 세밀히 탐지합니다.
Octane은 취약점이 기존 분류 체계에 명확히 들어가지 않는 경계 사례를 어떻게 처리하나요?
우리는 분류 체계를 얼마나 구체적이면서도 일반적으로 만들지 균형을 잡으려고 합니다. 카테고리와 모델이 일반적일수록 어디에도 깔끔히 들어가지 않는 특이한 경계 사례를 더 잘 포착할 수 있습니다. 그러나 보다 구체적인 카테고리는 사용자에게 더 나은 설명을 제공하고 알려진 버그 유형을 보다 일관되게 감지할 수 있게 합니다.
Octane이 놓치거나 기존 카테고리와 명확히 일치하지 않는 취약점을 만나면, 해당 취약점에 대한 데이터를 기존 모델에 추가할지, 아니면 향후 해당 유형의 버그를 감지하기 위해 완전히 새로운 모델을 만들어야 할지 검토합니다.
이러한 유연한 접근 방식은 사용자에게 의미 있는 프레임워크를 유지하면서도 탐지 능력을 지속적으로 개선할 수 있게 합니다.
수천 개의 버그를 분석한 결과, 스마트 계약 취약점에서 눈에 띄는 반복적인 패턴이나 근본 원인은 무엇인가요?
우리는 여러 번 반복되는 몇 가지 어려운 패턴을 발견했습니다. 재진입(Reentrancy)은 여전히 스마트 계약에서 주요 문제입니다. 또 다른 큰 카테고리는 트랜잭션이 메모풀에 공개적으로 보이기 때문에 발생합니다. 이는 공격자가 대기 중인 트랜잭션을 확인하고 정보를 탈취하거나 트랜잭션을 실패하게 만드는 취약점을 만들며, 이를 흔히 프론트러닝이라고 부르지만 다양한 형태로 나타납니다.
또한 단순한 개발자 실수에서 비롯된 많은 중요한 취약점을 발견했습니다. 이러한 문제는 이전에 넓게 ‘논리 오류’라고 불렸지만, 이는 너무 모호합니다. 우리가 자주 보는 실수 중 하나는 개발자가 특정 코드 경로에서 상태 변수를 업데이트해야 함에도 이를 잊는 경우입니다.
이것은 몇 가지 예시일 뿐이며, 우리는 데이터 분석을 통해 개발한 모든 버그에 대한 훨씬 더 상세한 비공개 분석을 보유하고 있습니다.
스마트 계약은 생태계와 언어에 따라 크게 다릅니다. Octane은 이러한 다양한 환경에서도 모델의 효과를 어떻게 유지하나요?
많은 취약점은 특정 언어나 생태계와 관계없이 공통된 패턴을 따릅니다. 이를 통해 우리는 다양한 코드베이스에서 이러한 취약점을 효과적으로 탐지할 수 있는 모델을 구축할 수 있습니다.
우리는 모델을 스마트 계약 시스템 전반에 적용되는 기본 보안 원칙에 집중하도록 설계하면서, 각 언어의 고유한 특징도 고려합니다. 이러한 접근 방식은 새로운 언어마다 모든 것을 재구축하지 않아도 다양한 환경에서 효과를 유지할 수 있게 합니다.
취약점의 표면적인 세부 사항보다 핵심 패턴에 집중함으로써, 우리는 스마트 계약 개발의 다양한 세계에 적응할 수 있는 모델을 구축했습니다.
AI 기반 보안 도구는 설명 가능성에 대한 회의에 직면하곤 합니다. Octane은 취약점 분류와 알림이 개발자에게 실행 가능한 형태가 되도록 어떻게 보장하나요?
우리는 추가 검사를 통해 취약점을 검증하는 백엔드 검증 프로세스에 많은 작업을 투자했습니다.
우리는 발견된 결과를 신중히 분류하여, 실제 코드베이스에 영향을 줄 수 있는 중요한 취약점과 덜 심각한 문제 또는 모범 사례를 나타내는 경고를 구분합니다. 이러한 분류는 개발자가 가장 중요한 사항에 집중하도록 돕습니다.
우리 UI는 단순하고 명확하게 설계되어 가장 심각한 문제를 강조함으로써 덜 중요한 알림에 묻히지 않고 즉시 주목받게 합니다. 명확한 설명을 제공하고 실행 가능한 부분에 집중함으로써 개발자가 우리가 발견한 취약점을 빠르게 이해하고 수정할 수 있도록 보장합니다.
멋진 인터뷰에 감사드립니다. 더 알고 싶으신 독자분들은 Octane Security를 방문하시기 바랍니다.












