논문명: CyBiasBench: Benchmarking Bias in LLM Agents for Cyber-Attack Scenarios
저자: Taein Lim, Seongyong Ju, Munhyeok Kim, Hyunjun Kim, Hoki Kim
게재지: arXiv 2026
서론
대규모 언어 모델(Large Language Model, LLM)은 더 이상 단발성 질의응답 도구에 머무르지 않습니다. 도구를 호출하고 장기 계획을 세우며 스스로 판단해 작업을 이어가는 자율 에이전트(autonomous agent)로 빠르게 진화하고 있습니다. 이 변화는 사이버보안 영역에서 특히 두드러집니다. 침투 테스트(penetration testing)·취약점 탐색·레드팀 활동 같은 공격형(offensive) 작업이 자동화되기 시작했습니다.
이 흐름 속에서 지금까지의 평가 벤치마크는 대부분 “에이전트가 공격에 성공했는가?”라는 단일 질문, 즉 공격 성공률(Attack Success Rate, ASR)에 초점을 맞춰 왔습니다. CTF 기반 과제 분해(Cybench), 실제 CVE 익스플로잇(CVE-Bench), 버그 바운티 워크플로(BountyBench) 등은 모두 결과 중심(outcome-centric)의 의미 있는 진전이었습니다.
그러나 본 논문은 한 발 더 들어간 질문을 던집니다.
“동일한 침투 테스트를 맡겼을 때, 모든 에이전트는 같은 방식으로 공격할까?”
답은 아니오였습니다. 본 논문이 발견한 핵심 현상은 다음과 같습니다 — 각 LLM 에이전트는 자신만의 고유한 ‘공격 선택 편향(attack-selection bias)’을 가지며 특정 공격군(attack family)에 노력을 집중적으로 쏟습니다. 그리고 이 성향은 프롬프트를 바꿔도 좀처럼 흔들리지 않습니다.
위 그림(Figure 1)에서 보듯, 각 에이전트의 선택률 분포는 서로 확연히 다른 모양으로 나타납니다. 이를 체계적으로 측정한 것이 본 연구실이 arXiv에 공개한 벤치마크 CyBiasBench입니다. CyBiasBench는 여러 에이전트·타깃·프롬프트에 걸쳐 총 630개 세션을 실행하고 원시 HTTP 트래픽을 OWASP Core Rule Set(CRS) 기반의 결정론적 분류기로 라벨링해 에이전트의 행동 그 자체로부터 편향과 성능을 정량화합니다.
사전 지식
왜 ‘행동’을 보는가 — 자기 보고가 아닌 HTTP 트래픽
LLM 에이전트는 자신이 무슨 공격을 했는지 말로 보고할 수 있습니다. 그러나 자기 보고(self-report)는 과장·누락·환각이 섞이기 쉽고 재현이 어렵습니다. CyBiasBench는 에이전트의 추론 텍스트가 아니라 외부에서 관측 가능한 HTTP 요청을 프록시로 가로채 열 개의 웹 익스플로잇 공격군으로 분류합니다.
sqli,xss,cmdi,path_traversal,auth_bypass,idor,ssrf,csrf,file_upload,info_disclosure
분류는 OWASP CRS 패턴에 CAPEC·CWE·OWASP WSTG 규칙을 결합해 수행하며 성공 여부 또한 에이전트의 자기 보고가 아니라 HTTP 응답·인증 상태 변화·타깃별 휴리스틱으로 검증합니다. 전 과정은 세 명의 사이버보안 전문가의 자문과 공식 승인을 거쳤습니다. 모든 실험은 격리된 Docker 네트워크와 동일하게 맞춘 Kali Linux 컨테이너에서 진행됩니다.
네 가지 핵심 지표
본 논문은 에이전트의 행동을 세 층위로 나눠 측정합니다.
| 층위 | 지표 | 의미 |
|---|---|---|
| Bias | Entropy $H(X)$ | 공격군 분포의 다양성 (높을수록 골고루 선택) |
| Bias | Selection Rate $\mathrm{Sel}_i$ | 전체 시도 중 공격군 $i$가 차지하는 비율 |
| Performance | ASR / per-family $\mathrm{ASR}_i$ | 전체 및 공격군별 성공률 |
| Efficiency & Robustness | TPS / Prompt-stability JSD | 성공당 토큰 비용 / 프롬프트 간 분포 안정성 |
여기서 Prompt-stability JSD는 어떤 패턴이 프롬프트 때문에 생긴 것인지, 아니면 에이전트의 본래 성향인지를 가르는 핵심 장치입니다. 값이 낮을수록 그 분포가 프롬프트의 산물이 아니라 에이전트 고유의 경향임을 의미합니다.
본론
벤치마크 설계 개요
CyBiasBench는 (1) 프롬프트 설계 → (2) 에이전트 침투 테스트베드 → (3) 평가 지표의 3단계로 구성됩니다.
프롬프트 공간 $\mathcal{P}$. 프롬프트를 두 축으로 변주합니다. Guided/Unguided는 공격군 라벨 목록을 미리 줄지 말지를, Structured/Unstructured는 보고 형식(줄 단위 JSONL 로그 vs 최종 요약 표)을 결정합니다. 두 축의 조합으로 4개 프롬프트 조건이 만들어집니다.
에이전트 공간 $\mathcal{A}$와 타깃 공간 $\mathcal{T}$. 다섯 에이전트 — Claude(Opus 4.5), Kimi(k2.5), GLM(5.1), Codex(GPT-5.2 codex), Gemini(2.5 Pro) — 를 평가합니다. 타깃은 OWASP Top 10을 폭넓게 포괄하는 OWASP Juice Shop, 실제 CVE(RCE·path traversal·SSRF)를 가진 ML 플랫폼 MLflow 2.9.2, 그리고 분류기 보정을 위한 통제형 Vuln-Shop 셋입니다.
결과 1 — 에이전트마다 다른 ‘공격 선택 편향’
각 에이전트의 자유 선택(free-choice) 36개 세션을 정리하면, 무엇을 가장 많이 고르는지와 얼마나 한곳에 집중하는지가 뚜렷이 갈립니다.
| 에이전트 | 최다 선택 공격군 ($\mathrm{Sel}_i$) | $H(X)$ | Selection CR1 | Session ASR |
|---|---|---|---|---|
| Claude |
info_disclosure (25.3%) |
2.607 | 32.1% | 0.324 |
| Kimi |
sqli (23.9%) |
2.376 | 34.5% | 0.257 |
| GLM |
auth_bypass (21.6%) |
2.202 | 45.2% | 0.302 |
| Codex |
info_disclosure (31.5%) |
1.652 | 50.7% | 0.213 |
| Gemini |
sqli (22.7%) |
1.122 | 66.6% | 0.317 |
Claude와 Kimi는 비교적 폭넓게 시도하는 반면(CR1 32~35%), Codex와 Gemini는 소수 공격군에 집중합니다(CR1 50.7%, 66.6%). 세션 단위 Kruskal–Wallis 검정에서도 이 구조적 차이는 통계적으로 유의했습니다($p \le 2.3\times10^{-10}$).
결과 2 — 프롬프트를 바꿔도 편향은 그대로
가이드를 주거나 보고 형식을 바꾸면 개별 선택률은 다소 흔들립니다. 그러나 공격군 사이의 분포 형태 자체는 크게 재편되지 않았습니다. 프롬프트 조건에 따른 분포 변동(평균 JSD 0.0379)이 에이전트 간 분포 차이(평균 0.0543)보다 작았기 때문입니다. “누가 공격했는지”가 “어떤 프롬프트였는지”보다 분포를 더 강하게 좌우합니다. 실제로 선택 패턴만으로 어떤 에이전트인지 맞히는 랜덤 포레스트 분류기는 65% 정확도(무작위 기준선 20%)를 달성했습니다.
결과 3 — 자주 고르는 공격 ≠ 잘 먹히는 공격
가장 흥미로운 발견은 선택과 성공이 따로 논다는 점입니다. Figure 1의 실선(선택률)과 점선(성공률)은 서로 맞물리지 않습니다. 에이전트들은 성공률이 낮은 공격군에도 상당한 시도를 쏟고 정작 성공률이 높은 공격군은 외면하기도 합니다. 대표적으로 Codex는 info_disclosure를 31.5%로 가장 자주 고르고 집중도(CR1 50.7%)도 높지만, 세션 ASR은 0.213으로 가장 낮습니다. 공격군 다양성($H(X)$)도 세션 ASR을 예측하지 못했습니다(5개 중 4개 에이전트에서 무의미, $\lvert\rho\rvert<0.23$). 선택 편향은 성능이 아니라 에이전트의 행동 성향인 셈입니다.
더 나아가 — Bias Injection과 Bias Momentum
현실의 공격 운영에서는 사용자가 “XSS 취약점을 집중적으로 분석해줘”처럼 특정 공격을 명시적으로 지시하는 경우가 많습니다. 본 논문은 이러한 사용자 주도 개입을 bias injection이라 부르고 열 개 공격군 각각을 콕 집어 지시한 뒤 에이전트가 그 공격군에 노력을 쏟는 비율(compliance)을 측정했습니다. 에이전트당 10개 공격군 × 3개 타깃 × 3회 반복으로, 총 450개 세션을 추가로 수집했습니다.
결과는 명확했습니다. 에이전트는 원래 좋아하던 공격군으로의 지시에는 순순히 따르지만, 선호와 어긋나는 공격군은 지시해도 잘 따르지 않습니다. 순응도는 사전 선호($\mathrm{Sel}_i$)로는 잘 예측되지만($\rho=+0.529$), 그 공격군의 성능($\mathrm{ASR}_i$)으로는 예측되지 않았습니다. 본 논문은 이처럼 자유 선택의 선호가 명시적 지시 아래에서도 관성처럼 유지되는 현상을 bias momentum이라 명명합니다.
특정 공격을 강제로 지시해도 성능은 나아지지 않았고 오히려 떨어졌습니다. 다섯 에이전트 모두 평균 $\Delta\mathrm{ASR} \le 0$이었으며(최대 하락 Gemini −0.136), 순응도가 높은 셀이라고 해서 성능으로 보상받지도 못했습니다. 공격군별 기술적 성능 순위는 지시 전후로 대체로 유지되었으므로($\rho=+0.702$), 이 ASR 하락은 기술의 문제가 아니라 노력 배분(allocation)의 문제 — bias momentum의 신호입니다.
결론
CyBiasBench는 공격 성공률만으로는 보이지 않던 LLM 에이전트의 행동 축, 즉 공격 선택 편향을 정면으로 측정합니다. 본 논문의 메시지는 두 가지로 요약됩니다.
- (1) 자유 선택의 공격 배분은 에이전트마다 고유하며 프롬프트에 거의 흔들리지 않는다. 단일 조건의 ASR 한 숫자만으로는 에이전트의 행동을 충분히 담아내지 못합니다.
- (2) 명시적 지시 아래에서의 순응은 기술적 성능이 아니라 사전 선호를 따른다(bias momentum). 특정 공격을 더 잘한다고 해서 그쪽으로 강제 조종했을 때 성능이 오르지는 않습니다.
그래서 자율 에이전트로 보안 감사(audit)를 수행할 때는 각 에이전트의 자유 선택 패턴을 공격군별 성능과 함께 살펴야 합니다. 본 연구실은 재현성을 위해 인터랙티브 결과 대시보드(trustworthyai.co.kr/CyBiasBench)와 집계 통계·평가 스크립트를 담은 재현 아티팩트(GitHub)를 함께 공개합니다.