다섯 살도 알 수 있게 · AI 보안
안전하지 않은 출력 처리가 뭐예요?
안전하지 않은 출력 처리를, 완성된 접시를 검수 없이 자동 처리 기계에 그대로 넣었다가 사고가 나는 이야기로 풀어봤어요.
접시에 적힌 대로 기계가 바로 움직여요.검수대 없이, 접시가 그대로 다음 기계의 명령이 돼요.
주방장도 기계도 서로를 의심하지 않아요.접시가 위험한지는 읽어 보지 않으면 몰라요 — 모양만으론 구별이 안 돼요.
요리를 그대로 기계에 넣었다가 사고가 나요.접시(출력)를 검사 없이 다른 기계(시스템)에 바로 넣어서 생기는 구체적인 사고예요.
넣기 전에 한 번 봐요기계 앞에 검수대를 세워요
허락된 모양만 받아요자유 글자보다 정해진 칸이 안전해요
곧바로 실행은 피해요코드·명령은 특히 더요
기계 몫도 최소한만터져도 작게 터지게요
글자 그대로 바로 실행하는 길과, 한 번 더 보는 길이에요.안전한 길은 접시를 한 번 더 보고, 허락된 모양만 기계로 보내요.
코드로, 장부로, 화면으로 — 다 같은 방식으로 터져요.맛보기 검수대(가드레일)는 늘 세워 두는 울타리고, 이건 그 검수대 없이 접시가 도구처럼 바로 실행돼 터진 구체적인 사고예요.
한 줄로
안전하지 않은 출력 처리 = 주방장이 만든 접시를 검수 없이 그대로 자동 처리 기계에 넣었다가, 접시에 적힌 위험한 말을 기계가 그대로 따라 해서 생기는 사고.
Unsafe Output Handling. LLM의 출력(코드, SQL, 셸 명령, HTML 등)을 검증·이스케이프·샌드박싱 없이 그대로 다른 시스템(해석기, DB, 셸, 브라우저)에 넘겨 실행하는 취약점이에요. 결과는 원격 코드 실행, SQL/명령 인젝션, XSS 등 전통적인 인젝션 사고와 같은 모양으로 나타나요. 가드레일이 입출력을 거르는 일반 장치라면, 이건 그 장치가 없을 때 실제로 터지는 구체적 사고예요.
어른들은 이렇게 불러요
- 안전하지 않은 출력 처리
Unsafe Output Handling - 접시를 그대로 기계에 넣는 것. 기계가 접시에 적힌 말을 그대로 따라 해요.
- 가드레일
Guardrail - 맛보기 검수대. AI 세계의 일반 장치예요, 이건 그게 없을 때 터지는 사고. → 가드레일이 뭐예요?
- 도구 호출
Tool Calling - 기계가 바로 움직이는 몫. 출력이 도구 호출처럼 바로 실행되는 게 문제예요. → 도구 호출이 뭐예요?
- 코드 생성
Code Generation - 주방장이 직접 적는 조리법 쪽지. 생성된 코드를 그대로 실행하는 게 가장 흔한 사고예요. → 코드 생성이 뭐예요?
- 인젝션
Injection - 기계에 글자를 명령으로 심는 일. 보안 마을의 일반 개념이에요, 모양이 똑같아요. → 인젝션이 뭐예요?
- 최소 권한
Least Privilege - 기계에게도 꼭 필요한 만큼만. 기계 권한이 작을수록 사고도 작아요.
- 샌드박스
Sandbox - 사고가 나도 주방 전체로 안 퍼지게 담는 상자. 실행은 항상 격리된 곳에서 하는 게 안전해요.
- 출력 검증
Output Validation - 기계 앞에 세운 한 번 더 보는 눈. 허락된 모양만 통과시키고 나머지는 돌려보내요.
다음 이야기
가만히 있어도 실행되는 공격 →