[AI] AI 보안 · 작성: 2026-07-19 19:36:26 · 조회 2
AI 모델을 API 형태로만 서비스하고 가중치는 절대 공개하지 않아도, 그 API에 충분히 많은 질의를 던지는 것만으로 모델의 내부 정보나 학습 데이터의 일부가 새어 나갈 수 있다. 이 글은 이런 종류의 공격 두 가지 — 모델 추출과 멤버십 추론 — 을 다룬다.
공격자가 대상 모델의 API에 입력을 계속 보내고 출력을 수집해서, 그 입출력 쌍으로 원본과 비슷하게 동작하는 대체 모델을 자기 손으로 새로 학습시키는 공격이다. 원본 모델의 가중치를 직접 훔치는 게 아니라, "동작을 복제"하는 방식이라는 점이 특징이다.
지도학습 모델은 결국 (입력, 출력) 쌍의 집합으로부터 패턴을 배운다. 원본 모델의 API를 대량으로 질의해서 (입력, 출력) 쌍을 충분히 모으면, 그 쌍들을 학습 데이터 삼아 별도의 모델을 학습시킬 수 있다 — 이때 학습된 모델은 원본과 정확히 같지는 않아도 비슷한 성능을 낼 수 있다.
특정 데이터 샘플이 모델의 학습 데이터셋에 실제로 포함되어 있었는지 여부를 API 응답만으로 추론하는 공격이다.
모델은 일반적으로 학습에 사용된 데이터에 대해 더 높은 확신도(confidence)로, 더 "익숙하게" 반응하는 경향이 있다 (오버피팅이 심할수록 이 경향이 강해진다). 공격자는 "이 샘플을 넣었을 때 모델의 확신도가 유난히 높다면, 학습 데이터에 있었을 가능성이 높다"는 통계적 차이를 이용해서 판별 모델(shadow model)을 별도로 학습시켜 이 여부를 추정한다.
학습 데이터 자체가 민감한 경우(의료 기록, 특정 인물의 얼굴 사진, 회사 내부 문서) — "이 사람의 의료 기록이 이 모델 학습에 쓰였다"는 사실 자체가 그 사람이 특정 질병을 앓았다는 걸 암시하는 등, 데이터 포함 여부 자체가 프라이버시 침해로 직결될 수 있다.
두 공격 모두 "모델을 API 뒤에 감춰두면 안전하다"는 가정이 실제로는 완벽하지 않다는 걸 보여준다. 모델 자체의 견고성(differential privacy, 확신도 제한)과 서비스 레벨의 방어(rate limiting, 이상탐지)를 함께 설계해야 하는 이유가 여기에 있다.