[덕] AI 시스템의 새로운 위험분석, STPA

System-Theoretic Process Analysis

by 김정덕

인공지능(AI)이 산업 전반에 스며들면서 우리는 전례 없는 혁신을 경험하고 있습니다. 하지만 화려한 기술의 이면에는 우리가 아직 완전히 이해하지 못한 새로운 유형의 위험이 도사리고 있습니다. 과연 현재의 AI 시스템은 정말 '안전'하다고 말할 수 있을까요? 그리고 우리는 그 안전을 어떻게 검증하고 있을까요? 이 질문에 답하기 위해, 전통적인 IT 위험분석의 한계를 짚어보고, AI 시대의 새로운 위험분석 대안으로 떠오르는 시스템 이론적 프로세스 분석(System-Theoretic Process Analysis, STPA)에 대해 심도 있게 설명하고자 합니다.


전통적 위험 분석, AI 앞에서 한계를 드러내다


지금까지 IT 시스템의 위험 분석은 주로 '고장(failure)'에 초점을 맞춰왔습니다. 하드디스크가 망가지거나, 네트워크 장비가 오작동하는 등 개별 구성 요소의 물리적 또는 기능적 결함을 식별하고, 이를 방지하기 위해 이중화(redundancy)나 부품 신뢰도 향상 같은 대책을 세우는 방식이었습니다. 이러한 접근법은 예측 가능한 환경에서 작동하는 전통적인 시스템에는 효과적이었습니다.


하지만 AI 시스템, 특히 대규모 언어 모델(LLM)과 같은 생성형 AI의 위험은 근본적으로 다릅니다. AI의 위험은 하드웨어가 고장 나서 발생하는 것이 아니라, 완벽하게 정상 작동하는 프로그램이 결함 있는 지시나 불완전한 데이터를 충실히 따를 때 발생합니다. 예를 들어, AI가 편향된 데이터를 학습해 차별적인 결과를 내놓거나, 해커의 교묘한 프롬프트에 속아 내부 정보를 유출하는 상황을 상상해 보십시오. 이 경우 AI 모델 자체는 '고장' 난 것이 아닙니다. 오히려 설계된 대로 너무나 완벽하게 작동했기 때문에 문제가 발생한 것입니다. 여기에 AI 모델의 행동을 예측하기 어렵게 만드는 비결정성과 방대한 입력 공간은 전통적인 분석 방법으로는 도저히 감당할 수 없는 복잡성을 더합니다.


STPA의 체계적 접근: '안전하지 않은 상호작용'을 파헤치다


이러한 한계를 극복하기 위해 등장한 것이 바로 MIT 낸시 레브슨(Nancy Leveson) 교수의2012년 저서인 『Engineering a Safer World: Systems Thinking Applied to Safety』를 통해 체계적으로 제안되었고, 카네기 멜런 대학 소프트웨어 공학 연구소(SEI)가 AI 시스템에 적용을 제안한 STPA입니다. STPA는 패러다임을 전환합니다. 개별 부품의 '고장' 대신, 완벽하게 작동하는 구성 요소들이 예기치 않은 방식으로 상호작용하며 발생하는 '창발적 행동(emergent behavior)'에서 비롯된다는 점에 주목했습니다. 따라서 AI의 위험이 단순한 구성 요소의 고장이 아니라, 시스템 전체를 구성하는 요소들 간의 '안전하지 않은 상호작용(unsafe interactions)'에 집중합니다 즉, 시스템의 설계 자체가 위험을 유발하는 근본 원인이라고 보고, 이를 체계적으로 분석하여 제거하는 데 목적을 둡니다.


STPA는 다음과 같은 4단계 분석 절차를 통해 시스템의 잠재적 위험을 파헤칩니다. 'LLM 에이전트가 내부 데이터베이스를 검색하고 코드를 실행하여 사용자 요청을 처리하는' 가상 사례를 통해 살펴보겠습니다.

먼저, 시스템이 초래할 수 있는 최악의 결과, 즉 '영업 비밀 유출로 인한 기업 경쟁력 상실'과 같은 손실(Losses)을 정의합니다. 두번째 단계로, 이 손실로 이어질 수 있는 시스템의 상태인 '허가되지 않은 사용자에게 내부 기밀 정보가 노출되는 상태'를 위험(Hazards)으로 규정합니다. 세 번째 단계가 바로 STPA의 핵심으로, 시스템의 제어 구조를 분석하여 안전하지 않은 제어 조치(Unsafe Control Actions)를 식별합니다. 예를 들어, LLM이 '기밀 정보에 접근하여 외부로 전송하는 코드를 실행'하는 조치는 시스템을 위험 상태로 만들기 때문에 여기에 해당됩니다. 마지막으로, 어떤 상황에서 이런 조치가 발생할 수 있는지 구체적인 시나리오(Scenarios)를 도출합니다. 가령, "공격자가 특정 검색어를 웹사이트에 심어두고, LLM이 이를 검색 결과로 가져와 악성 코드를 실행함으로써 내부 정보를 유출하는 시나리오"와 같은, 이전에는 상상하기 어려웠던 복합적인 위험 경로를 발견할 수 있습니다.


'시나리오'의 함정: STPA는 무엇이 다른가


물론 전통적인 위험 분석에도 '시나리오 기반 분석'이라는 방법이 존재합니다. 이는 과거의 사고 사례나 전문가의 경험을 바탕으로 가능한 공격 시나리오를 가정하고 그에 대한 대응책을 마련하는 방식입니다. 언뜻 보기에 STPA가 최종 단계에서 '시나리오'를 도출하는 것과 유사해 보일 수 있습니다. 하지만 둘 사이에는 결정적인 차이가 존재합니다.


전통적 시나리오 분석은 주로 알려진 위협이나 과거 경험에 기반하기 때문에, 분석가의 상상력이나 기존 지식의 범위를 벗어나는 새롭고 예측 불가능한 위험을 식별하는 데 한계가 있습니다. 이는 마치 이미 알고 있는 적에 대비하는 것과 같아서, AI처럼 이전에는 없던 방식으로 작동하며 새로운 유형의 취약점을 만들어내는 시스템에는 부적합합니다.


반면, STPA의 시나리오는 상상력에 의존하는 '가정'이 아니라, 시스템의 제어 구조를 체계적으로 분석한 끝에 귀납적으로 도출되는 '결과물'입니다. STPA는 '시스템이 어떻게 스스로를 위험에 빠뜨릴 수 있는가?'라는 근본적인 질문에서 출발하여, 시스템의 모든 잠재적 위험 경로를 체계적으로 발견해 나갑니다.


현실적인 역할 분담: 개발 단계의 STPA, 운영 단계의 모니터링


STPA를 성공적으로 수행하기 위해서는 해당 AI 시스템에 대한 높은 이해도와 전문성을 요구합니다. 따라서 STPA를 무조건적으로 실행하기는 어렵습니다. AI 시스템의 개발 주체와 운영 주체가 다른 경우가 대부분이라는 현실을 직시할 때, AI 시스템의 안정성과 보안을 위해서는 개발 단계와 운영 단계에 최적화된 위험 관리 전략을 요구합니다.


개발 단계에서 AI 시스템 개발사의 가장 큰 책임은 애초에 안전한 시스템을 설계하고 만드는 것입니다. 바로 이 지점에서 STPA가 가장 큰 힘을 발휘합니다. 개발사는 시스템의 아키텍처, 데이터 처리 방식, 제어 로직 등 내부 구조에 대해 가장 깊이 이해하고 있으므로, STPA를 통해 '안전하지 않은 상호작용'을 사전에 식별하고 제거하는 '안전 내재화(Safety by Design)'를 실현할 수 있습니다. 이는 나중에 운영 단계에서 문제가 터진 뒤 수습하는 것보다 훨씬 비용 효율적이고 근본적인 해결책입니다.


반면, 운영 단계에서 AI 시스템을 도입한 기업의 최우선 과제는 실제 운영 환경에서 발생하는 위협을 신속하게 탐지하고 대응하며, 시스템의 방어 능력을 지속적으로 검증하는 것입니다. 이를 위해서는 지속적인 모니터링 및 로그 분석을 통해 실시간으로 이상 징후를 탐지하고, 레드팀/블루팀 훈련과 같은 실전적인 모의 훈련을 통해 시스템의 방어 태세와 운영팀의 대응 역량을 검증하는 것이 필수적입니다. 이 방법들은 STPA가 발견하기 어려운, 실제 운영 데이터와 상호작용하며 나타나는 동적인 위협에 대응하는 데 강점을 가집니다.


마무리하며: 각자의 자리에서 AI 안전을 완성하다


AI 기술이 고도화될수록 그 복잡성과 예측 불가능성은 더욱 커질 것입니다. 이제 우리는 AI의 능력을 과시하는 단계를 넘어, 그 안전성과 신뢰성을 어떻게 보장할 것인지에 대한 현실적인 고민을 시작해야 합니다. 이상적으로는 개발사와 운영사가 긴밀히 협력하여 AI 생명주기 전반에 걸쳐 위험을 관리하는 것이 최선일 것입니다. 하지만 현실에서는 각자의 역할과 책임을 명확히 하는 것이 더 효과적일 수 있습니다.


개발사는 STPA를 통해 '안전한 시스템을 만드는 책임'을 다하고, 운영사는 모니터링과 실전 훈련을 통해 '안전하게 시스템을 운영하는 책임'을 다하는 것. 이것이 바로 현재 우리에게 주어진 가장 합리적이고 실현 가능한 AI 위험 관리 전략입니다. 각자의 자리에서 전문성을 발휘하여 책임을 다할 때, 비로소 우리는 더 안전하고 신뢰할 수 있는 AI 시대를 완성해 나갈 수 있을 것입니다.

keyword
매거진의 이전글[덕] 인간 중심, 미래 사회 생존 전략