서비스는 국내에서만 제공하는데 로그인 시도 로그에 해외 IP가 섞여 있는 경우가 많습니다. 대부분은 정상 사용자가 아닙니다. 유출된 계정 정보를 대입하는 크리덴셜 스터핑, 신규 가입 혜택을 노리는 봇 가입, 앱 데이터를 긁어 가는 스크래핑이 주로 이런 경로로 들어옵니다.

그래서 많은 앱 운영사가 가장 먼저 해외 IP 차단을 검토합니다. 문제는 공격자도 이를 알고 있다는 점입니다. VPN이나 프록시를 거치면 해외 접속도 국내 IP처럼 보입니다. 이번 포스팅에서는 해외 IP 차단이 어디서 뚫리는지 그리고 여러 접근 신호로 세션을 판단하는 Geo Compliance를 어떻게 적용하는지 정리합니다.

Geo Compliance(지오 컴플라이언스)란?

Geo Compliance는 사용자가 접속한 위치와 네트워크 환경에 따라 서비스 접근을 통제하는 보안 정책입니다. 허용된 지역에서만 서비스를 제공하고, 그 밖의 접속은 차단하거나 별도로 처리하는 것이 기본 구조입니다. 이를 제대로 작동하려면 세션마다 세 가지 질문에 답할 수 있어야 합니다.

  1. 위치 확인: 이 사용자는 실제로 어디에서 접속했는가?
  2. 우회 탐지: VPN이나 프록시로 위치를 숨기고 있는가?
  3. 신뢰 판단: 접속한 IP가 악성 이력이 있는 곳인가?

해외 IP 차단으로 알 수 있는 건 첫 번째인 접속 위치뿐입니다. 그마저도 VPN이나 프록시를 쓰지 않은 사용자일 때만 맞습니다.

국내 앱 서비스에 접근 통제가 필요한 4가지 상황

1) 계정 탈취 시도: 보험·증권·가상자산 앱처럼 자산과 직결된 서비스는 크리덴셜 스터핑의 주요 표적입니다. 대량 로그인 시도는 프록시나 악성 이력이 있는 IP를 거쳐 들어오는 경우가 많습니다.

2) 신규 가입·이벤트 어뷰징: 가입 쿠폰이나 리워드를 노린 봇 가입은 일반 가정용 회선처럼 보이는 레지덴셜 프록시를 자주 씁니다. IP 국가만 보면 국내 사용자와 구분되지 않습니다.

3) 지역 한정 콘텐츠·요금: OTT·스트리밍 서비스는 라이선스 계약상 제공 지역이 정해져 있습니다. VPN으로 지역을 바꾸는 접속을 놓치면 계약 위반과 지역별 가격 정책 붕괴로 이어질 수 있습니다.

4) 데이터 스크래핑: 커머스·O2O 앱의 가격, 재고, 매장 정보는 경쟁사나 업자에게 대량으로 수집되기 쉽습니다. 이때도 IP를 계속 바꾸는 로테이팅 프록시가 쓰입니다.

해외 IP 차단만으로 부족한 이유

해외 IP 차단은 IP 주소의 국가 정보만 봅니다. 그래서 아래 수법을 쓰는 접속은 모두 정상적인 국내 접속으로 통과합니다.

  • VPN: 상용·사설 VPN을 쓰면 원하는 국가의 IP로 접속할 수 있습니다.
  • 프록시: 공개 프록시, 데이터센터 프록시, IP를 계속 바꾸는 로테이팅 프록시가 있습니다.
  • 레지덴셜 프록시: 실제 가정용 회선을 경유해 일반 사용자와 구분하기 가장 어렵습니다.
  • Tor: 여러 노드를 거쳐 접속 경로를 숨기는 익명 네트워크입니다.
  • 악성 IP: 봇넷이나 스캐너로 쓰인 이력이 있는 IP는 국내 IP여도 위험합니다.

앱 난독화나 위변조 방지도 이 문제를 해결하지 못합니다. 앱이 뚫리는 것은 막아 주지만, 접속한 세션이 위치를 속이고 있는지는 알려 주지 않기 때문입니다.

여러 접근 신호를 함께 보는 방식

우회 수법이 여러 가지인 만큼 판단도 여러 신호를 묶어서 해야 합니다. 앞서 말한 세 가지 질문에 맞춰 신호를 나누면 다음과 같습니다.

판단 축

신호

잡아내는 것

막을 수 있는 위협

위치 확인

위치 탐지

세션의 실제 접속 지역

라이선스·지역 정책 위반

우회 탐지

VPN 탐지

상용·사설 VPN

지역 제한·지역별 가격 우회

우회 탐지

프록시 탐지

공개·데이터센터·로테이팅 프록시

크리덴셜 스터핑, 스크래핑

우회 탐지

Tor 탐지

Tor 출구 노드 트래픽

고위험 거래

우회 탐지

레지덴셜 프록시 탐지

가정용 회선으로 위장한 프록시

봇 가입, 대규모 스크래핑

신뢰 판단

악성 IP 탐지

봇넷·스캐너 등 악성 이력 IP

무차별 대입, 결제 사기

신호를 잡아내는 것만큼 중요한 것이 대응 정책입니다. 모든 신호에 일괄 차단을 걸면 회사 VPN을 쓰는 정상 사용자까지 막힐 수 있습니다. 악성 IP처럼 위험이 확실한 신호는 차단하고, 나머지는 접속을 허용하되 기록해 분석하는 식으로 신호별 정책을 다르게 두는 것이 현실적입니다.

Geo Compliance 도입 전 체크리스트

  • 서비스를 허용할 지역과 막을 지역을 명확히 정했는가?
  • 로그인, 가입, 결제처럼 보호가 가장 필요한 지점을 파악했는가?
  • 해외 체류 고객, 회사 VPN 사용자 등 정상 예외 상황을 고려했는가?
  • 신호별로 차단할지, 기록만 할지 정책을 나눠 둘 수 있는가?
  • 차단·탐지 이력을 보안·운영팀이 함께 확인할 수 있는가?
  • Android와 iOS에 같은 정책을 적용할 수 있는가?

도브러너 GEO Compliance – Access Signals

도브러너 Access Signals는 도브러너 모바일 앱 보안에 추가하는 애드온입니다. 앞서 소개한 여섯 가지 신호로 세션을 평가하고, 접속 시점에 차단 또는 허용을 결정합니다.

  • 별도 솔루션 불필요: 이미 적용한 도브러너 앱 보안 위에서 동작합니다. Android는 실링 과정에서, iOS는 SDK로 적용합니다.
  • 신호별 정책 설정: 신호마다 차단할지, 분석용으로만 기록할지 정할 수 있습니다. 허용·차단 지역은 목록으로 직접 지정합니다.
  • 대시보드와 이벤트 로그: 어떤 세션이 어떤 신호로 탐지·차단됐는지 확인할 수 있습니다.
  • 필요한 신호만 선택: 여섯 가지 중 필요한 것만 고르거나 전체를 묶음으로 쓸 수 있습니다.

적용은 네 단계로 진행됩니다.

  1. 앱에 도브러너 모바일 앱 보안 적용
  2. 사용할 신호와 신호별 정책 선택
  3. 접속 시점에 세션별로 실시간 판단
  4. 대시보드에서 탐지·차단 결과 확인

설정한 정책은 프리셋으로 저장해 다음 빌드에도 그대로 적용할 수 있습니다.

자주 묻는 질문

1. 해외 IP 차단과 Geo Compliance는 어떻게 다른가요?

해외 IP 차단은 IP의 국가 정보만 보고 막습니다. Geo Compliance는 위치에 더해 VPN·프록시 같은 우회 여부와 IP의 악성 이력까지 함께 판단합니다.

2. VPN을 쓰는 사용자는 모두 차단되나요?

아닙니다. 신호별로 차단할지, 기록만 할지 정할 수 있어 서비스 성격에 맞게 운영할 수 있습니다.

3. 앱 보안 솔루션을 이미 쓰고 있는데 따로 필요한가요?

난독화·위변조 방지는 앱 자체를 지키고, Geo Compliance는 접속한 세션을 검증합니다. 역할이 달라 함께 적용할 때 효과가 큽니다.

해외 IP 차단에서 세션 검증으로

해외 IP 차단은 출발점일 뿐 VPN과 프록시를 거치는 접속까지 막아 주지는 못합니다. 세션의 실제 위치, 우회 여부, IP 신뢰도를 함께 봐야 국내 서비스의 계정과 혜택을 지킬 수 있습니다.

도브러너는 30일 파일럿을 통해 실제 서비스 트래픽에서 탐지 정확도와 오탐률을 직접 확인하실 수 있도록 지원합니다. 데모나 파일럿이 필요하시면 도브러너에 문의해 주세요.