프롬프트 하나가 아니라 워크플로 전체를 봐야 하는 이유
주입된 프롬프트나 잘못된 계획은 위임·툴콜을 거치며 뒤로 전파됩니다. 개별 스텝만 검사하는 방어는 이 전파 구조를 놓칩니다. 워크플로 단위 이상탐지 프레임워크 Skynet은 플래너-워커 위임, MCP 툴콜, 데이터 흐름을 방향성 그래프로 구성해 정상 실행만으로 학습하고, 그래프 전체에 하나의 점수를 매겨 적대적 조작과 본질적 실패를 같은 규칙으로 잡아냅니다.
검증에는 서로 다른 팀이 독립적으로 공개한 세 벤치마크를 썼습니다. 적대적 레드팀 111건(Agent-SafetyBench), 비적대적 실행 실패 200건(AgentErrorBench), 8개 위험 원천·14개 실패 유형에 걸친 497건(ATBench)을 합친 808건 규모입니다. 이상 사례는 학습 중 한 번도 노출되지 않았습니다.
오탐률 숫자만으로 도구를 고르면 안 되는 이유
좁은 두 벤치마크만 보면 경쟁 도구 Guardian이 오탐률 0.18%로 Skynet의 0.89%보다 낮아 더 안전해 보입니다. 그런데 위험 유형이 8가지로 넓어진 ATBench에서 Guardian의 재현율은 18.31%로 붕괴하고, 808건을 합친 Combined 시나리오에서도 49.75%에 머뭅니다. 같은 조건에서 Skynet은 89.36% 재현율을 유지합니다. 검증을 한 벤치마크로 끝내면 이 격차가 안 보입니다.
정상은 하나의 모양이 아니다
오케스트레이터형 파이프라인, ReAct 루프, 딥리서치형 워크플로, 멀티에이전트 토론은 모두 정상이지만 서로 다른 패턴입니다. Skynet은 정상 실행을 k-평균으로 얻은 150개 모드(K=150)로 표현하는데, 단일 기준점으로 줄이는 어블레이션에서 재현율이 94.80%에서 65.59%로 3분의 1 가까이 깎여 나갔습니다. 정상의 다양성을 하나로 뭉치면 낯선 정상 패턴까지 이상으로 걸러집니다.
실전 배치 가이드: 알고리즘보다 캘리브레이션이 이긴다
목표 지표는 오탐률 상한 1% 하나로 끝내지 않고, 최소 두 개 이상의 독립 출처에서 재현율을 각각 재고 808건 규모의 합산 시나리오로 다시 검증합니다. 지연 예산도 구간별로 나눕니다. 오프라인 워크플로 단위 채점은 평균 80.8ms·P95 228.2ms가 기준선이고, 온라인 스텝 채점은 초반·후반에 4.8~48.8ms에 머물다가 20번째 스텝 부근에서 평균 104.8ms·P95 572.7ms까지 치솟습니다.
첫 번째 실패 패턴은 좁은 벤치마크의 오탐률만 보고 채택하는 것입니다. 복구책은 채택 전 세 개 이상 독립 벤치마크에서 같은 임계값으로 재현율을 각각 측정하고, 하나라도 기준선에 못 미치면 채택을 보류하는 절차를 명문화하는 것입니다.
두 번째 패턴은 정상 프로파일을 단일 기준점으로 단순화하는 것입니다. 복구책은 k-평균 등으로 정상 실행을 여러 모드로 유지하고, 새 도구나 태스크 유형이 늘어날 때마다 모드 뱅크를 재군집하는 일정을 정해 두는 것입니다.
세 번째 패턴은 학습용 부정 예시를 무작위 그래프 변형으로 만드는 것입니다. 역할·출처·의존성·안정성이라는 네 불변량을 위반하는 반사실적 예시를 빼면 오탐률이 목표 예산의 1.5배 가까이 뛰어오릅니다. 복구책은 무작위 노이즈 대신 실제 불변량 위반을 최소한으로만 건드린 예시로 부정 데이터를 만드는 것입니다.
네 번째 패턴은 중간 스텝 구간의 지연 급증을 무시하는 것입니다. 20번째 스텝 부근 P95 지연 0.57초 구간을 그대로 두면 파이프라인이 멈출 수 있습니다. 복구책은 이 구간에서 타임아웃이 발생하면 차단 대신 워크플로 완료 후 채점하는 사후(trailing) 모드로 자동 전환하는 폴백을 미리 넣는 것입니다.
운영 체크리스트로는 플랫폼별 실행 기록을 같은 노드·엣지 스키마로 매핑하는 어댑터를 먼저 검증하고, 원문 텍스트 대신 역할·행위 유형·상태 같은 범주형 속성만 남겨 그래프 크기가 점수를 좌우하지 않게 정규화합니다. 처음 배포할 때는 차단이 아니라 점수만 기록하는 그림자 모드로 시작하고, 임계값 근처의 중간 신뢰도 구간은 사람 검토 큐로 보냅니다. 위험 유형별 재현율 편차(간접 프롬프트 주입 74.03% 대 악의적 툴 실행 100%)를 반영해 확실성이 높은 유형부터 단계적으로 차단 정책을 넓혀 갑니다.
지속 개선 루프는 새 도구·태스크가 늘어날 때마다 정상 코퍼스와 모드 뱅크를 다시 학습시키는 데서 시작합니다. 놓친 이상과 오탐을 네 불변량 중 어디서 났는지로 분류해 다음 반사실적 예시 생성의 시드로 되먹이고, 새 레드팀 결과와 운영 중 발견된 실패 유형을 검증셋에 계속 추가해 초기 지표가 시간이 지나도 같은 의미를 유지하는지 재확인합니다.
적용 체크포인트
오탐률 한 숫자로 이상탐지 도구를 고르면 위협 범위가 넓어지는 순간 재현율이 무너집니다. 세 개 독립 벤치마크로 재현율을 따로 검증하고, 정상은 다중모드로 표현하고, 반사실적 불변량 위반으로 학습 신호를 만들고, 중간 스텝 지연 급증에 사후 채점 폴백을 넣는 네 가지를 갖춘 뒤 그림자 모드로 시작해야 배포 리스크가 줄어듭니다.
참고 링크
Skynet: Workflow-Level Anomaly Detection for Agentic AI via Semantic and Structural Modeling — arXiv
관련 리서치 리뷰: 정상 워크플로만 배워 오탐 0.89%: 에이전트 이상탐지 Skynet 리뷰