오늘 DeepsecBench를 공개합니다. 애플리케이션 코드의 보안 취약점을 얼마나 잘 찾아내는지 모델별 성능을 평가하는 벤치마크입니다.
지난주, OpenAI는 격리된 샌드박스 환경에서 두 모델을 대상으로 익스플로잇 벤치마크 평가를 진행했습니다. 테스트를 위해 가드레일을 완화한 상태에서, 모델들은 자신의 환경 내 취약점을 발견하고 인터넷에 접속해 Hugging Face의 프로덕션 데이터베이스에까지 도달했습니다.
사람이 직접 지시한 행동은 아니었지만, 이 사례는 강력한 AI 모델로 무장한 공격자가 얼마나 위협적인지를 분명하게 보여줍니다. 그러나 방어자도 같은 도구를 사용할 수 있으며, 결정적인 우위가 하나 있습니다. 바로 자신의 코드베이스에 대한 이해입니다. 해킹은 외부에서 시작되므로, 가장 효과적인 방어는 공격자보다 먼저 내부에서 취약점을 찾아내는 것입니다.
오늘 DeepsecBench를 공개합니다. 애플리케이션 코드의 보안 취약점을 얼마나 잘 찾아내는지 모델별 성능을 평가하는 벤치마크입니다. 각 모델별로 재현율(recall), 정밀도(precision), 비용, 총 소요 시간을 제공하며, 재현율과 정밀도를 결합한 단일 벤치마크 점수도 함께 확인할 수 있습니다. 아래는 리더보드에서 발췌한 모델 성능 샘플입니다:
순위 | 모델 | 레벨 | 점수 | 비용 | 총 소요 시간 |
|---|---|---|---|---|---|
1 | GPT-5.6 Sol | xhigh | 35.58 | $55.98 | 03:39:00 |
3 | Claude Opus 5 | medium | 28.36 | $31.96 | 00:47:01 |
8 | Kimi K3 | high | 17.56 | $12.38 | 01:59:00 |
10 | Grok 4.5 | high | 15.58 | $5.60 | 01:24:00 |
저희는 스캔을 최대한 간편하게 활용할 수 있도록 deepsec을 개발했습니다. 이제 벤치마크 리포트를 바탕으로 예산과 코드베이스의 복잡도에 맞는 보안 스캔 프로그램을 설계하고, 어떤 모델을 얼마나 자주 실행할지 최적의 조합을 선택할 수 있습니다.
DeepsecBench는 수많은 취약점이 수정되기 직전 커밋 상태의 오픈소스 코드베이스를 대상으로 실행됩니다. 50개의 진입점(entry-point) 파일을 선정하고, 사람이 직접 검토한 231개의 발견 항목으로 골든 셋(golden set)을 구성했습니다. 각 모델의 점수는 재현율에 가중치를 부여한 F2 방식(점수 = 100 × 5PR/(4P+R))으로 산출하며, 정밀도(P)보다 재현율(R)을 두 배 높게 반영합니다. 놓친 취약점은 수정되지 않은 채로 남지만, 오탐(false positive)은 코드베이스의 보안을 저하시키지 않기 때문입니다.
골든 셋에 포함되지 않은 발견 항목은 판정 모델이 실제 취약점인지 오탐인지 분류하며, 그 결과는 정밀도 지표에 긍정적 또는 부정적으로 반영됩니다(재현율은 기존에 확인된 231개 항목만을 기준으로 측정합니다).
벤치마크는 세 번 실행되며, 리포트에 게재되는 데이터는 세 번 실행 결과의 중앙값입니다.
벤치마크의 구성 내용은 공개하지 않습니다. 저장소, 커밋, 파일, 발견 항목 중 어느 것도 공개하지 않아 모델이 학습할 수 있는 데이터가 존재하지 않습니다. 만약 모델이 암기한 수정 내용을 그대로 출력한다면 재현율이 거의 100%에 달해야 하지만, 실제 최고 성적은 30.7%에 불과하며 25회 실행 중 20회는 20% 미만에 그쳤습니다.
deepsec을 처음 소개했을deepsec 당시, 프로덕션 코드베이스를 철저히 스캔하려면 최고 성능의 모델이 필요했고 실행 비용도 상당했습니다. OpenAI와 Anthropic의 프론티어 모델이 여전히 최상위 점수를 기록하고 있지만, 오픈 웨이트(open-weight) 모델과 더 효율적인 추론 옵션들이 그 격차를 빠르게 좁히면서 포괄적인 스캔이 훨씬 비용 효율적으로 이루어지고 있습니다.
이제 더 높은 비용이 그에 비례하는 성능을 보장하지 않습니다. Moonshot AI의 Kimi K3는 high 설정에서 17.56점을 기록하며 8위를 차지했는데, 비용은 $12.38에 불과합니다. 최상위 점수의 절반을 약 5분의 1의 비용으로 달성한 셈입니다. Grok 4.5를 high로 설정하면 Kimi에 근접한 성능을 절반도 안 되는 비용으로 구현할 수 있으며, $5.60에 15.58점을 기록했습니다. GPT-5.6 Sol을 medium으로 설정하면 상위 모델 중 가장 우수한 점수 대비 비용 효율을 보여주며, $17.95에 25.10점으로 5위에 올랐습니다.
Anthropic의 최고 성능 모델인 Fable 5는 방어 작업을 포함한 보안 관련 작업을 거부해 벤치마크에 포함되지 않았습니다. 보안 기능이 활성화된 버전이 출시되면 벤치마크에 추가할 예정입니다.
순위 | 모델 | 레벨 | 점수 | 재현율 | 정밀도 | 발견 항목 | 비용 | 총 소요 시간 |
|---|---|---|---|---|---|---|---|---|
1 | GPT-5.6 Sol | xhigh | 35.58 | 30.7% | 96.3% | 71/231 | $55.98 | 03:39:00 |
2 | Claude Opus 5 | max | 32.57 | 28.1% | 88.0% | 65/231 | $127.93 | 02:34:00 |
3 | Claude Opus 5 | medium | 28.36 | 24.7% | 70.5% | 57/231 | $31.96 | 00:47:01 |
4 | GPT-5.6 Luna | xhigh | 26.79 | 22.9% | 81.2% | 53/231 | $24.59 | 03:01:00 |
5 | GPT-5.6 Sol | medium | 25.10 | 21.2% | 94.3% | 49/231 | $17.95 | 00:30:52 |
6 | GPT-5.5 | xhigh | 21.20 | 17.7% | 95.5% | 41/231 | $43.42 | 02:22:00 |
7 | GPT-5.6 Terra | xhigh | 19.21 | 16.0% | 95.3% | 37/231 | $27.81 | 01:45:00 |
8 | Kimi K3 | high | 17.56 | 14.7% | 77.1% | 34/231 | $12.38 | 01:59:00 |
9 | Grok 4.5 | medium | 16.54 | 13.9% | 73.3% | 32/231 | $11.04 | 01:37:00 |
10 | Grok 4.5 | high | 15.58 | 13.0% | 77.8% | 30/231 | $5.60 | 01:24:00 |
11 | GPT-5.5 | medium | 12.63 | 10.4% | 92.3% | 24/231 | $14.94 | 00:24:05 |
12 | GPT-5.6 Terra | medium | 12.12 | 10.0% | 92.0% | 23/231 | $5.15 | 00:13:15 |
13 | GPT-5.6 Luna | medium | 12.08 | 10.0% | 82.8% | 23/231 | $5.23 | 00:11:59 |
14 | Gemini 3.6 Flash | medium | 11.56 | 9.5% | 80.0% | 22/231 | $10.74 | 00:26:21 |
15 | Kimi K3 | medium | 11.48 | 9.5% | 64.1% | 22/231 | $10.84 | 01:29:00 |
16 | GLM-5.2 | medium | 10.46 | 8.7% | 62.5% | 20/231 | $11.09 | 01:03:00 |
17 | GLM-5.2 | high | 9.90 | 8.2% | 53.8% | 19/231 | $51.84 | 02:30:00 |
18 | Gemini 3.6 Flash | high | 8.99 | 7.4% | 77.3% | 17/231 | $5.33 | 00:22:18 |
19 | Claude Opus 4.8 | max | 6.91 | 5.6% | 81.3% | 13/231 | $7.56 | 00:19:29 |
20 | Claude Opus 4.8 | medium | 6.88 | 5.6% | 61.9% | 13/231 | $10.81 | 00:18:16 |
21 | Inkling | high | 6.32 | 5.2% | 48.0% | 12/231 | $1.93 | 00:11:34 |
22 | Inkling | medium | 5.26 | 4.3% | 37.0% | 10/231 | $2.18 | 00:10:31 |
23 | Claude Haiku 4.5 | default | 4.73 | 3.9% | 33.3% | 9/231 | $5.91 | 00:29:40 |
24 | Gemini 3.5 Flash Lite | medium | 2.14 | 1.7% | 44.4% | 4/231 | $0.58 | 00:01:46 |
25 | Gemini 3.5 Flash Lite | high | 1.07 | 0.9% | 28.6% | 2/231 | $0.18 | 00:01:07 |
벤치마크에 보고된 비용은 파일 50개 기준입니다. 실제 프로덕션 코드베이스는 그 약 100배 규모인 경우가 많으므로, 전체 스캔 비용은 Kimi K3 기준 약 $1,200, OpenAI의 최고 점수 프론티어 모델 기준으로는 $5,000 이상이 됩니다.
보안 스캔은 반복적으로 수행해야 하는 작업인 만큼, 어떤 작업에 어떤 모델을 언제 사용할지가 핵심입니다. 예를 들어, 프론티어 모델은 정기적인 심층 감사에 활용하고, Kimi K3나 Grok 4.5 같은 저비용 모델로는 더 높은 주기로 스캔을 실행할 수 있습니다. GPT-5.6 Sol의 추론 수준을 xhigh에서 medium으로 낮추면 점수는 35.58에서 25.10으로 낮아지지만, 소요 시간은 3시간 39분에서 30분 남짓으로 줄어들어 신규 기능을 프로덕션에 반영하기 전 검토하는 데 충분한 속도를 제공합니다.
스타트업이라면 모든 머지 시 Grok 4.5로 스캔하고 비용이 큰 감사는 주요 릴리스 시점에만 수행할 수 있습니다. 대기업이라면 핵심 서비스에는 프론티어 모델로 감사를 수행하고, 주요 풀 리퀘스트에는 동일 모델을 낮은 추론 수준으로 적용하며, 나머지 코드베이스 전체에는 Kimi급 또는 Grok 모델로 지속적인 스윕(sweep)을 운영하는 방식을 택할 수 있습니다.
보안 스캔은 짧은 시간 안에 대량의 토큰을 소비하는 폭발적인 워크로드로, 단일 프로바이더에서 이런 버스트 용량을 직접 확보하기란 쉽지 않습니다. 모든 DeepsecBench 실행은 AI Gateway를 통해 이루어집니다. 게이트웨이는 각 모델에 접근하는 단일 엔드포인트를 제공하며, 실행 중 라우팅, 재시도, 페일오버가 자동으로 처리되어 프로바이더별 키나 요청 제한을 별도로 관리할 필요가 없습니다.
벤치마크에 사용된 것과 동일한 라우팅으로 보안 스캔 프로그램을 운영할 수 있습니다. provider/model를 deepsec에 전달하면 환경 내 단 하나의 AI_GATEWAY_API_KEY로 리더보드의 모든 모델을 커버할 수 있습니다(Vercel 프로젝트에 연결된 경우 OIDC를 통해 AI Gateway에 접근 가능합니다).
공격자도 AI 모델을 활용할 수 있지만, 그들은 어디까지나 외부에서 접근합니다. 방어자는 소스 코드, 아키텍처, 이력 등 시스템 전체를 파악하고 있습니다. 이 가시성 덕분에 같은 모델이라도 공격자보다 방어자의 손에서 훨씬 강력하게 작동합니다. 소스 코드를 직접 읽을 수 있는 모델은 공격자가 외부 탐색으로만 추측해야 하는 것들을 정확히 찾아낼 수 있기 때문입니다. 이 우위는 분명히 존재합니다. 단, 먼저 활용해야만 의미가 있습니다.
새로운 모델이 출시되고 측정될 때마다 DeepsecBench를 지속적으로 업데이트할 예정입니다.