AI Agent

AI 에이전트 거버넌스 — Workday·OWASP·NIST가 그리는 안전한 에이전트 기준

cell-devlog 2026. 6. 5. 15:48
반응형

에이전트가 HR 데이터를 건드리고, 메일을 보내고, 코드를 배포합니다. 누가 책임지고, 어떻게 통제하나.


✅ 핵심 요약

→ Workday가 2026년 6월 2일 Agent Passport를 발표했습니다 — 프로덕션 배포 전 모든 AI 에이전트를 테스트·검증하고 이후에도 지속 모니터링하는 시스템 → 모든 인증이 OWASP LLM Top 10, NIST AI RMF, MITRE ATLAS 공개 표준에 연결됩니다 — 감사 가능한 서명 기록 생성 → NIST는 2026년 2월 17일 AI Agent Standards Initiative를 공식 출범 — 에이전트 AI 전용 첫 미국 정부 표준화 프로그램 → OWASP는 Agentic Applications Top 10 for 2026 공개 — LLM Top 10과 별개로 에이전트 전용 취약점 목록 → 2026 CISO AI Risk Report: 조직의 16%만이 AI의 핵심 비즈니스 시스템 접근을 효과적으로 통제하고 있습니다 → 에이전트 거버넌스의 핵심 문제: 에이전트 신원(Identity), 권한 범위(Permission Scope), 감사 추적(Audit Trail) → 개발자가 지금 당장 해야 할 것: 최소 권한 원칙, 에이전트 전용 서비스 계정, 에이전트 행동 로깅


왜 지금 에이전트 거버넌스가 문제인가

2024~2025년의 AI는 질문하면 답하는 구조였습니다. 사람이 루프 안에 있었고, AI가 뭔가 잘못해도 실제 실행은 사람이 했습니다.

2026년의 에이전트는 다릅니다.

기존: 사람이 물어보면 AI가 대답
        → 사람이 판단 → 사람이 실행

에이전트: 목표 주면 AI가 계획·실행·검증
        → 코드 커밋, 이메일 발송, DB 수정, API 호출
        → 사람이 개입하지 않아도 완료

Cisco AI Defense는 에이전트가 직면하는 위협으로 프롬프트 인젝션, 탈옥, 목표 하이재킹, 데이터 유출, 안전하지 않은 출력을 나열했습니다. 이것들은 기존 소프트웨어 보안 위협과는 성격이 다릅니다. 코드를 패치하는 게 아니라 에이전트의 언어 이해와 추론 과정에서 발생하는 위협입니다.


Workday Agent Passport — 엔터프라이즈 거버넌스 첫 사례

Workday가 6월 2일 발표한 Agent Passport는 모든 AI 에이전트(Workday 자체 빌드 또는 서드파티)가 프로덕션에 들어가기 전에 테스트·검증을 거치고, 이후에도 지속적으로 모니터링하는 시스템입니다.

구조

에이전트 개발 완료
        ↓
Agent Passport 검증 요청
        ↓
[OWASP LLM Top 10 검사]
[NIST AI RMF 준수 확인]
[MITRE ATLAS 위협 분석]
        ↓
서명된 디지털 인증서 발급
        ↓
프로덕션 배포 허용
        ↓
지속 모니터링 (이상 행동 감지 시 자동 차단·취소)

Agent Passport는 에이전트 액션을 실시간으로 허용·차단·라우팅할 수 있고, 침해된 에이전트를 중앙에서 즉시 취소(revoke)할 수 있습니다.

왜 중요한가

Workday는 1만 1,500개 이상의 조직이 쓰는 HR·재무·IT 플랫폼입니다. 급여 데이터, 직원 인사 정보, 금융 거래를 다루는 에이전트가 검증 없이 배포된다면 그 파급 효과는 기존 소프트웨어 버그와 비교할 수 없이 큽니다.

Agent-Ready Tools는 에이전트가 HR·재무 데이터에 MCP를 통해 접근할 때 통제된 가드레일을 제공합니다. 즉, 에이전트가 필요한 데이터에만 접근하고, 그 접근이 기록되고, 필요 시 차단됩니다.


OWASP Agentic Top 10 for 2026

OWASP는 기존 LLM Top 10과 별개로 에이전트 전용 취약점 목록을 발표했습니다. 에이전트는 단순 LLM보다 더 넓은 공격 표면을 가집니다.

순위 취약점 설명

1 프롬프트 인젝션 악의적 입력으로 에이전트 목표 하이재킹
2 과도한 에이전시 필요 이상의 권한·액션 범위 허용
3 메모리 오염 에이전트 메모리에 잘못된 정보 주입
4 불충분한 감사 추적 에이전트 액션 로깅 미비
5 서브에이전트 신뢰 오케스트레이터가 서브에이전트를 무조건 신뢰
6 데이터 유출 에이전트가 민감 데이터를 외부로 전송
7 목표 드리프트 장기 실행 중 초기 목표에서 벗어남
8 킬스위치 부재 에이전트를 즉시 중단할 메커니즘 없음
9 안전하지 않은 외부 툴 호출 검증되지 않은 MCP 서버·API 연동
10 공급망 오염 서드파티 에이전트·플러그인 통한 공격

NIST AI Agent Standards Initiative

NIST CAISI가 2026년 2월 17일 AI Agent Standards Initiative를 공식 출범했습니다. 이전 행정명령 하의 AI 안전성 평가 프로그램과 별개로, 에이전트 AI 시스템의 상호운용성과 보안 표준만을 다루는 미국 정부 최초의 전담 프로그램입니다.

주요 내용

항목 내용

에이전트 신원 표준 에이전트가 사용자 대신 행동할 때 인증·인가 프레임워크
SP 800-53 오버레이 단일 에이전트·멀티 에이전트 시스템용 보안 통제 기준 (개발 중)
NIST AI RMF 1.1 에이전트 AI를 포함한 리스크 관리 프레임워크 업데이트

개발자가 지금 해야 할 것

이론을 실무로 바꾸는 체크리스트입니다.

1. 에이전트 전용 서비스 계정 분리

# ❌ 위험한 패턴 — 에이전트가 관리자 권한 사용
agent.execute(credentials=admin_credentials)

# ✅ 안전한 패턴 — 에이전트 전용 최소 권한 계정
agent_credentials = ServiceAccount(
    name="billing-agent-prod",
    permissions=["read:invoices", "write:payment_status"],
    # 프로덕션 DB 쓰기, 사용자 데이터 접근 없음
    expires_in_hours=24,   # 시간 제한
)
agent.execute(credentials=agent_credentials)

에이전트는 프로덕션 시스템에 상시 접근 권한을 가지면 안 됩니다. 가능하다면 태스크가 필요한 특정 리소스에만 범위가 제한된 just-in-time 자격증명을 부여해야 합니다.

2. 에이전트 액션 감사 로그

import logging
from datetime import datetime

class AuditedAgent:
    def __init__(self, agent_id: str):
        self.agent_id = agent_id
        self.logger = logging.getLogger(f"agent.{agent_id}")

    def execute_action(self, action: str, params: dict, user_id: str):
        # 모든 액션을 실행 전 기록
        self.logger.info({
            "timestamp": datetime.utcnow().isoformat(),
            "agent_id": self.agent_id,
            "action": action,
            "params": params,
            "triggered_by": user_id,
            "status": "PENDING"
        })

        try:
            result = self._execute(action, params)
            self.logger.info({
                "timestamp": datetime.utcnow().isoformat(),
                "agent_id": self.agent_id,
                "action": action,
                "status": "SUCCESS",
                "result_summary": str(result)[:200]
            })
            return result
        except Exception as e:
            self.logger.error({
                "timestamp": datetime.utcnow().isoformat(),
                "agent_id": self.agent_id,
                "action": action,
                "status": "FAILED",
                "error": str(e)
            })
            raise

불완전한 커버리지라도 에이전트 간 트래픽을 캡처하기 시작하는 게 낫습니다. 사후에 발견된 비정상 에이전트 행동은 복구 가능하지만, 로그가 없는 행동은 복구가 불가능합니다.

3. 킬스위치 구현

import redis

class AgentController:
    def __init__(self):
        self.redis = redis.Redis()

    def is_agent_active(self, agent_id: str) -> bool:
        # Redis에서 에이전트 상태 실시간 확인
        status = self.redis.get(f"agent:status:{agent_id}")
        return status == b"active"

    def revoke_agent(self, agent_id: str, reason: str):
        # 즉시 에이전트 차단
        self.redis.set(f"agent:status:{agent_id}", "revoked")
        self.redis.set(f"agent:revoke_reason:{agent_id}", reason)
        # 현재 실행 중인 작업에 인터럽트 신호
        self.redis.publish(f"agent:interrupt:{agent_id}", "REVOKE")

# 에이전트 실행 루프에서 주기적으로 확인
controller = AgentController()

while task_in_progress:
    if not controller.is_agent_active(agent_id):
        logger.warning(f"Agent {agent_id} revoked mid-task")
        cleanup_partial_work()
        break
    # 다음 스텝 실행
    execute_next_step()

4. MCP 서버 허용 목록

// 허용된 MCP 서버만 에이전트가 접근 가능
{
  "agent_policy": {
    "allowed_mcp_servers": [
      "github-internal",
      "supabase-prod-readonly"
    ],
    "blocked_mcp_servers": [
      "*external*",
      "community-*"
    ],
    "require_attestation": true
  }
}

거버넌스 성숙도 레벨

조직이 어느 단계에 있는지 확인하는 기준입니다.

레벨 설명 상태

Level 0 에이전트 거버넌스 없음. 관리자 권한으로 실행 위험
Level 1 에이전트 전용 계정 분리, 기본 로깅 최소 기준
Level 2 최소 권한 적용, 감사 로그, 킬스위치 권장
Level 3 OWASP Agentic Top 10 검증, 자동 이상 탐지 양호
Level 4 Agent Passport급 외부 인증, 지속 모니터링 엔터프라이즈 표준

현재 조직의 16%만이 AI의 핵심 비즈니스 시스템 접근을 효과적으로 통제하고 있습니다. 대부분은 Level 0~1 수준입니다.


앞으로의 방향

트렌드 내용

에이전트 신원 표준화 NIST NCCoE — 에이전트용 IAM 프레임워크 개발 중
인증 생태계 성장 Workday Agent Passport처럼 서드파티 인증 기관 등장
규제 압력 증가 EU AI Act, 미국 연방 지침에 에이전트 조항 추가 예정
AgentSkills 표준 Workday의 AgentSkills 오픈 표준 — Claude Code, Codex, Cursor, Antigravity와 호환

 

반응형