SinapticAI 보안
SinapticAI는 모든 Sinaptic® DROID+ 인스턴스에 내장된 AI 의도 방화벽(intent firewall)입니다. 모든 유입되는 프롬프트와 유출되는 응답을 실시간으로 검사하여, 프롬프트 인젝션 공격, 탈옥(jailbreak) 시도, PII 유출이 LLM에 도달하기 전에 차단합니다.
별도의 배포나 외부 API 호출 없이, SinapticAI는 Sinaptic® DROID+ 내부에서 로컬로 실행되며 밀리초 미만에서 수 밀리초 내외의 매우 낮은 지연 시간을 보장합니다.
작동 원리
모든 메시지는 LLM에 도달하기 전에 보안 파이프라인을 통과합니다.
사용자 프롬프트 → SinapticAI 검사 → LLM → SinapticAI 검사 → 응답
검사 파이프라인은 사용 중인 에디션에 따라 여러 계층으로 구성됩니다.
| 계층 | 감지 대상 | 지연 시간 | 에디션 |
|---|---|---|---|
| RegExp | 일반적인 인젝션 패턴, 알려진 공격 시그니처 | 2ms 미만 | Community |
| NER | PII(이름, 이메일, ID 등)를 위한 개체명 인식 | 약 10ms | Pro / Enterprise |
| SLM | 미묘한 의도 분류를 위한 소형 언어 모델 | 약 30ms | Pro / Enterprise |
Community 에디션은 RegExp 계층을 포함하며, 알려진 공격 벡터의 약 70%를 걸러냅니다. Pro 및 Enterprise 에디션은 전체 카스케이드(RegExp → NER → SLM)를 추가하여 50ms 미만의 전체 지연 시간으로 95% 이상의 탐지율을 제공합니다.
설정
SinapticAI는 두 가지 수준에서 설정할 수 있습니다: droid.yaml의 글로벌 설정과 각 에이전트 YAML의 개별 설정입니다.
글로벌 설정 (droid.yaml)
sinaptic:
enabled: true # 마스터 스위치
mode: "block" # "block" = 위협 거부, "log" = 로그만 기록(섀도 모드)
pii:
enabled: true # PII 감지 및 마스킹 활성화
strategy: "mask" # "mask" = PII를 [REDACTED]로 대체, "block" = 요청 전체 거부
log_blocked: true # 차단된 요청을 감사 추적에 로깅
에이전트별 설정 (configs/agents/my-agent.yaml)
sinaptic:
enabled: true # 특정 에이전트에 대해 비활성화 가능
보안 모드
차단(Block) 모드 (기본값): 악성 프롬프트는 에러 응답과 함께 거부됩니다. 차단된 요청은 감사 추적에 기록됩니다.
{
"error": {
"message": "Request blocked by SinapticAI: prompt injection detected",
"type": "security_violation",
"code": "sinaptic_blocked"
}
}
로깅(Log) 모드 (섀도): 모든 프롬프트가 LLM으로 전달되지만, 감지된 위협은 로깅됩니다. 운영 환경에서 차단 모드를 활성화하기 전에 테스트 및 튜닝 용도로 유용합니다.
PII 보호
PII 감지가 활성화되면, SinapticAI는 입력과 출력 모두에서 다음과 같은 민감한 데이터를 스캔합니다.
- 이메일 주소
- 전화번호
- 신용카드 번호
- 주민등록번호/사회보장번호
- IP 주소
- 사용자 정의 패턴 (Pro/Enterprise)
mask 전략을 사용하면, 메시지가 LLM에 도달하기 전에 감지된 PII가 [REDACTED]로 대체됩니다. block 전략을 사용하면 요청 전체가 거부됩니다.
감지 대상
RegExp 계층 (Community) 감지 대상:
- 프롬프트 인젝션(Prompt injection) — 시스템 프롬프트 무시 시도 ("이전 지침 무시", 역할극 공격, 구분 기호 인젝션 등)
- 탈옥 패턴(Jailbreak patterns) — 알려진 탈옥 템플릿 (DAN, AIM 등)
- 시스템 프롬프트 추출 — 에이전트의 시스템 프롬프트를 드러내려는 시도
- PII 패턴 — 정규식을 통한 이메일, 전화번호, 신용카드, 주민번호 등
전체 카스케이드 (Pro/Enterprise) 추가 감지 대상:
- 난독화된 공격 — 인코딩되거나 음차된 프롬프트, 또는 다국어를 이용한 인젝션 시도
- 문맥 인식 PII — NER을 통해 감지된 이름, 주소 및 기타 엔티티
- 신종 공격 — SLM에 의해 분류된, 이전에는 볼 수 없었던 새로운 공격 패턴
감사 추적 (Audit Trail)
log_blocked가 활성화되면, 모든 보안 이벤트가 감사 로그에 기록됩니다.
{
"timestamp": "2026-04-10T14:32:01Z",
"event": "sinaptic_blocked",
"agent": "my-agent",
"rule": "injection_override",
"input_snippet": "ignore all previous instructions and...",
"action": "blocked"
}
감사 로그는 audit.log_path로 설정된 디렉토리(기본값: ./logs/audit/)에 저장되며, 매일 교체(rotation)되고 보관 기간을 설정할 수 있습니다.
에디션 비교
| 기능 | Community | Pro | Enterprise |
|---|---|---|---|
| RegExp 계층 | 예 | 예 | 예 |
| NER 계층 | — | 예 | 예 |
| SLM 계층 | — | 예 | 예 |
| 공격 탐지율 | 약 70% | 약 95% 이상 | 약 95% 이상 |
| 검사 지연 시간 | 2ms 미만 | 50ms 미만 | 50ms 미만 |
| PII 감지 | 정규식 패턴 | 전체 NER | 전체 NER + 사용자 정의 |
| 사용자 정의 규칙 | — | — | 예 |
| 사용자 정의 SLM 학습 | — | — | 예 |
권장 사항 (Best Practices)
- 로깅 모드로 시작하세요 — 먼저
mode: "log"로 실행하여 사용자에게 영향을 주지 않고 무엇이 차단될지 확인하세요. - 항상 PII 마스킹을 활성화하세요 — 사용자를 신뢰하더라도, LLM의 응답에 학습 데이터에 포함된 PII가 포함될 수 있습니다.
- 감사 추적을 모니터링하세요 — 주기적으로 차단된 요청을 검토하여 보안 태세를 조정하세요.
- 에이전트별로 활성화하세요 — 일부 내부 에이전트(예: 데이터 파이프라인)는 보안 검사가 필요하지 않을 수 있습니다. 적절한 경우 에이전트 단위로 SinapticAI를 비활성화하세요.