30 lines
2.4 KiB
Markdown
30 lines
2.4 KiB
Markdown
---
|
|
id: SEC-INPUT-001
|
|
category: "10_Wiki/💡 Topics/AI"
|
|
confidence_score: 1.0
|
|
tags: [security, software-engineering, input-validation, data-integrity, defensive-programming]
|
|
last_reinforced: 2026-04-26
|
|
---
|
|
|
|
# Input Validation Strategies (입력 검증 전략)
|
|
|
|
## 📌 한 줄 통찰 (The Karpathy Summary)
|
|
> "모든 외부 입력을 잠재적 위협으로 간주하고, 시스템의 경계에서 데이터의 형식과 의도를 엄격히 심사하라" — 사용자나 다른 시스템으로부터 유입되는 데이터가 기대하는 형식, 길이, 타입에 맞는지 확인하여 인젝션 공격이나 런타임 오류를 원천 차단하는 방어적 설계 전략.
|
|
|
|
## 📖 구조화된 지식 (Synthesized Content)
|
|
- **추출된 패턴:** "Never Trust User Input" — 신뢰할 수 없는 경계(Trust Boundary)를 통과하는 모든 데이터에 대해 화이트리스트 기반의 검증을 수행하고, 안전한 형태로 변환(Sanitization)하여 시스템 내부로 전달하는 필터링 패턴.
|
|
- **주요 전략:**
|
|
- **Type Checking:** 기대하는 데이터 타입(String, Int 등) 여부 확인.
|
|
- **Range & Format Validation:** 숫자의 범위나 이메일/날짜 등의 정규식 패턴 검치.
|
|
- **Whitelisting:** 허용된 값의 목록 외에는 모두 거부 (가장 안전한 방식).
|
|
- **Sanitization:** 위험한 특수 문자(<, >, ' 등)를 안전한 문자로 치환.
|
|
- **의의:** SQL Injection, XSS, Buffer Overflow 등 고질적인 소프트웨어 보안 취약점의 80% 이상을 예방할 수 있는 가장 기본적이고 강력한 보안 수단.
|
|
|
|
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
|
|
- **과거 데이터와의 충돌:** 단순한 문법적 검증에서 벗어나, 이제는 LLM 시대에 맞춰 '프롬프트 인젝션'과 같은 의미론적 위협(Semantic Threat)을 감지하고 차단하는 지능형 검증이 필수적으로 요구됨.
|
|
- **정책 변화:** Antigravity 프로젝트는 에이전트에게 전달되는 모든 사용자 발화와 외부 파일 데이터를 처리하기 전, 보안 스캔 및 형식 검증 레이어를 거치도록 강제함.
|
|
|
|
## 🔗 지식 연결 (Graph)
|
|
- [[Software-Architecture-Patterns|Software-Architecture-Patterns]], Cloud-Security-Mastery, Data-Privacy-Foundations, [[LLM-Security-and-Safety|LLM-Security-and-Safety]]
|
|
- **Raw Source:** 10_Wiki/Topics/AI/Input-Validation-Strategies.md
|