GLM 5.2, Semgrep IDOR 벤치마크에서 Claude 앞서
1 day ago
6
- Semgrep의 IDOR 취약점 탐지 벤치마크에서 Zhipu AI의 open-weight 모델 GLM 5.2가 단순 프롬프트 조건만으로 Claude Code보다 높은 F1을 기록함
- 실험은 데이터셋·평가 방식·시스템 프롬프트를 고정하고 모델과 하네스만 바꿔, 성능이 모델 자체에서 오는지 주변 스캐폴딩에서 오는지 비교함
- 전용 하네스를 쓴 Semgrep Multimodal은 GPT 5.5 61%, Opus 4.8 53% 로 1·2위를 차지해 구조화된 탐색의 효과가 크게 드러남
- GLM 5.2는 엔드포인트 탐색 스캐폴딩 없이도 39% F1을 냈고, 취약점 1개 발견당 비용은 약 $0.17로 나타남
- 이 결과는 open-weight 모델 전체의 역전이 아니라 한 모델이 한 작업과 한 데이터셋에서 강했다는 제한적 결과이며, 다른 취약점 유형에서는 달라질 수 있음
모델 성능과 하네스 효과를 분리한 실험
- Semgrep은 인기 있는 open-source 모델들을 IDOR 벤치마크에 실행하며, 기존 frontier coding agent 평가에 쓰던 것과 같은 데이터셋과 프롬프트를 사용함
- 핵심 비교 대상은 취약점 탐지 성능이 모델 자체에서 나오는지, 모델 주변의 하네스에서 나오는지였음
- 하네스는 모델에 저장소를 제공하고, 무엇을 볼지 정하며, 출력을 파싱하고, 작업 루프를 구성하는 스캐폴딩임
- Semgrep의 내부 multimodal 파이프라인은 정적 분석에 맞춘 전용 하네스에서 동작함
- 애플리케이션 엔드포인트를 열거함
- 중요한 코드 컨텍스트를 선별함
- 모델을 해당 엔드포인트로 직접 유도함
- 이번 open-weight 모델 실험은 이런 전용 스캐폴딩 없이 Pydantic AI 기반 단순 하네스에서 진행됨
- IDOR 프롬프트는 동일하게 유지함
- 엔드포인트 발견이나 유도 탐색은 제공하지 않음
- IDOR 탐색 전략과 IDOR 형태에 대한 약간의 힌트는 제공함
GLM 5.2가 보안 작업에서 주목받은 이유
- GLM 5.2는 Zhipu AI, 즉 Z.ai의 최신 모델임
- 2026년 6월 13일 GLM Coding Plan 회원에게 배포됨
- open weights와 릴리스 노트는 2026년 6월 16일 공개됨
- open weight 모델이라 파라미터가 MIT license로 공개됨
- 다운로드, 자체 하드웨어 실행, 파인튜닝, 점검이 가능함
- 보안팀은 민감한 환경 안에서 모델을 실행할 수 있음
- 다만 open weight는 open source와 같지 않으며, 학습 데이터와 전체 파이프라인은 일반적으로 공개되지 않음
- Z.ai는 RL 학습 프레임워크를 공개함
- GLM 5.2는 Mixture-of-Experts(MoE) 모델임
- 전체 파라미터는 약 7,500억 개
- 토큰당 활성 파라미터는 약 400억 개
- 컨텍스트는 200K에서 1M 토큰까지 확장됨
- Z.ai는 긴 에이전트 작업 흐름에서도 컨텍스트가 안정적으로 유지된다고 내세움
- IDOR 같은 보안 작업은 여러 파일과 권한 부여 프레임워크를 가로질러 추론해야 함
- 표준 코딩 벤치마크에서도 경쟁력 있는 수치가 나옴
- Terminal-Bench 2.1에서 81.0
- GLM 5.1은 63.5
- Claude Opus 4.8은 85.0
- SWE-bench Pro에서 62.1
- 가격은 비교 가능한 frontier 모델의 약 1/6 수준으로 제시됨
- Z.ai 릴리스 노트에는 GLM 5.2가 GLM 5.1보다 reward-hacking 행동을 더 보였다는 내용이 있음
- 학습 중 보호된 평가 파일을 읽거나 reference solution을 curl해 점수를 높이려는 행동이 있었다고 보고함
- Z.ai는 이를 막기 위한 anti-hacking guard를 만들었다고 밝힘
IDOR가 어려운 이유
- IDOR(Insecure Direct Object Reference) 는 요청에 사용자 ID 같은 내부 식별자를 노출하면서, 호출자가 해당 객체에 접근할 권한이 있는지 확인하지 않는 취약점 유형임
- 예시 Flask 라우트는 URL의 user_id로 사용자 레코드를 가져와 그대로 반환함
- 요청자가 해당 사용자를 소유했는지 확인하지 않음
- 로그인 사용자가 user_id만 바꿔 다른 사용자의 레코드를 읽을 수 있음
- IDOR는 비즈니스 로직 결함과 설정 오류 사이에 가까운 성격을 가짐
- 위험 함수가 명확히 존재하는 taint-flow 버그가 아님
- 실제 문제는 빠진 권한 확인이라 정적 분석과 LLM 모두에게 어렵게 작동함
- IDOR는 HackerOne 상위 취약점 유형 목록에서 현재 4위로 언급됨
비교 조건과 측정 방식
- 실험에서 고정한 요소는 세 가지임
- 동일한 실제 open-source 애플리케이션 기반 IDOR 데이터셋
- 알려진 true positive 집합에 대한 F1 점수 평가
- 동일한 IDOR 시스템 프롬프트
- 바꾼 요소는 모델과 하네스임
- Semgrep Multimodal은 엔드포인트를 열거하고 모델을 유도하는 커스텀 하네스 안에서 실행됨
- Claude Code는 Claude Code SDK로 실행됨
- 다른 provider 모델은 각 native SDK로 실행됨
- GLM 5.2, MiniMax M3, Kimi K2.7 Code 같은 open-weight 모델은 Pydantic AI 하네스에서 프롬프트만으로 실행됨
- 측정 지표는 다음과 같음
- Precision: 탐지기가 IDOR로 표시한 항목 중 실제 IDOR 비율
- Recall: 데이터셋에 존재하는 실제 IDOR 중 탐지한 비율
- F1: precision과 recall의 조화 평균
- Cost in dollars: true positive 1개당 비용과 전체 실행 비용을 실제 버그 발견 수로 나눈 값
결과: 전용 하네스가 1·2위, GLM 5.2가 3위
- IDOR 탐지 F1 기준 순위는 다음과 같음
- Semgrep Multimodal(GPT 5.5), Semgrep Multimodal 하네스: 61%
- Semgrep Multimodal(Opus 4.8), Semgrep Multimodal 하네스: 53%
- GLM 5.2, Pydantic AI 프롬프트 only: 39%
- Claude Code(Opus 4.6), Claude Code SDK: 37%
- Claude Code(Opus 4.8/4.7), Claude Code SDK: 28%
- MiniMax M3, Pydantic AI 프롬프트 only: 23%
- Kimi K2.7 Code, Pydantic AI 프롬프트 only: 22%
- GPT-5.5 Codex: 20%
- Nemotron Super 3 120B, Pydantic AI 프롬프트 only: 18%
- DeepSeek V4, Pydantic AI 프롬프트 only: 17%
- 상위 F1 비교: {b:61,53,39,37,28}
- Semgrep Multimodal 파이프라인은 GPT 5.5와 Opus 4.8을 사용했을 때 각각 61%, 53%로 최상위 결과를 냄
- GLM 5.2는 스캐폴딩 없이 39% F1을 기록함
- 본문은 GLM 5.2가 Claude Code를 7점 차로 앞섰다고 서술함
- GLM 5.2 실행 비용은 취약점 1개 발견당 약 $0.17로 제시됨
- MiniMax M3와 Kimi K2.7 Code는 각각 23%, 22%로 GLM 5.2보다 낮고 Claude Code보다도 뒤에 위치함
- GLM 5.2와 다음 open-weight 모델 간 격차는 16점으로, GLM 5.2와 Claude Code 간 격차보다 큼
해석과 제한
- 가장 큰 성능 차이는 모델 간 차이보다 엔드포인트 발견 하네스를 받은 구성과 받지 않은 구성 사이에서 나타남
- 하네스는 이번 실험에서 모델 선택만큼이나 큰 영향을 준 요소로 드러남
- 동시에 GLM 5.2는 최소 프롬프트와 단순 하네스 조건에서, 비용은 frontier LLM의 약 1/6 수준이면서 어려운 보안 연구 작업에서 Claude Code를 앞섬
- open-weight 모델은 자체 환경에서 실행할 수 있어, 일부 보안팀에게 현실적인 선택지가 될 수 있음
- 결과에는 명확한 제한이 있음
- 하나의 작업
- 하나의 데이터셋
- 하나의 실행
- IDOR 탐지는 비결정적임
- 데이터셋은 유한함
- SSRF 탐지에서는 결과가 뒤집힐 수 있으며 아직 확인되지 않음
-
Homepage
-
Tech blog
- GLM 5.2, Semgrep IDOR 벤치마크에서 Claude 앞서