논문명: PRADA: Protecting Against DNN Model Stealing Attacks
저자: Mika Juuti, Sebastian Szyller, Samuel Marchal, N. Asokan
게재지: Symposium on Security and Privacy (EuroS&P), Stockholm, Sweden, 2019. IEEE.
서론
딥러닝의 발전 덕분에 의사결정에 머신러닝 모델을 활용할 수 있도록 돕는 MLaaS(Machine-Learning-as-a-Service)가 등장했습니다. MLaaS 사용자는 API를 통해, 클라우드에서 작동하는 예측 모델에 쉽게 접근할 수 있습니다. 하지만 이런 예측 모델은 악의적인 사용자에 의해 탈취당할 위험이 있습니다.
공격자들은 정보를 얻어 예측 모델을 재현하려 합니다. 이를 위해 공격자는 API에 반복적으로 질문(Query)을 던지고, API는 이에 반복적으로 응답합니다. 이 과정에서 API는 필연적으로 모델 정보를 누출하게 되고, 공격자는 이를 이용해 API의 예측 모델을 추출할 수 있습니다. 본 논문은 기존 공격 기법보다 API가 더 많은 모델 정보를 누출하도록 유도하는 실험을 진행하여, 기존 공격 기법의 성능을 한층 더 개선합니다.
그리고 이에 따른 방어기법으로 PRADA(Protecting Against DNN Model Stealing Attacks)를 제안합니다. PRADA는 모델 구조나 학습 데이터에 의존하지 않는 공격 탐지 방식을 사용하기에 범용적인 방어 성능을 가집니다. 본 논문은 실험을 통해 PRADA가 모델 추출 방어에 효과적임을 입증합니다.
사전지식
가정
공격자는 원본 모델의 입력층, 중간층, 출력층의 형태와 각 층에 적용된 활성함수를 알고 있다고 가정합니다. 그러나 모델의 내부 파라미터(가중치나 편향)에는 접근할 수 없으며, 예측 API를 통해서만 모델의 출력(레이블 또는 클래스별 확률)을 얻을 수 있는 블랙박스 환경을 가정합니다.
그리고 공격자가 초기 단계에서 활용할 수 있는 데이터는 오직 시드 샘플(Seed Samples)뿐입니다.
모델 추출 알고리즘

기호 | 의미 |
---|---|
\(F\) | 공격 대상인 원본 모델 |
\(X \in \mathbb{R}^n\) | 입력 데이터 |
\(Y \in \mathbb{R}^m\) | 출력 데이터 |
\(\hat{F}\) | 원본 모델의 예측 클래스 |
\(F'\) | 공격자가 재현한 대체 모델 |
\(U \ in \ row \ 6\) | 레이블 없는 시드 샘플 |
\(U \ in \ row \ 13\) | 레이블 없는 합성 샘플 |
\(L\) | 샘플과 예측 API 반환 레이블의 쌍 |
\(H\) | 대체 모델 학습용 하이퍼파라미터 |
\(\rho\) | 재학습 반복 횟수 |
시드 샘플
시드 샘플은 공격자가 모델 추출 공격의 초기 단계에서 대체 모델 학습을 위해 활용하는 레이블 없는 데이터입니다.
공격자는 초기 단계에서 시드 샘플만을 보유하고 있으며, 이를 대체 모델의 학습 데이터로 사용하고자 합니다. 하지만 시드 샘플은 레이블이 없기 때문에 그대로 학습 데이터로 사용하기에 적합하지 않습니다. 이를 해결하기 위해 공격자는 시드 샘플을 원본 모델에 입력하여 레이블을 얻고, 이 레이블과 함께 시드 샘플을 대체 모델의 학습 데이터로 활용합니다.
시드 샘플은 다음과 같이 두 가지로 분류됩니다.
-
자연 샘플(Natural Samples): 실제 데이터 분포에서 수집된 샘플입니다.
-
랜덤 샘플(Random Samples): 입력 공간 내에서 균일분포를 따라 무작위로 생성된 샘플입니다.
시드 샘플만으로 대체 모델을 학습시킬 경우, 원본 모델의 결정 경계(Decision boundary)를 정밀하게 학습하기 어렵습니다. 이를 보완하기 위해 공격자는 합성 샘플(Synthetic Samples)을 생성하여 학습 데이터로 함께 사용합니다.
합성 샘플
합성 샘플은 원본 모델의 결정 경계를 더 효과적으로 학습할 수 있도록 공격자가 의도적으로 제작한 레이블이 없는 샘플입니다. 공격자는 합성 샘플을 원본 모델에 입력하여 레이블을 획득한 뒤, 이를 대체 모델에 여러 번 학습시킵니다. 이러한 재학습 과정(Duplication rounds)을 반복할수록, 대체 모델은 원본 모델의 결정 경계를 더욱 정확히 반영하게 됩니다.
본 논문은 다음 두 가지 합성 샘플 생성 방식을 사용합니다.
-
JbDA(Jacobian-based Dataset Augmentation): Jacobian 행렬을 활용하여 합성 샘플을 생성합니다. (예: FGSM, I-FGSM, MI-FGSM)
-
랜덤 생성: 입력 데이터의 색상 채널을 무작위로 변형하여 합성 샘플을 생성합니다. (예: COLOR)
FGSM 특징
\[\begin{align} x' \leftarrow x + \epsilon \cdot \operatorname{sign}\!\bigl(\nabla_{x}\,\mathcal{L}\bigl(F(x,c_{i})\bigr)\bigr) \end{align}\]위 수식대로 FGSM은 간단하게 적대적 예제를 생성할 수 있습니다. FGSM은 원본 데이터 변형 단계에 따라 분류할 수 있습니다.
- FGSM: 원본 데이터를 그래디언트 방향으로 최대 섭동 크기 ε만큼 한 번 변형하여 적대적 예제를 생성합니다.
- I-FGSM: ε/𝑘만큼 𝑘번 반복적으로 변형합니다. 이는 보다 정교한 적대적 예제를 생성합니다.
- MI-FGSM: I-FGSM에 모멘텀 최적화를 추가한 방식입니다.
또한 목표 클래스의 유무에 따라 분류할 수도 있습니다.
- Non-targeted: 원본 데이터가 정답 클래스로 분류되지 않도록 변형시킵니다.
- Targeted: 원본 데이터를 정답 클래스 외의 특정 클래스로 분류되도록 변형시킵니다.

위 그림 속 검정색 점들은 여섯 번의 재학습을 거쳐 제작한 합성 샘플들입니다.
(a)의 Non-targeted FGSM으로 생성된 합성 샘플들은 가장 가까운 클래스 사이를 오가며 만들어졌기 때문에 겹쳐 보이는 결과가 나타났습니다.
반면, (b)의 T-RND(Targeted Randomly) 방식은 무작위 목표 클래스를 향해 합성 샘플을 생성했기 때문에 합성 샘플 간 중복이 크게 줄어들었습니다. 또한 (b)는 I-FGSM 방식을 사용했기에 합성 샘플들이 원본 모델의 결정경계에 가깝게 생성됐습니다.
모델 추출 실험
목표
본 실험의 목표는 공격자가 원본 모델을 가장 잘 재현할 수 있는 공격 방식을 찾는 것입니다. 원본 모델은 MNIST와 GTSRB로 학습된 MLP 모델입니다.
평가 지표
어떤 공격 방식이 원본 모델 추출에 효과적인지 평가하기 위해 다음 지표들이 활용됩니다.
-
Agreement: 대체 모델의 충실도(Fidelity)을 판단합니다.
- Test-agreement: 실제 테스트셋을 원본 모델과 대체 모델에 입력했을 때의 macro-averaged F1-score.
- RU-agreement: 입력 공간에서 균등 분포로 추출한 랜덤 포인트를 원본 모델과 대체 모델에 입력했을 때의 동일 예측 비율
-
Transferability: 원본 모델과 대체 모델의 결정 경계를 비교하여 전이도(Transferability)을 판단합니다.
- Non-targeted transferability: 대체 모델에서 Non-targeted 방식으로 생성된 적대적 샘플을 원본 모델에 입력했을 때의 공격 성공 비율
- Targeted transferability: 대체 모델에서 Targeted 방식으로 생성된 적대적 샘플을 원본 모델에 입력했을 때의 공격 성공 비율
실험 대상
기존의 공격 기법 Papernot, Tramer, 그리고 Papernot에서 하이퍼파라미터를 변경한 기법 SAME, CV-search가 실험 대상으로 활용되었습니다.
모델 추출 공격 기법 | Papernot | SAME | CV-search | Tramer |
---|---|---|---|---|
시드 샘플 종류 | 자연 샘플 | 자연 샘플 | 자연 샘플 | 랜덤 샘플 |
하이퍼파라미터 선택 | 공격자 자유 | 원본 모델과 동일 | CV-search | 공격자 자유 |
재학습 반복 횟수 | 10회 이상 | 10회 이상 | 10회 이상 | 1회 |
합성 샘플 생성 | JbDA | JbDA | JbDA | 랜덤 생성, Line‑search |
공격 실험 결과
- 하이퍼파라미터 선정

위 결과에서 CV-search를 보면, 충실도가 원본 하이퍼파라미터를 사용한 SAME과 비슷합니다. 게다가 전이도는 재학습 횟수에 따라 Papernot보다 크게 증가합니다. 따라서 하이퍼파라미터 선정 방식은 CV-search가 효과적이었습니다.
- 전이도 평가용 샘플 생성 방식

위 결과는 Papernot에서 여러 가지 방식으로 적대적 예제 생성하고, 원본 모델에 입력했을 때의 오분류 성공 비율입니다. I-FGSM 계열의 전이도가 가장 높은 점을 보아, 해당 방식들은 결정경계에 매우 가까운 적대적 예제를 생성함을 알 수 있습니다. 따라서 I-FGSM 계열 방식들로 전이도 평가용 샘플을 생성할 때 전이도를 가장 잘 평가할 수 있습니다.
- 시드 샘플 개수, 클래스별 확률

위 결과에서 (a), (c)를 보면, 충실도는 시드 샘플 수에 따라 증가하지만, 클래스별 확률 제공에는 영향을 적게 받습니다. 반면 (b), (d)를 보면, 전이도는 클래스별 확률 제공 시 크게 증가합니다.
- 합성 샘플 생성 방식

위 결과를 보면, T-RND 방식의 합성 샘플로 대체 모델을 학습시킬 때의 충실도와 전이도가 높습니다.
- 모델 복잡도 불일치

위 그림은 원본 모델과 대체 모델의 구조적 복잡도 차이에 따른 Test-agreement를 나타냅니다. 대각 요소는 두 모델의 복잡도가 일치하는 경우를 나타냅니다. 각 행에서 대각 요소 대비 높은 Test-agreement 값은 초록색, 낮은 값은 빨간색으로 시각화됩니다. 그 결과, 충실도는 대체 모델의 복잡도가 원본 모델과 동일하거나 더 높을 때 향상되었습니다.
모델 추출 방어
PRADA
PRADA(Protecting Against DNN Model Stealing Attacks)는 공격자의 질문을 통해 모델 추출 공격을 탐지하는 방어기법입니다. PRADA는 개별 질문의 공격 여부를 판단하지 않고, 연속적인 질문들이 어떤 분포를 보이는지를 기준으로 공격 여부를 판단합니다.
정상적인 입력 샘플들 간 거리는 정규분포에 근사할 가능성이 높습니다. 머신러닝 모델의 입력은 일반적으로 유한한 공간 내에서 정의되며, 수학적으로 유한한 공간에서 무작위로 선택된 두 점 사이의 거리는 정규분포에 근사합니다.
반면에 공격자의 입력 샘플 간 거리는 정규분포를 크게 벗어날 가능성이 높습니다. 공격자는 입력 공간을 최적 탐색하고, 원본 모델의 정보를 누출시키기 위해 인위적으로 입력 샘플 간 거리를 조절하기 때문입니다.
따라서 PRADA는 사용자의 입력 샘플 간 거리 분포가 정규분포에서 벗어난 정도를 기준으로 공격 여부를 판단합니다.

방어 알고리즘

위의 PRADA 알고리즘을 보면, 22행에서 입력 샘플들 간 거리 집합 𝐷′에 대해 Shapiro–Wilk 정규성 검정을 진행합니다. 이때 검정 통계량 𝑊(𝐷′)는 0과 1 사이에서 정의됩니다.
𝐷′가 정규분포에서 벗어날수록 𝑊(𝐷′)는 0에 가까워집니다. 만약 𝑊(𝐷′)가 임계치 δ 미만이면, PRADA는 공격 탐지 경고를 발동합니다.
평가 지표
PRADA의 방어 성능은 공격 탐지 성공 여부, 탐지 속도, 오탐지율(FP rate)을 통해 평가됩니다. 탐지 속도는 공격 탐지까지 입력된 샘플 수로 측정됩니다. 그리고 오탐지율은 정상 입력에 대한 오경고 비율로 계산됩니다.
방어 성능

위 결과는 판단 임계치 δ에 대한 PRADA의 공격 탐지 시점을 보여줍니다.
Papernot, T-RND, COLOR 공격의 탐지 시점은 자연 샘플에서 합성 샘플로 전환될 때였고, TRAMER 공격의 탐지 시점은 랜덤 샘플에서 Line-search로 전환될 때였습니다.
PRADA는 기존 공격 기법 Tramer, Papernot의 공격들을 모두 탐지했습니다. 하지만 T-RND 공격은 탐지 임계치 δ가 너무 낮으면 GTSRB 모델에 대해 탐지하지 못 했는데, 이는 T-RND로 생성된 합성 샘플 간 거리가 멀기 때문입니다.

위 그래프를 보면, 정상 입력에 대해서는 𝑊(𝐷′)의 임계치를 비교적 높은 수준으로 설정해야만, PRADA의 공격 탐지 경고가 발동합니다. 이는 PRADA가 대부분의 임계치 범위에서 오탐지율이 낮음을 보여줍니다.
파훼 가능성

위 그래프는 공격자가 PRADA를 파훼하기 위해 입력 샘플에 가짜 질문(Dummy Query)를 추가하여 거리 분포를 정규분포에 가깝게 만들려는 모습을 보여줍니다.
그러나 정규분포를 근사를 위해 추가해야 하는 가짜 질문의 수는 기존 질문의 3~10배에 달할 정도로 많았습니다. 따라서 PRADA는 해당 파훼 시나리오에 대해 강건한 모습을 보여줍니다.
결론
본 연구는 기존 모델 추출 공격의 예측 정확도와 전이성을 개선하고, 이를 탐지하는 방어 기법 PRADA를 제안했습니다.
공격 실험을 통해 하이퍼파라미터, 시드 샘플 수, 그리고 확률 벡터 제공 여부가 공격 성능에 영향을 미친다는 점을 확인했으며, 특히 T-RND 방식으로 합성 샘플을 생성할 때 뛰어난 공격 성과를 기록했습니다.
PRADA는 연속적인 입력 샘플의 분포가 정규분포에서 얼마나 벗어나는지 분석해 공격을 탐지하며, 100%에 가까운 오탐지율을 달성했습니다. 개별 샘플이 아닌 연속 샘플의 패턴을 활용하기에 모델 구조나 학습 데이터에 의존하지 않는 범용적인 방어 성능을 갖습니다.
이러한 장점 덕분에 PRADA는 블랙박스 환경에서도 모델 추출 공격을 효과적으로 방어할 수 있습니다.