무슨 일이 있었나
validate_generated_code AST 검사기와 BLOCKED_PATTERNS 필터는 검사기가 모델링하지 않는 동적 getattr/__builtins__ 호출 체인을 구성하여 우회할 수 있습니다. 허용된 소스는 디스크에 기록되고 애플리케이션 프로세스 사용자(기본 컨테이너의 루트)로 실행되며, 출력은 Server-Sent Events를 통해 반환됩니다.
왜 중요한가
에이전트의 의도는 LLM이 안전한 코드를 생성하는 것입니다. 이 우회는 모든 인증 사용자(또는 CVE-2026-63377을 통해 공격자가 소유한 사용자)가 컨테이너 내부에서 루트로 임의 코드를 실행하여 Okta API 토큰, JWT 키, SQLite 데이터베이스를 공개하고 에이전트 호스트 내에서 피버팅 및 지속성을 가능하게 합니다.
공격 경로
POST /api/react/execute-script는 script_code에 공격자가 제공한 Python을 허용하지만, 검증기는 getattr/__builtins__ 동적 호출 체인을 놓치고 코드는 asyncio.create_subprocess_exec를 통해 컨테이너 사용자(루트)로 실행됩니다.
영향받는 시스템
TAKO AI Agent for Okta 3.0.1-beta 미만
완화 방안
TAKO AI Agent for Okta 3.0.1-beta로 업그레이드하세요. 수정 커밋: https://github.com/fctr-id/okta-ai-agent/commit/3b5ccaff8423cdfa6d26f5e133c01b8b71148df4