"클로드 코드(Claude Code)가 다 해주는 시대가 왔는가?" 직접 검증해보니

Claude Code의 보안 스캔 기능인 claude-security-scan을 OWASP Juice Shop(v19.2.1)으로 검증한 결과, 주요 취약점 클래스의 60~70%를 탐지하며 높은 잠재력을 입증했다. 특히 정적 스캔은 하드코딩된 키와 알려진 CVE 탐지에 강력한 성능을 보였으나, 레이스 컨디션이나 복잡한 비즈니스 로직 등 맥락 이해가 필요한 영역에서는 11% 수준의 낮은 탐지율을 기록했다.

AI 요약

보안 엔지니어 @okazu_dm은 최근 출시된 Claude Code의 보안 스캔 기능인 claude-security-scan의 실효성을 검증하기 위해, 의도적으로 취약점이 심어진 OWASP Juice Shop(v19.2.1)을 대상으로 테스트를 수행했습니다. 이번 테스트는 소스 코드와 의존성을 분석하는 /full-scan과 실행 중인 앱을 대상으로 하는 /security-scan 두 가지 모드로 진행되었으며, 공정한 평가를 위해 AI가 정답을 유추할 수 있는 솔루션 파일 및 테스트 코드들을 사전에 제거했습니다. 검증 결과, Claude Code는 정적 분석을 통해 17개의 Critical 등급을 포함한 총 75건의 이슈를 식별했고, 동적 분석에서는 SQL 인젝션을 통한 관리자 권한 획득 등 실제 공격 성립 가능성을 입증했습니다. 하지만 약 100여 개의 개별 챌린지 중 탐지 성공률은 11%에 머물러, 패턴 매칭 이상의 복잡한 논리적 결함 탐지에는 여전히 한계가 있음을 보여주었습니다.

핵심 인사이트

  • OWASP Juice Shop(v19.2.1) 환경에서 취약점 클래스 단위로 분석했을 때 약 60~70%의 탐지율을 보였으며, 특히 Critical 등급에서는 80% 이상의 높은 탐지율을 기록함.
  • /full-scan 결과 소스 코드 결함 41건, jsonwebtoken·vm2 등 의존 패키지의 CVE 34건, 시크릿 노출 4건을 포함하여 총 79건의 잠재적 위협을 식별함.
  • /security-scan을 통해 SQL Injection을 이용한 관리자 JWT 획득 및 JWT 인증 우회(alg:none) 등 실질적인 공격 시나리오를 성공적으로 실증함.

주요 디테일

  • 정확한 검증을 위해 SOLUTIONS.md, challenges.yml, .cursor/ 폴더 등 AI의 추론을 도울 수 있는 약 20여 개의 파일 및 디렉토리를 제거한 상태에서 테스트를 진행함.
  • 정적 스캔은 eval(), $where 같은 특정 싱크(sink)나 RSA 비밀키, BIP-39 니모닉 등 명확한 패턴이 있는 취약점 탐지에 매우 탁월한 성능을 발휘함.
  • 반면, 레이스 컨디션(TOCTOU), 비즈니스 로직 우회(프리미엄 기능 바이パス), SPA 기반의 DOM XSS 등 코드의 문맥과 실행 흐름 파악이 필수적인 영역에서는 탐지력이 낮게 나타남.
  • 동적 스캔은 security-agent.config.yml의 scope 설정을 반영하여 2회차 실행 시 탐지 범위를 조정하는 등 유연한 대응력을 보여주었으나, 개별 챌린지 성공률은 약 11%로 제한적이었음.

향후 전망

  • LLM 기반 스캔 도구가 기존 SAST/DAST 도구를 완전히 대체하기보다는, 공격 시나리오를 직접 생성하고 실증하는 '능동적 보안 보조 도구'로서 정착될 것으로 보임.
  • 향후 비즈니스 로직과 복잡한 데이터 흐름을 이해하는 성능이 개선된다면, 보안 전문가의 업무 효율을 획기적으로 높이는 '자율형 보안 에이전트'로 진화할 것으로 기대됨.
Share

이것도 읽어보세요

댓글

이 소식에 대한 의견을 자유롭게 남겨주세요.

댓글 (0)

불러오는 중...