AdGuard를 켜면 모바일 뱅킹 앱이 갑자기 종료되거나 무한 로딩, '네트워크 오류' 메시지가 나타나는 경우, 대부분 HTTPS 인증서 필터가 은행의 보안 메커니즘과 충돌하기 때문입니다. AdGuard를 삭제하거나 보안을 포기할 필요 없이 몇 분 안에 문제를 정리할 수 있습니다.
왜 AdGuard가 은행 앱을 먹통으로 만들까?
간단히 말해, AdGuard의 광고 차단은 단순히 웹페이지 배너를 막는 것 이상입니다. 암호화된 트래픽 속 광고와 추적기를 필터링하려면 휴대폰에서 '중간자' 역할을 해야 합니다. 즉, HTTPS 트래픽을 복호화하고 검사한 후 앱에 전달합니다. 이를 위해 AdGuard는 로컬 CA 인증서를 설치하도록 요청하며, 휴대폰이 이 중간자를 신뢰하게 만듭니다.
문제는 바로 여기서 발생합니다. 은행 앱은 일반 앱보다 보안 요구 사항이 훨씬 높으며, 대부분 인증서 고정(Certificate Pinning) 기술을 내장하고 있습니다. 이는 앱이 은행 자체 서버가 발급한 특정 인증서만 신뢰하고, 시스템이 AdGuard의 루트 인증서를 신뢰하더라도 중간자가 발급한 인증서는 거부한다는 뜻입니다.
은행 앱이 인증서 체인에 신뢰하지 않는 추가 단계가 있음을 감지하면 바로 연결을 끊습니다. 화면에는 열리지 않음, 흰 화면, 강제 종료, '서버에 연결할 수 없음', '네트워크 프록시 감지' 등의 메시지가 나타납니다. 이는 AdGuard의 버그가 아니라 두 가지 보안 정책의 정면 충돌입니다.
가장 간단한 해결법: 은행 앱을 필터 목록에서 제외하기
은행이 AdGuard의 인증서를 신뢰하지 않는다면, AdGuard가 해당 앱의 트래픽을 건드리지 못하게 하면 됩니다. AdGuard에서는 이를 '화이트리스트' 추가 또는 해당 앱에 대한 필터링 비활성화라고 하며, 휴대폰의 다른 보호 기능에는 영향을 주지 않습니다.
작업 단계 (Android 최신 인터페이스 기준, iOS도 유사):
- AdGuard 앱을 열고 하단 탐색 바에서 방패 아이콘을 찾아 '보호' 페이지로 이동합니다.
- '애플리케이션 관리'를 클릭하면 휴대폰에 설치된 앱 목록이 표시됩니다.
- 검색창에 은행 앱 이름을 입력합니다. 예: "ICBC", "China Merchants Bank", "China Construction Bank".
- 해당 앱을 클릭하여 '모든 트래픽을 AdGuard를 통해 라우팅' 또는 'HTTPS 필터링 활성화' 스위치를 찾아 직접 끕니다.
- 메인 화면으로 돌아가면 바로 적용되며, 휴대폰을 재부팅할 필요가 없습니다.
이렇게 설정하면 은행 앱의 모든 트래픽이 AdGuard의 HTTPS 필터링 모듈을 완전히 우회하여 시스템 기본 암호화 연결 상태로 돌아가므로 인증서 경고가 발생하지 않습니다. DNS 수준 필터링과 Safari 브라우저 보호는 정상 작동하며, 은행 앱 자체에는 광고가 없습니다. 기본적으로 네이티브로 렌더링되므로 차단할 광고가 없기 때문에 필터링을 꺼도 손실이 거의 없습니다.
다른 접근법: 인증서 문제를 일으키는 앱에 대해 HTTPS 필터링 일괄 비활성화
앱 하나하나를 수정하고 싶지 않거나 어떤 앱이 문제를 일으킬지 모른다면, HTTPS 필터링 설정에서 '예외 목록'을 직접 관리할 수 있습니다.
AdGuard → 설정 → HTTPS 필터링으로 들어가면 두 가지 주요 항목이 보입니다:
- HTTPS 필터링 스위치: 전체 제어를 담당합니다. 이걸 끄지 마세요. 끄면 모든 암호화 트래픽을 검사하지 않게 되어 보호 기능을 스스로 무력화하는 것입니다.
- 앱 화이트리스트/예외 목록: 클릭하여 필터링이 필요 없는 앱을 수동으로 선택할 수 있습니다. 은행, 증권, 결제 앱을 모두 체크하세요.
여기서 팁 한 가지: 모든 금융 앱을 한 번에 화이트리스트에 추가하고, 나중에 새로운 금융 앱을 설치할 때마다 바로 이 설정을 확인하는 습관을 들이세요. 은행 앱은 업데이트가 잦아 특정 버전에서 갑자기 더 엄격한 인증서 검증을 추가할 수 있기 때문에, 미리 화이트리스트에 넣어두면 급하게 송금해야 할 때 앱이 먹통이 되는 상황을 피할 수 있습니다.
또 다른 흔한 상황: 시스템 인증서와 사용자 인증서의 충돌
Android 7.0 이후, 시스템은 사용자가 직접 설치한 CA 인증서에 대해 엄격한 제한을 두었습니다. 기본적으로 시스템에 사전 설치된 인증서만 앱이 신뢰하며, 사용자가 수동으로 설치한 인증서(AdGuard가 설치하라고 한 인증서 포함)는 '사용자 인증서를 신뢰'로 표시된 앱에만 적용됩니다. 대부분의 은행 앱은 강제로 시스템 인증서만 인정하므로, 인증서를 설치해도 은행 앱이 이를 전혀 신뢰하지 않습니다.
AdGuard의 HTTPS 필터링은 이 사용자 인증서에 의존하는 반면, 은행 앱은 사용자 인증서를 신뢰하지 않습니다. 이것이 바로 교착 상태입니다.
iOS에서는 상황이 약간 낫습니다. AdGuard가 로컬 VPN이나 프록시 방식으로 트래픽을 처리하기 때문에 인증서 신뢰 설정이 비교적 통일되어 있습니다. 하지만 iOS용 AdGuard를 설치하고 '고급 보호'를 활성화했다면, AdGuard 인증서를 신뢰하도록 프로파일을 설치해야 하며, 은행 앱이 여전히 거부할 가능성이 있습니다. 해결 방법은 Android와 동일합니다. 해당 앱의 HTTPS 필터링을 끄거나 설정에서 필터 범위에서 제외하면 됩니다.
문제 해결 시 자주 놓치는 몇 가지 세부 사항
위의 방법대로 화이트리스트를 설정했는데도 은행 앱이 정상 작동하지 않는다면, 다음 부분을 확인해보세요.
- AdGuard 우회/프록시 잔재: 일부 심층 커스텀 Android 시스템(MIUI, ColorOS, HarmonyOS 등)에서는 AdGuard가 차단을 해제한 것으로 표시되어도 시스템에 이전 프록시 설정이 캐시되어 있을 수 있습니다. AdGuard의 보호 전체 스위치를 껐다가 5초 후 다시 켜거나, 비행기 모드를 전환하여 네트워크 상태를 새로고침해보세요.
- VPN 모드 제한: AdGuard는 Android에서 일반적으로 로컬 VPN 모드로 실행됩니다. 그런데 일부 은행 앱은 VPN이 활성화되어 있는지 감지하여 발견 즉시 서비스를 거부합니다. 이 경우 HTTPS 필터링만 끄는 것으로는 부족하며, 해당 앱을 'VPN을 통해 라우팅하지 않음'으로 설정해야 합니다. 같은 '애플리케이션 관리' 화면에서 트래픽 라우팅 스위치도 꺼주세요.
- 시스템 시간 오차: 인증서 검증은 정확한 시스템 시간에 크게 의존합니다. 휴대폰 시간을 수동으로 설정했고 오차가 크다면, 인증서 자체에 문제가 없어도 은행 앱의 SSL 핸드셰이크가 실패합니다. 자동 시간 동기화를 켜서 휴대폰이 통신사 또는 네트워크 시간과 맞춰지도록 하세요.
실제 경험: 어떤 은행 앱이 가장 민감한가
전자기기 헤비 유저로서 제 휴대폰에는 항상 AdGuard가 켜져 있고, 여러 은행 앱도 설치되어 있습니다. 실제 경험으로 보면, 국영 대형 은행 앱은 인증서 변경에 극도로 민감합니다. ICBC, China Construction Bank, Agricultural Bank of China는 인증서 체인에 조금이라도 이상이 있으면 즉시 작동을 멈추고, 어떤 것은 아예 경고 없이 강제 종료됩니다. China Merchants Bank와 Shanghai Pudong Development Bank는 상대적으로 관대해서 가끔 '네트워크가 안전하지 않음'이라는 알림만 뜨고 수동으로 닫으면 계속 사용할 수 있습니다. Bank of China의 BOC Cross-border GO와 일부 지방 은행 앱은 거의 동일한 보안 정책을 사용하므로 모두 화이트리스트에 넣는 것이 좋습니다.
증권 앱도 비슷한 특징을 보입니다. 예를 들어 Huatai Securities, Tonghuashun은 문제가 발생하면 주로 시세가 로딩되지 않거나 거래 페이지에서 '네트워크 오류' 메시지가 나타납니다. 해결 방법은 완전히 동일합니다. AdGuard의 필터링을 끄면 됩니다.
한 번은某 은행 앱이 업데이트 후 갑자기 시작 화면에서 멈춘 적이 있습니다. 10분 넘게 원인을 찾다가, 알고 보니 인증서 검증 정책을 몰래 강화했고 AdGuard의 예외 목록에 해당 앱이 없었던 것이 문제였습니다. 화이트리스트에 추가하고 앱을 다시 시작하니 모든 것이 정상으로 돌아왔습니다. 이 작은 에피소드를 통해, 앱 업데이트가 있을 때마다 당황하지 말고 미리 금융 앱을 통일적으로 화이트리스트에 넣어두는 것이 훨씬 편하다는 것을 깨달았습니다.
화이트리스트만으로 부족할 때: AdGuard 인증서 재설치
극히 드문 경우지만, 인증서 자체가 손상되거나 만료되어 화이트리스트를 올바르게 설정해도 HTTPS 필터링 전반에 이상이 생기고 은행 앱이 그 피해를 입을 수 있습니다. 이때 인증서를 재설정해볼 수 있습니다.
- AdGuard 설정 → HTTPS 필터링으로 이동합니다.
- HTTPS 필터링 전체 스위치를 끕니다.
- 휴대폰 시스템 설정 → 보안 → 암호화 및 자격 증명 → 신뢰할 수 있는 자격 증명(휴대폰마다 경로가 약간 다름)으로 이동하여 '사용자' 탭에서 AdGuard 인증서를 찾아 수동으로 삭제합니다.
- AdGuard로 돌아와 HTTPS 필터링을 다시 켜고 안내에 따라 인증서를 재설치합니다.
- 휴대폰을 재부팅합니다.
이 과정은 중간자 신원을 다시 등록하는 것과 같으며, 시스템 업데이트나 인증서 마이그레이션으로 인한 다양한 이상 현상을 해결할 수 있습니다. 단, 인증서를 재설치한 후 브라우저의 암호화 연결이 다시 설정되어야 하며 일부 앱에서 일시적으로 연결이 느려질 수 있습니다. 이는 정상적인 현상입니다.
이러한 작업은 후회할 수 있습니다
인터넷에서 어떤 사람들은 은행 앱이 AdGuard를 우회하도록 휴대폰 전체의 HTTPS 필터링을 꺼버리라고 조언합니다. 이는 가끔 사용하는 은행 앱 하나를 위해 모든 앱의 프라이버시 보호를 포기하는 셈이니 절대 가치가 없습니다. 또 어떤 사람들은 "휴대폰을 루팅해서 AdGuard 인증서를 시스템 신뢰 영역으로 옮겨라"고 말하는데, 작업 난이도와 벽돌 위험은 차치하고서라도, 은행 앱이 루팅된 기기를 감지하면 그 자체로 실행을 거부하므로 완전히 다른 막다른 골목으로 들어가는 것입니다.
가장 합리적인 전략은 간단합니다. 전체 HTTPS 필터링을 켜두고 AdGuard가 제공하는 깔끔한 경험을 누리되, 인증서에 예민한 소수의 금융 앱만 필터 범위에서 빼내는 것입니다. 이 균형은 보안을 희생하지도 않고 일상적인 결제에도 영향을 주지 않습니다.
아직 AdGuard를 사용하고 있지 않거나 무료 버전(기능 제한)을 사용 중이라 고급 기능 부족으로 이런 문제에 자주 시달리고 있다면, 지금 꽤 괜찮은 채널이 있습니다. Titikey에서 AdGuard 정품 영구 할인 구독을 단 $24.99에 제공합니다. 공식 사이트의 30달러 이상 가격보다 훨씬 저렴하며, 하나의 계정으로 여러 기기를 커버할 수 있어 장기적으로 커피 값 몇 잔을 아낄 수 있습니다. AdGuard VPN 또는 AdGuard 가족 요금제와 함께 사용하면 온 가족의 인터넷 환경을 깔끔하게 관리할 수 있고, 은행 앱의 까다로운 성질에 머리 아플 일도 줄어듭니다.
이 가이드가 AdGuard와 은행 앱이라는 앙숙을 서로 불편하지 않은 이웃으로 만들어 주길 바랍니다. 새로운 문제가 발생하면 언제나 인증서와 필터 설정부터 확인해보세요. 열에 아홉은 해결됩니다.