MFA 피로 공격
더 많은 작업
- MFA Fatigue Attack; 푸시 폭탄(push bombing), MFA 폭탄, 2FA 피로
- 비밀번호를 손에 넣은 공격자가 푸시 알림 방식의 다중 인증 승인 요청을 반복해서 보내 사용자가 귀찮음이나 착각으로 승인하게 만드는 공격
다중 인증(MFA)은 비밀번호가 유출되어도 계정을 지키기 위한 통제이다. 그런데 스마트폰 앱에 "로그인 요청을 승인하시겠습니까?" 알림을 띄우고 승인 버튼만 누르면 되는 푸시 방식은 사용자의 판단 하나에 모든 것이 걸린다. 공격자는 이미 확보한 아이디·비밀번호로 로그인을 반복 시도해 짧은 시간에 수십, 수백 개의 알림을 띄운다. 사용자는 알림을 멈추려고, 혹은 그중 하나가 정상 요청이라고 착각해 승인을 누르고, 그 순간 공격자가 로그인에 성공한다.
미국 CISA는 2022년 10월 팩트시트에서 이 기법을 'MFA fatigue', 다른 이름으로 'push bombing'이라 부르며 피싱 내성 MFA로 옮기기 전까지의 임시 대책으로 숫자 일치(number matching)를 권고했다. MITRE ATT&CK에서는 T1621(Multi-Factor Authentication Request Generation) 기법으로 분류한다. CISSP 출제 기준 7.15에는 '2단계 인증(2FA) 피로'가 보안 교육과 인식의 예로 명시되어 있다.
우버(Uber)가 2022년 9월 공개한 보안 업데이트에 따르면 경위는 다음과 같다(회사 공식 발표 범위).
- 외부 계약자의 개인 단말이 악성코드에 감염되어 회사 계정 비밀번호가 노출되었고, 공격자가 이를 다크 웹에서 구매했을 가능성이 높다고 밝혔다.
- 공격자는 계약자 계정으로 반복 로그인을 시도했고, 계약자는 그때마다 2단계 로그인 승인 요청을 받았다. 처음에는 접근이 막혔지만 결국 계약자가 요청 하나를 승인했다.
- 공격자는 이후 다른 직원 계정들에 접근해 G-Suite, Slack 등 여러 도구에 대한 높은 권한을 얻었고, 사내 Slack 채널에 메시지를 올렸다.
- 우버는 공격자가 Lapsus$라는 해킹 그룹과 관련된 것으로 본다고 밝혔다. 대응으로 침해 계정 차단·비밀번호 재설정, 내부 도구 비활성화, 키 교체, 코드베이스 변경 잠금, 재인증 요구, MFA 정책 강화, 내부 모니터링 확대를 했다.
이 사례는 비밀번호 유출, 단 한 번의 푸시 승인, 내부 권한 확산이라는 전형적인 흐름을 보여 준다. 계정 탈취된 내부자 위협의 예이기도 하다.
| 대책 | 원리 | 효과와 한계 |
|---|---|---|
| 숫자 일치(number matching) | 로그인 화면에 표시된 숫자를 사용자가 인증 앱에 직접 입력해야 승인된다. | 화면을 보지 않은 사용자는 승인할 수 없어 무심코 누르는 승인을 막는다. CISA는 피싱 내성 MFA로 가기 전의 가장 좋은 임시 대책 중 하나로 본다. 실시간 피싱 프록시에는 여전히 취약하다. |
| 추가 맥락 표시 | 승인 알림에 요청한 애플리케이션 이름과 IP 기반 위치를 함께 보여 준다. | 낯선 지역·앱의 요청을 사용자가 알아차리게 한다. 사용자의 주의력에 의존한다. |
| 요청 횟수 제한 | 일정 시간 안의 MFA 요청 수를 제한하고, 초과 시 계정을 잠그거나 위험 신호로 올린다. | 폭탄 자체를 어렵게 한다. 정상 사용자 잠금(서비스 거부)을 고려해 임곗값을 정한다. |
| 피싱 내성 MFA | FIDO2/WebAuthn, 패스키, 공개키 기반 스마트카드처럼 출처(도메인)에 묶인 암호 인증을 쓴다. | 승인 버튼 자체가 없어 푸시 폭탄과 실시간 피싱을 근본적으로 막는다. CISA는 이를 MFA의 '최고 기준(gold standard)'이라 부른다. |
| 위험 기반 인증 | 새 기기·불가능한 이동·비정상 시간대 등 위험 신호가 있으면 더 강한 인증을 요구하거나 차단한다. | 위험 기반 접근통제와 연결된다. |
| 탐지와 대응 | 짧은 시간 다수의 MFA 실패·거부, 거부 직후 승인 같은 패턴을 SIEM이나 UEBA로 탐지한다. | 승인이 일어난 뒤라도 세션 폐기와 비밀번호 재설정으로 피해를 줄인다. |
| 사용자 교육과 신고 체계 | "내가 시도하지 않은 승인 요청은 절대 승인하지 말고 즉시 신고한다"를 교육하고, 앱 안의 '사기 신고' 버튼이나 보안팀 연락 경로를 준다. | 신고된 요청은 비밀번호가 이미 유출되었다는 강한 신호이므로 즉시 비밀번호 재설정으로 이어지게 한다. |
CISA 팩트시트(Implementing Phishing-Resistant MFA)는 MFA 방식을 강한 것부터 다음 순서로 정리한다.
| 순위 | 방식 | 위협 노출 |
|---|---|---|
| 1 | 피싱 내성 MFA(FIDO/WebAuthn, PKI 기반) | 피싱에 내성. 푸시 폭탄, SS7 악용, SIM 스와핑은 해당 없음 |
| 2 | 앱 기반 일회용 비밀번호(OTP), 숫자 일치 푸시, 토큰 기반 OTP | 피싱에 취약. 푸시 폭탄에 내성. SS7·SIM 스와핑은 해당 없음 |
| 3 | 숫자 일치 없는 단순 푸시 | 푸시 폭탄과 사용자 실수에 취약. SS7·SIM 스와핑은 해당 없음 |
| 4 | 문자(SMS)·음성 | 피싱, SS7 악용, SIM 스와핑에 취약. 더 강한 방식으로 옮기기 전의 임시 수단으로만 쓴다 |
- MFA 피로 공격은 이미 비밀번호가 유출된 상태를 전제로 한다. 사용자가 원하지 않은 승인 요청을 받았다면 비밀번호부터 바꾸게 하는 것이 맞다.
- 근본 대책은 피싱 내성 MFA(FIDO2/WebAuthn)이고, 당장 바꿀 수 없을 때의 임시 대책은 숫자 일치이다. "MFA를 끄고 OTP로 바꾼다"는 피싱에 여전히 약하다.
- 출제 기준에서 이 주제는 '보안 교육과 인식' 아래에 있다. 시나리오가 사용자 행동을 묻는다면 교육과 신고 체계가 답이 될 수 있다.
- MFA는 '무엇을 아는가·가지고 있는가·무엇인가' 중 두 가지 이상을 요구하는 통제이지만, 사람의 승인 판단에 의존하는 부분이 남으면 사회공학 기법의 대상이 된다.
- Implementing Number Matching in MFA Applications – CISA, 2022
- Implementing Phishing-Resistant MFA – CISA, 2022
- Multi-Factor Authentication Request Generation, Technique T1621 – MITRE ATT&CK
- How number matching works in multifactor authentication push notifications – Microsoft Learn
- Security update – Uber