Blindfold

아이폰 앱 안의 광고도 차단할 수 있을까? 실제로 가능한 것들

“아이폰 앱 광고 차단기"를 검색하면 게임이든 스트리밍 앱이든 iOS 구석구석의 광고를 없애 주겠다는 앱이 줄줄이 나옵니다. 그중 하나라도 내려받기 전에 정직한 답부터 말씀드리겠습니다. 서드파티 앱이 자기 화면 안에 그리는 광고를 앱스토어의 어떤 앱도 완전히 막을 수 없습니다. 왜 그런지 알아 두시면 스크린샷이 암시하는 일을 실제로는 할 수 없는 앱에 돈을 쓰는 일을 피할 수 있습니다.

그렇다고 아무것도 할 수 없다는 뜻은 아닙니다. 진짜 답은 두 부분으로 나뉩니다. iOS에서 기술적으로 불가능한 것과, 실제로 잘 작동하는 것입니다. Blindfold는 두 번째 부분을 위해 만들어졌으므로, 이 글은 기술을 설명하는 만큼이나 솔직해지려는 목적도 있습니다.

어떤 앱도 다른 앱의 광고에 손댈 수 없는 이유

iOS는 모든 앱을 각자의 샌드박스 안에 가둡니다. 앱은 자기 파일을 읽고 쓸 수 있고, 네트워크를 쓸 수 있고, 자기 화면을 그릴 수 있지만, 다른 앱이 화면에 그리는 내용을 들여다보거나 바꿀 방법이 없고, 그 앱이 내부적으로 호출하는 광고 네트워크에 개입할 방법도 없습니다. 이 격리는 의도된 설계입니다. iOS가 앱 간 접근이 느슨한 플랫폼보다 악성코드와 스파이웨어 문제가 훨씬 적은 이유의 큰 부분을 차지합니다.

Blindfold 같은 광고 차단기가 사용하는 Safari 확장 프로그램 API, 즉 콘텐츠 차단기와 Safari 웹 익스텐션은 Safari의 렌더링 엔진에만 범위가 한정되어 있습니다. 애플은 확장 프로그램이 사용자의 브라우징 기록을 전혀 보지 않고도 차단 규칙을 제공하거나 페이지 요소를 숨길 수 있도록 이 API를 만들었고, 그 범위는 Safari에서 끝납니다. 설치된 앱이 게임의 UI 안으로 들어가거나, 무료 앱이 레벨 사이에 배너를 띄우기 위해 넣은 광고 SDK를 가로챌 수 있는 동등한 API는 존재하지 않습니다. 어떤 앱이 아무 단서 없이 시스템 전체에서 그런 일을 한다고 주장한다면, 그것은 iOS가 허용하는 범위를 부풀린 것입니다.

시스템 전체를 다루는 DNS·VPN 광고 차단기가 실제로 하는 일

Safari보다 더 넓게 손을 뻗는 앱 종류가 실제로 존재합니다. 바로 DNS·VPN 기반 차단기입니다. iOS는 앱이 로컬 VPN 프로필을 설치하도록 허용하는데, 이를 통해 기기의 네트워크 트래픽이 아이폰을 떠나기 전에 온디바이스 필터를 거치게 됩니다. 이 필터는 각 요청이 향하는 도메인을 알려진 광고·추적 네트워크 목록과 대조해 일치하면 연결을 끊습니다.

이 방식은 앱 안의 광고 일부를 실제로 잡아냅니다. 게임의 광고 SDK가 잘 알려진 광고 네트워크 도메인을 호출하면, 필터는 그 주소를 해석해 주지 않을 수 있고, 그러면 광고 자체가 로드에 실패합니다. 이는 실제로 유용한 능력이며, “아이폰 앱용 광고 차단기"에 가장 가까운, 실제로 존재하는 시스템 전체용 방식입니다.

다만 진짜 트레이드오프가 따라옵니다.

  • 암호화된 HTTPS 트래픽 안을 들여다볼 수 없습니다. 요청이 어느 도메인으로 향하는지만 알 뿐, 페이지나 광고에 무엇이 있는지는 모릅니다. 그래서 도메인 단위로 통째로 막거나 허용할 수밖에 없고, Safari 콘텐츠 차단기처럼 “이 요소 하나만 숨겨라” 같은 정밀한 규칙은 쓸 수 없습니다.
  • 광고와 정상적인 앱 기능이 점점 같은 도메인과 인프라를 공유하고 있습니다. 광고를 막으려고 도메인 하나를 차단하면 로그인 과정이나 동영상 플레이어, 그 도메인을 거치는 푸시 알림까지 함께 깨질 수 있습니다.
  • 무언가를 필터링하려면 VPN 프로필이 항상 실행 중이어야 하는데, 이는 탭 한 번으로 끌 수 있는 Safari 확장 프로그램과는 다른 종류의 접근 권한을 내주는 일입니다.

그렇다고 DNS 기반 차단이 나쁘다는 뜻은 아닙니다. 기술적으로 볼 수 있는 범위 자체가 다르기 때문에 콘텐츠 차단기보다 더 거친 도구일 뿐입니다.

Blindfold가 완전히 작동하는 범위

Safari의 실제 렌더링 엔진 안에서 로드되는 것이라면 무엇이든 Blindfold의 콘텐츠 차단기가 다룰 수 있으며, 이는 대부분의 사람들이 예상하는 것보다 훨씬 넓습니다. 여기에는 Safari 자체는 물론, 앱이 사용자를 직접 Safari로 보내지 않고 웹 링크를 열 때 쓰는 인앱 브라우저 시트인 Safari View Controller도 포함됩니다. 메일, 메시지, 뉴스 앱이 이 시트 안에서 기사를 열어도, 그 내부에서는 여전히 Safari의 엔진이 실행되고 있으므로 동일한 콘텐츠 차단기 규칙이 자동으로 적용됩니다. 링크를 연 앱이 이를 위해 특별한 일을 하는 것도 아니고, 그렇다고 이를 거부할 수도 없습니다.

이는 실제 브라우징의 상당 부분을 아우릅니다. 기사, 블로그, 쇼핑 사이트, 그리고 어느 앱을 통해 들어왔든 링크를 눌러 도착하는 대부분의 웹 콘텐츠 말입니다. 다루지 못하는 것은 게임 자체의 네이티브 광고 배너나 웹페이지가 아니라 앱의 인터페이스에 직접 짜여 들어간 광고 SDK입니다. 이것이 샌드박스의 경계이며, Blindfold를 포함해 Safari 기반의 어떤 차단기도 이 경계는 넘을 수 없습니다.

정직한 답

없애고 싶은 광고가 특정 게임이나 앱 자체의 UI 안에 있다면, Safari 기반 차단기는 그곳까지 닿지 못합니다. 현실적인 선택지는 그 앱 자체의 광고 제거 구매나, 위에서 설명한 트레이드오프를 감수하고 도메인 단위에서 일부를 잡아내는 DNS·VPN 차단기입니다.

싸우고 계신 광고와 트래커가 아이폰으로 브라우징하는 동안, 즉 Safari나 다른 앱이 여는 인앱 브라우저 시트에서 나타나는 것이라면, 이는 오늘 당장 완전히 해결할 수 있는 문제입니다. 아이폰 광고 차단 가이드에서 콘텐츠 차단기, Safari 웹 익스텐션, DNS 프로필이 어떻게 맞물리는지를 포함해 이 절반의 문제에 통하는 모든 방법을 다룹니다.

Blindfold는 Safari 쪽을 담당합니다. Safari와 모든 Safari View Controller 시트에서 광고, 트래커, 페이지 방해 요소를 온전히 기기 안에서 네이티브로 차단하며, 모든 규칙을 앱 안에서 보고 수정할 수 있습니다. 30일 무료 체험 후 $7.99/년 또는 일회성 결제 $19.99이며, 가족 공유가 포함되고 계정도 필요 없습니다. App Store에서 Blindfold 받기, 또는 홈페이지에서 직접 확인해 보세요.