NyxFoundation/speca

SPECA: Specification-to-Checklist Agentic Auditing Framework

해결하는 문제

SPECA는 기존의 코드 중심 보안 감사 도구가 알려진 버그 패턴에 의존하는 한계를 해결합니다. 일반적인 실수를 찾는 대신, 구현이 의도한 설계에 실제로 부합하는지에 초점을 맞추어, 인간 감사자나 패턴 기반 도구가 자주 놓치는 새로운 취약점(예: 암호학적 불변성 위반)을 탐지할 수 있습니다.

작동 방식

SPECA는 에이전트 기반 파이프라인을 사용하여 "사양 기반" 감사를 수행합니다. 자연어 사양에서 명시적이고 타입이 지정된 보안 속성을 도출한 후, 구현이 구조화된 증명 시도 추론을 통해 이러한 불변성을 "증명"해야 합니다. 이 과정은 다음과 같은 단계로 구성됩니다:

  1. 사양 탐지: 사양에서 요구사항을 추출합니다.
  2. 부분 그래프 추출: 시스템의 관련 부분을 식별합니다.
  3. 속성 생성: 사양 기반으로 보안 속성의 어휘를 생성합니다.
  4. 코드 해결: 이러한 속성을 실제 코드에 매핑합니다.
  5. 검토: 게이트 리뷰 프로세스를 통해 결과를 검증합니다.

대상 사용자

스마트 계약이나 C/C++ 프로젝트와 같은 복잡한 구현이 기술 사양을 엄격히 준수하고 있는지 검증이 필요한 보안 연구자, 버그 바운티 사냥꾼, 소프트웨어 감사자에게 적합합니다.

주요 특징

  • 높은 탐지율: Sherlock Ethereum Fusaka 감사 대회에서 알려진 모든 취약점을 회수하고, 개발자에 의해 확인된 새로운 버그를 발견했습니다.
  • 강한 정확도: RepoAudit C/C++ 벤치마크에서 Sonnet 4.5로 최고의 공개 정확도(88.9%)를 달성했습니다.
  • 해석 가능한 결과: 오진은 특정 파이프라인 단계로 추적 가능하며, 모델의 환각처럼 투명하지 않은 결과가 아닙니다.
  • 확장성: 커널 코드를 변경하지 않고도 BUG_BOUNTY_SCOPE.jsonTARGET_INFO.json과 같은 구성 파일을 제공함으로써 새로운 타겟을 쉽게 도입할 수 있습니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트