AdGuard

AdGuard
AdguardLogo.png
개발자 AdGuard Software Limited[1]
발표일 2009년 5월 1일
플랫폼 Windows, Mac OS, 기타 웹 브라우저
언어 다국어 지원
웹 사이트

공식 홈페이지
Chromium용 확장 프로그램(Chrome, Whale 등)
FireFox용 확장 프로그램
Safari용 확장 프로그램
iOS 애플리케이션

Android용 애플리케이션[1]

비공식 설치 가이드

애드가드(AdGuard)는 러시아의 AdGuard Software Limited[2]에서 개발한 광고 차단 소프트웨어다. 윈도우용과 Mac OS용 프로그램이 있으며 크롬, 파이어폭스, 사파리 등 수많은 웹 브라우저들을 위한 확장 프로그램까지 지원하고 있다. 웹 브라우저용 확장 프로그램은 무료이며 Android, iOS용 애플리케이션도 광고 차단만을 목적으로 한다면 불편함 없이 무료로 쓸 수 있다. 윈도우용과 Mac OS용은 최초 설치 시 14일간의 유료판 체험 기간을 주며 그 이후에는 무료 라이선스로 쓰던가 유료 라이선스를 구매해야 한다.

1 기능[편집]

uBlock, Adblock Plus 등의 광고 차단 프로그램이 '처음 사용자용' 이라면 Adguard는 '전문가용' 이라고 할 수 있는데, 필터를 잘 짜면 매우 훌륭한 광고 차단 기술을 발휘할 뿐더러 브라우저 단에서만 지원하는 광고 차단을 이 프로그램은 아예 시스템 단에서 지원한다. 또 모바일 버전의 Adguard를 사용하는 경우에는 내부에서 가상 사설망 기술을 사용하여 동작하기 때문에 귀찮고 위험성이 따르는 루팅 작업을 해주지 않아도 잘 돌아간다.

Adguard 윈도우 버전 혹은 Mac OS 버전을 사용하면 전체 브라우저의 모든 광고 차단 기능을 한 곳에서 관리할 수 있다는 장점이 있다. 귀찮게 웹 브라우저 하나 하나에 확장 기능을 설치하고 관리해주지 않아도 통합 관리를 할 수 있다.

전체, 혹은 일부를 HTTPS로 제공하는 사이트에서도 광고 차단이 가능한데, HTTPS 요소를 차단하려면 HTTPS를 필터링해야 하기 때문에 기타 광고 차단 프로그램에서는 이런 형식의 차단이 불가능하다. Adguard 측에서는 백신 소프트웨어에서 쓰는 기술과 동일한 기술을 사용 중이라고 입장을 밝혔다.

CSSJavaScript 인젝션 방어, HTML 필터링이 가능하다. 모두 Adblock Plus에서는 지원하지 않고 uBlock에서도 하는 둥 마는 둥 지원하는 것들. 이 기술 덕분에 다른 광고 차단 프로그램에서는 원천적으로 차단이 불가능한 광고까지도 원클릭으로 차단할 수 있고 광고 차단 방어 기술까지 완벽하게 차단할 수 있다.

공식 포럼이 존재하는데, 이곳에 프로그램의 버그나 차단이 되지 않는 광고 등을 제보하면 개발자가 길어야 4일 안에 확인하고 빠르게 답변을 해 준다.

1.1 프라이버시 기능[편집]

웹 브라우저용 확장 프로그램에서는 지원하지 않고 윈도우용과 Mac OS용 프로그램에만 지원하는 기능들이다. 프로그램 내 설정에서는 '스텔스 기능' 이라고 불린다. 공식 설명

  • 검색 쿼리 숨기기 - 검색 엔진에서 검색을 통해 방문한 웹 사이트의 검색어를 지운다.
  • Do Not Track 헤더 전송 - 웹 애플리케이션에서 사이트 사용자 추적을 막는다.
  • HTTP 요청으로부터 X-Client-Data 헤더를 제거 - 사용자의 브라우저를 감별하는 특수 헤더를 HTTP 요청에서 지운다.
  • 서드 파티 애플리케이션에서 쿠키 차단 - 보고 있는 웹 페이지 외부에서 브라우저에 쿠키를 저장하는 것을 차단한다. 이러한 쿠키들은 Google 애널리틱스 등에서 사용자의 정보를 추적하는 데 사용된다. 0을 입력하면 아예 저장을 거부하며, 1 이상의 숫자를 입력하면 입력한 숫자×60초 후 쿠키가 모두 파괴된다.
  • 퍼스트 파티 애플리케이션에서 쿠키 차단 - 보고 있는 웹 페이지 내부에서 브라우저에 쿠키를 저장하는 것을 차단한다. 0으로 하면 일부 사이트에서 로그인 등의 쿠키를 이용하는 행동 등이 아예 동작하지 않으니 0보다는 큰 숫자로 해놓거나 꺼 놓는 것이 권장된다.
  • 서드 파티 애플리케이션에서 캐시 파일 차단 - 보고 있는 웹 페이지 외부에서 브라우저에 캐시 파일을 저장하는 것을 차단한다.
  • WebRTC 차단 - WebRTC 기술은 따로 플러그인을 설치하지 않아도 웹 브라우저에서 통화, 화상 채팅 등을 가능하게 해 주는 기술이나, 이 기술을 사용하면 사용자의 IP 주소가 노출될 수 있다는 단점을 남긴다. 심지어 가상 사설망을 사용해도 원 IP 주소가 노출될 가능성을 남긴다. 켜 놓으면 이 기술을 네트워크 단에서 차단한다.
  • Push API 차단 - Push API는 웹 브라우저에 알림을 띄우는 좋은 용도로 사용되지만, 페이지가 활성화되어 있지 않은 상태에서도 서버와 연결을 유지한다. 켜 놓으면 Push API를 차단한다.
  • Location API 차단 - Location API는 사용자의 위치를 파악하여 맞춤형 광고를 띄우는 데 사용되기도 하는 기술이다. 켜 놓으면 이를 차단할 수 있다.
  • 제3자로부터 리퍼러 숨기기 - HTTP 요청 헤더에는 '리퍼러' 라는 값이 있는데, 어떤 사이트에서 다른 사이트로 이동할 경우 이동한 사이트는 어떤 사이트에서 이곳으로 이동했다는 사실을 리퍼러를 끼워넣어서 알려주게 된다. 켜 놓으면 리퍼러를 비워 놓거나 사용자가 설정한 값으로 바뀐다.
  • 유저 에이전트 숨기기 - 유저 에이전트는 사용자의 브라우저에 대한 개개인의 정보를 포함하는 문자열이다. 운영 체제 버전, 사용하는 웹 브라우저 등이 들어가는데, 유저 에이전트 값 찾기 사이트에서 올바른 값을 만들어 집어넣으면 그에 맞게 유저 에이전트가 변경된다. 유저 에이전트 확인 사이트에서 확인할 수 있다.
  • 사용자 IP 주소 숨기기 - 웹 사이트에서 사용자가 프록시를 사용한 것처럼 여기게 한다. HTTPS 기술을 사용하는 사이트에서는 먹히지 않는다.

1.2 DNS 설정 기능(안드로이드)[편집]

앱 버전의 경우 DNS 서버를 설정할 수 있는데, 서버 선택하는 화면을 보면 다음과 같다.

1.2.1 시스템 기본 설정[편집]

시스템의 기본 설정을 이용하는 것이다. 공유기의 DNS 설정을 따라가고, 공유기에서도 설정이 되어있지 않을 경우 ISP의 DNS 설정을 따라간다.

1.2.2 추천하는 DNS 제공자[편집]

  • AdGuard DNS [3]
광고를 제거하고 악성 소프트웨어로부터 당신의 기기를 보호합니다.

AdGuard가 직접 만든 DNS 서버를 이용한다. DNS를 기반으로 하는 광고들을 차단할 수 있다. 일반, DNSCrypt, DNS-over-HTTPS, DNS-over-TLS의 설정을 선택할 수 있으며 일반은 흔히 DNS 서버 설정의 IP를 직접 입력하는 것과 같은 비보안 통신이고, 나머지 3개의 설정은 보안까지 신경쓸 경우 설정하면 된다. 초기 설정으로는 DNS-over-HTTPS가 선택되어 있다. 공유기에서 직접 값을 설정할 경우 IPv4는 "94.140.14.14", "94.140.15.15"을 입력하거나 IPv6에서 "2a10:50c0::ad1:ff", "2a10:50c0::ad2:ff"를 입력하면 "일반" 모드로 이용할 수 있다.

다음은 각각 보안 DNS 프로트콜이다.

DNS over HTTPS https://dns.adguard.com/dns-query
DNS over TLS dns.adguard.com
DNS over QUIC quic://dns.adguard.com


  • AdGuard DNS Family Protection
AdGuard DNS에 세이프 서치와 성인 콘텐츠 차단을 추가했습니다.

AdGuard가 직접 만든 DNS 서버에 가족 보호 모드를 결합한 서버이다. DNS를 기반으로 하는 광고를 차단하고, 나아가 구글의 세이프 서치와 같은 기능을 수행한다. 역시 일반, DNSCrypt, DoH, DoT의 4가지 설정을 선택할 수 있으며, 초기 설정은 DoH이다. 공유기에서 직접 값을 입력할 경우 IPv4는 "94.140.14.15", "94.140.15.16"를 입력하거나 IPv6에서 "2a10:50c0::bad1:ff", "2a10:50c0::bad2:ff"를 입력하면 "자녀보호" 모드로 이용할 수 있다.

다음은 각각 보안 DNS 프로트콜이다.

DNS over HTTPS https://dns-family.adguard.com/dns-query
DNS over TLS dns-family.adguard.com
DNS over QUIC quic://dns-family.adguard.com
  • Google DNS
구글이 제공하는 무료 DNS 입니다.

일반, DoH, DoT 중 선택하여 설정할 수 있다.

  • Cloudflare DNS
Cloudflare가 제공하는 무료 DNS 서비스

일반, DoH, DoT 중 선택하여 설정할 수 있다.

  • Cloudflare Malware Protection
Cloudflare의 맬웨어 방지 DNS 서버가 악성 도메인을 차단합니다

일반, DoH 중 선택하여 설정할 수 있다.

  • Cloudflare Family
Cloudflare 차단 서버는 악성 및 '성인' 도메인에 대한 액세스를 제한합니다.

일반, DoH 중 선택하여 설정할 수 있다.

  • Cisco OpenDNS
악성 소프트웨어로부터 기기를 보호해주는 DNS 서버입니다.

일반과 DNSCrypt 중 선택하여 설정할 수 있다.

  • Cisco OpenDNS with Family Shield
성인 콘텐츠를 차단해주는 OpenDNS 서버입니다.

일반과 DNSCrypt 중 선택하여 설정할 수 있다.

  • Quad9
무료 DNS 서비스와 함께 피싱과 스파이웨어로부터 보호 받으세요.

일반, DNSCrypt, DoH 중 선택하여 설정할 수 있다.

한편 앱에서 존재하지 않는 서버로 AdGuard 논 필터링 서버가 있는데, 성인물 및 광고 차단을 해주지 않는 서버이다. IPv4는 "94.140.14.140", "94.140.14.141", IPv6는 "2a10:50c0::1:ff", "2a10:50c0::2:ff"를 공유기나 PC DNS 설정에 입력하면 이용할 수 있다. AdGuard 측에서는 고급 사용자가 사용하길 권장하고 있다.

DNS over HTTPS https://dns-unfiltered.adguard.com/dns-query
DNS over TLS dns-unfiltered.adguard.com
DNS over QUIC quic://dns-unfiltered.adguard.com


1.2.3 나의 DNS 서버[편집]

위의 서버를 여러 개 조합하여 사용하거나, 논 필터링 서버를 이용할 수 있는 강력한 기능이다. IP, DNSCrypt, DoH, DoT로 시작하는 어떤 DNS 주소든지 상관없으나, 보안을 위해 DoH를 지원하는 서버 중에서 https로 시작하는 서버들만 이용하는 것을 추천한다.

2 문제점[편집]

2.1 안드로이드[편집]

  • 디시인사이드 모바일 공식 앱에서 사용할 경우 가끔씩 공앱이 무한로딩하는 현상을 보인다. 전화를 재부팅하면 해결되지만, 얼마 지나지 않아 다시 무한로딩이 생긴다. 화이트 리스트에 다음과 같은 내용을 입력하면 도움이 된다고 한다. 사용자가 직접 규칙을 만들려고 한다면 이 링크를 참고해볼 수 있다.

@@||m.dcinside.com^$app=com.dcinside.app
@@||upload.dcinside.com^$app=com.dcinside.app
@@||json*.dcinside.com^$app=com.dcinside.app
@@||app.dcinside.com^$app=com.dcinside.app
@@||dci*.dcinside.co.kr^$app=com.dcinside.app
@@||addc.dcinside.com^$app=com.dcinside.app
@@||dci*.dcinside.com^$app=com.dcinside.app
@@||addc.dcinside.com^$app=com.dcinside.app
@@||wstatic.dcinside.com^$app=com.dcinside.app


  • AdGuard DNS 서버가 불안정하다. 서울에 DNS 서버를 설립했다는 트위터는 존재하지만 불안정하다.관련 트위터 쓰다 보면 공유기가 인터넷이 안 되거나, 폰에서 브라우저가 잘 불러오지 못하는 증상들은 DNS 서버가 불안정해서 생긴 문제일 수 있으니 다른 회사의 DNS로 바꾸어 보는 것을 추천한다. 이 링크를 사용해서 AdGuard DNS 서버가 정상적인지 확인할 수 있다.
  • 삼성페이가 가능한 갤럭시의 경우 삼성페이가 동작하지 않는다. VPN으로 동작하기 때문에 VPN 환경에서 실행할 수 없는 삼성페이 특성상 애드가드 개발자 측에서 로우 레벨 설정으로 pref.samsungpay.autopause.enable 설정으로 넣어줬지만 이 기능은 삼성페이를 처음 실행하면 VPN이 감지되어 인증을 못하고, 두번째에서야 계산 완료하고 삼성페이를 끄면 애드가드가 재실행되는 데 시간이 조금 걸린다. 다른 방법으로는 앱 관리에 들어가 삼성페이 필터링을 해제하는 것이다. 이것만 하면 삼성페이 쓰는 데에 크게 문제가 없으나, 둘 다 설정해버릴 경우 삼성페이 쓸 때마다 애드가드가 일시정지 되는 문제가 있다.
  • Android 11 ( One UI 3.0 ) 에서 HTTPS 필터링이 진행되지 않는다. 이는 이 곳을 참고해서 문제를 해결할 수 있다.

3 각주

  1. 구글 플레이의 Distribution Agreement 위반을 이유로 다른 광고 차단 애플리케이션이 내려간 이유와 동일하게 내려갔다.