연합학습(Federated Learning, FL)은 데이터를 중앙 서버로 전송하지 않고, 각 클라이언트(예: 스마트폰, 병원)가 로컬에서 모델을 학습한 뒤, 그 결과(모델 업데이트)만을 중앙 서버에 공유하여 전체 모델을 개선하는 분산형 기계학습 방식입니다. 데이터가 로컬 환경을 벗어나지 않아 개인정보보호에 큰 장점이 있지만, 모델 업데이트 값 자체에 민감한 정보가 포함될 수 있으며, 시스템의 분산된 특성으로 인해 새로운 보안 위협이 발생할 수 있습니다.
따라서 본 문서는 연합학습 시스템을 안전하게 구축하고 운영하고자 하는 개발자 및 보안 설계자를 위해, 보안 모델 수립부터 위협 모델링, 그리고 핵심 방어 전략에 이르는 체계적인 접근법을 제시하는 것을 목표로 합니다.
1. 보안 모델
개념
보안 모델은 시스템이 달성하고자 하는 보안 목표를 정의하고, 시스템이 어떤 종류의 공격자를 가정하고 방어할 것인지를 명확히 하는 프레임워크입니다. 즉, "무엇을, 누구로부터, 어떻게 보호할 것인가?"를 정의하는 첫 단계입니다.
- 보안 목표: 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability) 등이 포함됩니다.
- 기밀성: 클라이언트의 원본 데이터와 모델 업데이트가 허가되지 않은 주체에게 노출되지 않아야 합니다.
- 무결성: 글로벌 모델과 로컬 모델 업데이트가 악의적으로 변경되거나 손상되지 않아야 합니다.
- 가용성: 시스템이 공격을 받더라도 정상적인 학습 과정이 중단되지 않아야 합니다.
- 공격자 가정: 공격자의 능력, 위치, 목적 등을 가정합니다.
- 공격자의 위치: 외부 공격자(Eavesdropper), 악의적인 클라이언트(Malicious Client), 신뢰할 수 없는 서버(Untrusted Server) 등
- 공격자의 능력: 연산 능력, 시스템에 대한 지식 수준, 다른 참여자와의 공모 가능성 등 (예: '정직하지만 호기심 많은(Honest-but-Curious)' 서버는 프로토콜은 따르지만, 수신한 정보를 통해 추가 정보를 얻으려 시도합니다.)
연합학습에서의 적용 및 구현
연합학습 환경의 보안 모델은 다음과 같이 구체화할 수 있습니다.
- 보호 대상:
- 각 클라이언트가 보유한 원본 학습 데이터 (Raw Data)
- 클라이언트가 서버로 전송하는 모델 업데이트 (Model Updates / Gradients)
- 서버가 집계하여 생성하는 글로벌 모델 (Global Model)
- 주요 공격자 가정:
- 외부 공격자: 클라이언트와 서버 간의 통신을 도청하여 모델 업데이트를 탈취하려는 공격자.
- 악의적 참여 클라이언트: 오염된 데이터나 모델 업데이트를 전송하여 글로벌 모델의 성능을 저하시키거나(모델 포이즈닝), 특정 데이터에 대한 정보를 빼내려는(추론 공격) 내부 공격자.
- 호기심 많은 중앙 서버: 프로토콜을 준수하지만, 다수의 클라이언트로부터 수집한 모델 업데이트를 분석하여 특정 클라이언트의 민감한 정보를 추론하려는 공격자.
2. 위협 모델링
위협 모델링은 보안 모델의 가정하에, 시스템에 존재할 수 있는 잠재적 보안 위협을 식별하고, 공격이 발생할 수 있는 지점(공격 표면)을 분석하며, 실제 공격이 이루어지는 경로(공격 경로)를 구체화하는 체계적인 프로세스입니다.
2.1. 위협 식별
"우리 시스템에 어떤 나쁜 일들이 일어날 수 있는가?"라는 질문에 답하는 과정입니다. STRIDE와 같은 프레임워크를 사용하여 잠재적 위협을 식별하고 분류합니다.
STRIDE:
- Spoofing(스푸핑)
- Tampering(변조)
- Repudiation(부인)
- Information Disclosure(정보 유출)
- Denial of Service(서비스 거부)
- Elevation of Privilege(권한 상승)
연합학습의 주요 위협:
- 정보 유출 (Information Disclosure):
- 멤버십 추론 공격 (Membership Inference Attack): 공격자가 특정 데이터가 학습 데이터셋에 포함되었는지 여부를 알아내는 공격.
- 속성 추론 공격 (Property Inference Attack): 학습 데이터셋의 전반적인 속성(예: 특정 성별의 비율)을 알아내는 공격.
- 데이터 재구성 공격 (Data Reconstruction Attack): 모델 업데이트를 역으로 분석하여 원본 학습 데이터의 일부 또는 전체를 복원하는 공격.
- 변조 (Tampering):
- 데이터 포이즈닝 (Data Poisoning): 악의적인 클라이언트가 자신의 로컬 데이터셋을 오염시켜, 결과적으로 글로벌 모델의 성능을 저하시키는 공격.
- 모델 포이즈닝 (Model Poisoning): 악의적인 클라이언트가 의도적으로 조작된 모델 업데이트를 서버로 전송하여 글로벌 모델에 백도어(Backdoor)를 삽입하거나 성능을 떨어뜨리는 공격.
2.2. 공격 표면 분석
공격자가 시스템의 취약점을 악용하기 위해 접근하거나 상호작용할 수 있는 모든 지점(시스템의 '노출된 면적')을 분석합니다.
연합학습의 공격 표면: 분산된 아키텍처로 인해 여러 곳에 존재합니다.
- 클라이언트 측 (Client-Side):
- 로컬 데이터셋 및 저장소
- 로컬 모델 학습 환경 (소프트웨어 라이브러리 등)
- 클라이언트 디바이스 자체의 보안
- 통신 채널 (Communication Channel):
- 클라이언트와 중앙 서버 간의 네트워크 경로
- 데이터 전송 프로토콜 (HTTP, gRPC 등)
- 서버 측 (Server-Side):
- 모델 업데이트를 수신하는 API 엔드포인트
- 모델 업데이트를 집계하는 집계 알고리즘
- 글로벌 모델 저장소 및 관리 시스템
- 서버 운영체제 및 인프라
2.3. 공격 경로 파악
공격자가 공격 표면의 특정 취약점을 이용하여 시스템에 침투하고, 식별된 위협을 현실화시키는 구체적인 방법이나 경로('실행 계획')를 파악합니다.
연합학습의 주요 공격 경로 예시:
- 모델 포이즈닝 공격 경로:
- 악의적 클라이언트 -> 조작된 모델 업데이트 생성 -> (공격 표면: API) -> 서버의 집계 프로세스 -> 글로벌 모델 오염
- 멤버십 추론 공격 경로 (서버가 공격자인 경우):
- 특정 클라이언트 -> (공격 표면: 통신 채널) -> 모델 업데이트 전송 -> 서버가 수신 및 저장 -> 서버가 저장된 업데이트들을 분석 -> 특정 데이터의 학습 참여 여부 추론
- 중간자 공격(Man-in-the-Middle) 경로:
- 클라이언트 <-> (공격 표면: 암호화되지 않은 통신 채널) <-> 외부 공격자 <-> 서버: 공격자가 통신을 가로채 모델 업데이트를 훔치거나 변조.
3. 상호 관계 및 보안 강화 프로세스
보안 모델 수립부터 위협 모델링을 통한 방어 전략 수립까지의 과정은 다음과 같은 체계적인 흐름을 따릅니다.
1단계: 보안 모델 수립
먼저, 우리가 무엇을 보호해야 하고(예: 사용자 데이터 프라이버시), 누구를 경계해야 하는지(예: 악의적 클라이언트) 보안 모델을 정의합니다. 이것이 모든 보안 활동의 기준점이 됩니다.
2단계: 심층적 위협 모델링 수행
정의된 보안 모델을 바탕으로, 위협을 식별하고 구체적인 방어 전략을 수립하는 통합적인 과정을 수행합니다.
- 위협 식별: 시스템에 가해질 수 있는 모든 잠재적 위협(예: 모델 포이즈닝, 데이터 추론)을 체계적으로 식별하고 목록화합니다.
- 공격 표면 분석: 식별된 위협이 시스템의 어느 부분(예: API 엔드포인트, 통신 채널)을 통해 발생할 수 있는지 공격 표면을 분석하여 취약 지점을 파악합니다.
- 공격 경로 구체화 및 방어: 공격자가 공격 표면을 통해 위협을 실행할 수 있는 구체적인 공격 경로를 파악하고, 해당 경로를 차단하거나 완화하기 위한 보안 기술을 적용합니다.
- 예시: '암호화되지 않은 통신 채널'이라는 공격 표면을 통해 '중간자 공격'이 가능하다는 것을 파악했다면, TLS/SSL 암호화를 적용하여 해당 공격 경로를 차단합니다. '서버의 모델 업데이트 분석'을 통한 추론 공격을 막기 위해 차분 프라이버시(Differential Privacy)나 보안 다자 계산(Secure Multi-Party Computation) 같은 기술을 적용합니다.
4. 결론
연합학습의 개인정보보호 강점은 강력한 보안 설계 없이는 무의미해질 수 있습니다. 본 문서에서 제시한 보안 모델 수립, 위협 모델링, 방어 기술 적용의 체계적인 프로세스를 통해, 잠재적 위협을 선제적으로 식별하고 효과적인 방어 전략을 구축할 수 있습니다. 성공적인 연합학습 시스템 구현을 위해서는 이러한 보안 프레임워크를 초기 설계 단계부터 적용하고 지속적으로 개선해 나가는 노력이 반드시 필요합니다.
'연합학습 > 사이버 보안' 카테고리의 다른 글
| FL-06. 연합학습의 사이버 보안을 위한 공격 경로 분석 (0) | 2025.10.10 |
|---|---|
| FL-05. 연합학습의 사이버 보안을 위한 공격 표면 분석 (0) | 2025.10.10 |
| FL-04. 연합학습의 사이버 보안을 위한 위협 모델링 (0) | 2025.10.10 |
| FL-03. 보안 모델: 일반적 정의와 연합학습에서의 적용 (0) | 2025.10.10 |
| FL-01. 연합학습 핵심 구조: 허브-앤-스포크 토폴로지 (0) | 2025.10.10 |