DevChoco

실전 코드와 디버깅 맥락을 남기는 개발 지식 아카이브

Tech News
조회 23분 읽기

N-Day-Bench – LLM이 실제 코드베이스에서 보안 취약점을 찾을 수 있을까?

N-Day-Bench는 최신 LLM이 실제 코드 저장소에서 알려진 보안 취약점을 발견할 수 있는지를 테스트합니다. 매달 GitHub 보안 자문에서 새로운 사례를 가져와 모델에게 코드베이스를 탐색할 수 있는 환경을 제공합니다. 이 테스트는 LLM의 보안 취약점 탐지 능력을 평가하는 데 중요한 역할을 합니다.

#llm#보안취약점#코드베이스#gitHub#테스트#인공지능

출처: Hacker News — https://ndaybench.winfunc.com

테스트 방법

N-Day-Bench는 매달 GitHub 보안 자문에서 새로운 사례를 수집하여, 패치 이전의 마지막 커밋에서 저장소를 체크아웃하고, 모델에게 샌드박스된 bash 셸을 제공합니다. 이 과정은 LLM이 실제 코드베이스에서 보안 취약점을 탐지할 수 있는 능력을 평가하기 위해 설계되었습니다.

평가 프로세스

  • Curator: 자문을 읽고 정답 키를 작성합니다. 이는 모델이 제출한 결과를 평가하는 기준이 됩니다.
  • Finder: 테스트 중인 모델이 24개의 셸 단계로 코드베이스를 탐색하고, 발견한 취약점에 대한 구조화된 보고서를 작성합니다. 이 과정에서 모델은 패치를 전혀 보지 못하며, 주어진 힌트에서 시작하여 실제 코드를 통해 버그를 추적해야 합니다.
  • Judge: 블라인드 제출된 보고서를 점수 매깁니다. 이 단계는 모델의 성능을 객관적으로 평가하는 데 필수적입니다.

기준 및 제한

  • 10,000개 이상의 별을 가진 저장소만 자격이 주어집니다. 이는 테스트의 신뢰성을 높이기 위한 기준입니다.
  • 단일 저장소의 지배 방지를 위해 다양성 패스가 적용됩니다. 이는 다양한 코드베이스에서의 성능을 평가하기 위한 조치입니다.
  • 모호한 자문(예: 병합 커밋, 다중 저장소 참조, 해결 불가능한 참조)은 제외됩니다. 이는 평가의 정확성을 보장하기 위한 것입니다.

현재 평가 중인 모델

  • GPT-5.4
  • Claude Opus 4.6
  • Gemini 3.1 Pro
  • GLM-5.1
  • Kimi K2.5

이 모델들은 각각의 성능을 비교하고, 보안 취약점 탐지 능력을 평가하기 위해 사용됩니다. 각 모델의 성능은 실시간 리더보드에서 확인할 수 있습니다.

실무 영향 및 체크포인트

  • 보안 감사: 기업은 N-Day-Bench와 같은 도구를 활용하여 자사의 코드베이스에서 보안 취약점을 사전에 발견하고 대응할 수 있습니다. 이는 보안 감사의 효율성을 높이는 데 기여할 수 있습니다.
  • 모델 선택: 다양한 LLM 모델이 평가되고 있으므로, 기업은 자사의 요구에 맞는 최적의 모델을 선택하는 데 참고할 수 있습니다. 각 모델의 성능을 비교하여, 보안 취약점 탐지에 가장 효과적인 도구를 선택하는 것이 중요합니다.
  • 지속적인 업데이트: 매달 새로운 사례를 수집하여 테스트하는 방식은 LLM의 성능을 지속적으로 개선할 수 있는 기회를 제공합니다. 기업은 이러한 최신 정보를 바탕으로 보안 전략을 업데이트해야 합니다.

주의사항

  • 결과의 해석: LLM의 결과는 항상 전문가의 검토가 필요합니다. 자동화된 도구가 발견한 취약점이 실제로 존재하는지, 또는 잘못된 경고인지 확인하는 과정이 필수적입니다.
  • 모델의 한계: 현재 평가 중인 모델들은 각기 다른 성능을 보일 수 있으며, 특정 유형의 취약점에 대해 더 강력한 성능을 발휘할 수 있습니다. 따라서, 모델 선택 시 이러한 특성을 고려해야 합니다.

추가 정보


의견

댓글/토론에서 나온 의견을 참고용으로 정리했습니다. (사실로 단정하지 말고 맥락 확인 권장)

  • Hacker News · @Cynddl: 각 사례는 세 가지 에이전트가 실행됩니다: Curator가 자문을 읽고 정답 키를 작성하고, Finder(테스트 중인 모델)가 24개의 셸 단계로 코드를 탐색하여 구조화된 보고서를 작성하며, Judge가 블라인드 제출을 점수 매깁니다. Finder는 패치를 전혀 보지 못합니다. 링크: https://news.ycombinator.com/item?id=47759166
  • Hacker News · @linzhangrun: 확실히 가능합니다. 1월에 Gemini를 사용하여 회사의 기존 시스템에서 블랙박스/화이트박스 테스트를 시도했으며, 숨겨진 SQL 인젝션 취약점을 성공적으로 이용하여 시스템에 침투하고 비밀번호 해시를 추출했습니다. 링크: https://news.ycombinator.com/item?id=47760138
  • Hacker News · @johnfn: 이걸 정말 그렇게 해석하기 어려운가요? Curator와 Finder는 에이전트의 이름입니다. "정답 키"는 시험에서 정답을 설명하는 것입니다. "셸 단계"는 24개의 명령을 실행할 수 있다는 의미입니다. 링크: https://news.ycombinator.com/item?id=47760060
  • Hacker News · @mufeedvh: 좋은 아이디어입니다. 다음 실행부터는 허위 긍정률을 평가 기준에 포함할 것입니다. winfunc에서는 이러한 모델을 다루어 허위 긍정률을 제거하는 데 많은 연구 시간을 투자했습니다. 링크: https://news.ycombinator.com/item?id=47758840
  • Hacker News · @peyton: LLM을 사용하여 이 HN 제출을 생성했나요? Finder는 패치를 보지 않을 것입니다. 이 평가가 모델을 평가하기 전에 답을 보여줄 것이라고 걱정하지 않았습니다. 링크: https://news.ycombinator.com/item?id=47759206
  • Hacker News · @rohansood15: 과거에 AppSec에서 일했기 때문에 이해가 됩니다. 아마도 당신은 목표 청중이 아닐 수도 있습니다? 이러한 것들에 대해 수동 검증이 필요하지 않습니다. CVE(취약점)는 공개되어 있으며 프로그래밍적으로 검증할 수 있습니다. 링크: https://news.ycombinator.com/item?id=47759668

같이 읽으면 좋은 글

같은 주제이거나 태그가 겹치는 글을 연결해 탐색 흐름을 강화했습니다.

Tech News 전체 보기

이전 글

타입스크립트와 리액트를 활용한 실시간 전자 회로 디자인 가이드

다음 글

Kubernetes로 웹사이트 배포하기: 실전 가이드

댓글

불러오는 중…