🛡️ AgentArmor
에이전트형 AI (agentic AI) 애플리케이션을 위한 포괄적인 오픈소스 보안 프레임워크.
AgentArmor는 데이터가 저장 중(at rest), 전송 중(in transit), 또는 사용 중(in use)인 데이터 흐름의 모든 지점을 커버하여 AI 에이전트를 위한 8계층 심층 방어 (defense-in-depth) 보안을 제공합니다. OWASP Top 10 for Agentic Applications (2026) 문제를 해결하기 위해 구축되었습니다.
🚀 v0.5.0 신규 사항 — 강화된 보안 계층
이번 버전은 4개의 계층을 기본 구현에서 적대적 테스트를 거친 프로덕션급 강제 엔진 (enforcement engines)으로 업그레이드한 **주요 보안 릴리스 (major security release)**입니다:
-
🧠 L3: 강화된 컨텍스트 조립 (Hardened Context Assembly) — GoalLock 앵커가 대화 도중 발생하는 목표 하이재킹 (goal hijacking)을 방지합니다. CanaryVault는 세션당 여러 개의 고유한 카나리 토큰 (canary tokens)을 주입합니다. 계층형 컨텍스트 조립 (Tiered context assembly)은 템플릿 인젝션 (template injection)이 LLM에 도달하기 전에 제거합니다. 48개의 적대적 테스트 케이스를 통해 검증되었습니다.
-
🎯 L4: 강화된 계획 및 추론 (Hardened Planning & Reasoning) — ActionChainTracker가 다단계 공격 체인 (정찰 → 권한 상승 → 데이터 유출)을 탐지합니다. 의미론적 위험 점수 산정 (Semantic risk scoring)은 단순히 동사뿐만 아니라 행동의 의도를 평가합니다. 40개의 적대적 테스트 케이스를 통해 검증되었습니다.
-
🔒 L5: 강화된 실행 제어 (Hardened Execution Control) — 다섯 가지 강제 영역: 네트워크 정책 (DNS 리바인딩 + SSRF 보호), 속도 제한 (Rate Limiting, 토큰 버킷 + 서킷 브레이커), 리소스 예산 (Resource Budget, 타임아웃 + 크기 제한), 출력 산출물 정화기 (Output Sanitizer, UTF-8 + 바이너리 제거), 그리고 부수 효과 감사기 (Side-Effect Auditor, 불변의 실행 기록). 39개의 적대적 테스트 케이스를 통해 검증되었습니다.
-
🛡️ L6: 강화된 출력 보안 (Hardened Output Security) — 5단계 스캐너 파이프라인: 자격 증명 스캐너 (Credential Scanner, 13개 이상의 패턴, 오탐 제로), 개인정보(PII) 스캐너 (신뢰도 기반의 Presidio), 유해 콘텐츠 탐지기 (Harmful Content Detector, 탈옥 및 시스템 프롬프트 유출 탐지), 의미론적 데이터 유출 탐지기 (Semantic Exfiltration Detector, 교차 응답 추적), 그리고 스키마 검증 (Schema Validation). 스트리밍 및 비스트리밍 응답을 모두 지원합니다. 12개의 적대적 테스트 케이스를 통해 검증되었습니다.
-
🔐 L2: 암호화된 저장소 (Encrypted Storage) — Studio의 SQLite 데이터베이스에 저장되는 모든 데이터는 이제 변조 탐지를 위한 HMAC 기반 MAC 서명이 포함된 AES-256-GCM 방식으로 암호화됩니다.
**127개 이상의 적대적 테스트 케이스 (adversarial test cases)**가 강화된 계층들을 엔드 투 엔드 (end-to-end)로 검증합니다.
왜 AgentArmor인가?
기존의 모든 보안 도구는 출력 검증기, 프롬프트 인젝션 스캐너, 또는 정책 엔진과 같이 고립된 **단일 솔루션 (point solution)**입니다. AgentArmor는 전체 에이전트 아키텍처를 엔드 투 엔드 (end-to-end)로 보호하는 **최초의 통합 프레임워크 (unified framework)**입니다.
8가지 보안 계층
| 계층 | 이름 | 보호 대상 |
|---|
| L1 | 수집 (Ingestion) | 입력 스캐닝, 프롬프트 인젝션 탐지, 소스 검증 |
| ... | | |
빠른 시작
설치
uv add agentarmor-core
...
git clone https://github.com/Agastya910/agentarmor.git
cd agentarmor
...
기본 사용법
import asyncio
from agentarmor import AgentArmor, ArmorConfig
...
데코레이터 (Decorator)로 사용
@armor.shield(action="database.query")
async def query_database(sql: str) -> dict:
return db.execute(sql)
프록시 서버 모드 (Proxy Server Mode)
agentarmor serve --config agentarmor.yaml --port 8400
curl -X POST http://localhost:8400/v1/intercept \
-H "Content-Type: application/json" \
-d '{"action": "read.file", "agent_id": "my-agent", "input_data": "Hello"}'
강화된 계층 예시 (Hardened Layer Examples)
L3 컨텍스트 강화 (Context Hardening) — GoalLock
AgentArmor의 L3 계층은 모든 대화의 시작 시점에 에이전트의 목적을 고정함으로써 목표 하이재킹 (Goal Hijacking)을 방지합니다. 템플릿 인젝션 (Template Injection) 시도는 LLM에 도달하기 전에 제거됩니다.
from agentarmor.layers.context.assembler import L3ContextLayer
l3 = L3ContextLayer(
...
L5 실행 강화 (Execution Hardening) — 네트워크 정책 (Network Policy)
L5 계층은 모든 외부 요청에 대해 DNS 리바인딩 (DNS Rebinding) 보호, 프로토콜 제한, 도메인 허용 목록/차단 목록 (Allowlists/Blocklists)을 강제합니다.
from agentarmor.layers.execution.l5_execution import L5ExecutionLayer, NetworkPolicy
l5 = L5ExecutionLayer(
...
L6 출력 강화 (Output Hardening) — 5단계 스캐너 파이프라인 (5-Scanner Pipeline)
L6 계층은 모든 출력물에 대해 자격 증명 (Credentials), 개인정보 (PII), 유해 콘텐츠 및 의미론적 데이터 유출 (Semantic Exfiltration) 패턴을 스캔합니다.
from agentarmor.layers.output.filter import L6OutputLayer
l6 = L6OutputLayer(
...
통합 (Integrations)
MCP 서버 — 모든 에이전트를 위한 노코드 보안 (Zero-Code Security) (v0.4.0)
AgentArmor는 네이티브 MCP 서버로 작동하며, MCP 호환 코딩 에이전트라면 프로젝트 내의 Python 코드 변경 없이 직접 호출할 수 있습니다.
Claude Code 설정 — ~/.claude/claude_desktop_config.json에 다음을 추가하세요:
{
"mcpServers": {
"agentarmor": {
...
사용 가능한 MCP 도구 (Available MCP Tools):
| 도구 | 기능 |
|---|
armor_register_agent | 권한 세트와 함께 에이전트 등록 |
| ... | |
📖 전체 설정 가이드: docs/claude_code_setup.md
TLS + OAuth 2.1 검증 (Verification) (v0.3.0)
from agentarmor import MCPGuard
guard = MCPGuard()
...
OpenClaw ID 가드 (Identity Guard) (v0.2.0)
from agentarmor import OpenClawGuard
guard = OpenClawGuard(identity_dir="~/.openclaw")
enc_report = guard.encrypt_identity_files()
LangChain / OpenAI
from agentarmor.integrations.langchain import AgentArmorCallback
callback = AgentArmorCallback(armor=armor)
...
📖 전체 통합 가이드: docs/integrations.md
CLI 명령어
| 명령어 | 설명 |
|---|
agentarmor init | 설정 파일 생성 |
| ... | |
사용자 정의 보안 정책 (Custom Security Policies)
version: "1.0"
name: "database_agent"
...
아키텍처 (Architecture)
MCP Agents (Claude Code, OpenClaw, Cursor 등)
│
stdio │ (agentarmor-mcp)
...
OWASP ASI 커버리지
| OWASP ASI 위험 | AgentArmor 계층(들) |
|---|
| ASI01: Goal Hijacking | L1 (injection), L3 (GoalLock + canary tokens) |
| ... | |
문서화 (Documentation)
기여 (Contributing)
가이드라인은 CONTRIBUTING.md를 참조하세요.
라이선스 (License)
Apache 2.0. 상업적 및 오픈 소스 사용에 무료입니다.