티스토리 뷰
그림1. Google Play 프로텍트
2017년 구글 I/O 에서 공개한 일종의 안드로이드용 모바일 백신이다.
PHA(Potentially Harmful Application, 잠재적으로 유해한 애플리케이션)으로부터 사용자의 데이터를 보호를 목적으로 한다.
Google Play 프로텍트(이하 구글 프로텍트)는 안드로이드 4.3 (API 18, Jelly Bean)이상 지원하며 백그라운드에서 기기 내 다운로드한 앱과 데이터 등이 보안위협에 노출되지 않았는지 자동으로 확인해 필요한 조치를 취한다.
Play Service 업데이트를 통해 제공되며 Android 8.0(API 26, Oreo) 이상은 OS에 기본 탑재된다.
구글 프로텍트는 기기 및 앱데이터 분석하고 위협을 감지하는 실시간 클라우드 기반 서비스를 통해 PHA로 부터 사용자를 보호한다.
플레이 스토어를 통해 설치한 앱과 APK로 설치한 애플리케이션을 주기적으로 검사하여 PHA를 감지하고 PHA가 설치되어있을 경우 해당 애플리케이션 사용을 중단 하거나 사용자 동의 없이 애플리케이션을 삭제하여 디바이스를 보호한다.
구글 프로텍트는 Play Store에 게시된 앱과 게시 전 앱(검수 중)을 분석하고 PHA 여부를 판단한다.
또한 머신러닝을 적용해 새로운 취약점 및 PHA에 대한 대응 시스템을 지속적으로 업데이트 한다. (안드로이드 보안 패치같이 펌웨어 및 업데이트에 의존하지 않는다)
프로텍트 기능
애플리케이션 검사
기기 찾기 (Find my Phone)
의심스런 사이트 접근 제한
프로텍트 설정 방법
그림2. Google Play 프로텍트 설정
구글 플레이 스토어 App > Play 프로텍트 > 기기에 보안 위협이 있는지 검색 > On
프로텍트 인증 앱
그림3. Play 프로텍트 인증 앱, ONE
구글 프로텍트는 Play Store에 게시 할 애플리케이션에 대한 엄격한 보안 검사를 진행한다.
프로텍트 보안 인증을 통과한 앱에 대하여 "Play 프로텍트 인증 앱" 배지를 부여하며 Google 정책을 위반할 경우 게시 정지 조치를 취한다.
Play 프로텍트 인증 앱 vs Play 프로텍트 비인증 앱 차이점
그림4. Play 프로텍트 비인증 앱, CGV
프로텍트 인증 앱 설치시 항목 사용에 대한 동의 창의 띄우지 않고 바로 다운로드를 시작한다.(그림3)
비인증 앱 설치시 항목 사용에 대한 동의 창의 띄우고 동의 버튼을 눌러 다운로드를 시작한다.(그림4)
프로텍트 인증을 받은 ONE는 설치 버튼 클릭 후 즉시 다운로드를 진행한 한면, 비인증 앱 CGV는 사용 동의 후 다운로드를 진행할 수 있었다.
Play 프로텍트 인증 기준
프로텍트 인증을 받는 기준에 대한 구글의 공식 가이드를 공개하지 않았다.
Google Play 프로텍트 공식 사이트 안내 중 "Google 정책을 위한할 경우 정지 조치를 취한다"는 안내로 보아 구글 플레이 개발자 정책 센터 - Google Play 정책 준수 10가지 도움말 준수 여부를 검사하는 것으로 예측할 수 있다.
또한 Google Play는 모든 PHA를 금지하고 제출 후 PHA 검사를 하고 있어 "2017년 안드로이드 보안 보고서"에 정리된 PHA 분류를 참고하여 PHA로 분류되는 것을 사전에 방지해야한다.
PHA
PHA(Potentially Harmful Application, 잠재적으로 유해한 애플리케이션)
보통 "멀웨어"로 부른다.
구글에선 멀웨어와 구분을 위해 "PHA"로 지칭힌다
PHA는 데이터에 잠재적인 보안 위험을 초래할 수있는 앱을 칭하며 아래와 같이 분류한다
PHA 앱 설치 시도가 감지되면 사용자에게 경고하고 아래 중 가장 유해한 특성으로 분류된다.
Google Play는 모든 PHA를 금지하고 제출한 앱 검사에 아래와 같은 분류를 사용한다.
PHA 분류 기준
PHA | 설명 | |
---|---|---|
Backdoors | 백도어 | 장치에서 원치 않는 유해한 원격 제어 작업 실행 |
Commercial spyware | 상업 스파이웨어 | 허가없이 사용자의 데이터 전송하여 사람추적 등에 사용 |
Denial of service | 서비스 거부 공격 | 원격 서버에 과도한 로드를 생성하기 위해 많은 양의 HTTP 요청을 보냄 |
Hostile downloader | 적대적 다운로더 | 앱이 자체적으로 악성코드를 포함하진 않지만, 중요 보안 업데이트로 가장한 PHA를 설치하도록 유도 |
Mobile billing fraud | 모바일 결제 사기 | 고의적으로 오해의 소지가 있는 결제 유도 |
SMS fraud | SMS 사기 | 사용자 동의 없이 SMS 서비스에 가입하거나 사용하도록하고 통신사의 알림 메시지를 의도적으로 숨김 |
Call fraud | 전화 사기 | 사용자 동의 없이 유료 번호로 전화를 걸어 사용자에 요금 청구 |
Toll fraud | 유료 사기 | 통신사 결제를 통해 콘텐츠 구입 유도 |
Non-Android threat | Android 이외의 위협 | 안드로이드 기기에 해를 안끼치지만 다른 플랫폼에 잠재적 위험 |
Phishing | 피싱 | 신뢰 출처로 위장하여 정보 탈취 |
Privilege escalation | 권한 상승 | 권한을 승격시켜 시스템 설졍 변경이 가능하록 해 시스템 무결성을 손상시키는 응용 프로그램 |
Ransomware | 랜섬웨어 | 데이터를 부분적으로 또는 광범위하게 변조하고 복구에 대한 지불 요구 |
Rooting | 루팅 | 사용자 알림없이 루팅하여 권한 승격 |
Spam | 스팸 | 원하지 않는 광고 메시지를 사용자의 연락처 목록이나 메일로 보냄 |
Spyware | 스파이웨어 | 중요 정보를 외부에 유출하여 사용자 감시 |
Trojan | 트로이얀 | 유해요소를 숨겨 무해한 앱처럼 위장 |
프로텍트 차단 기능 원리
악의적인 타사 소프트웨어, URL 및 기타 보안 문제로부터 사용자를 보호하기 위해 Google은 사용자의 기기에서 네트워크 연결, 잠재적으로 위험한 URL, 운영체제와 Google Play 또는 다른 소스를 통해 기기에 설치된 앱에 관한 정보를 수신할 수도 있습니다. 안전하지 않을 수 있는 앱이나 URL에 관한 Google의 경고가 표시되는 경우도 있습니다. 기기, 데이터, 사용자에게 유해한 것으로 알려진 앱 또는 URL의 경우 Google이 기기에서 삭제하거나 설치를 차단할 수 있습니다. 이러한 보호 기능 중 일부는 기기 설정에서 사용 중지할 수 있습니다. 하지만 Google은 Google Play를 통해 설치된 앱에 관한 정보를 계속 수신할 수 있으며, 다른 소스를 통해 기기에 설치된 앱은 보안 문제를 대비해 Google에 정보가 전달되지 않는 상태로 계속 분석될 수 있습니다.
참고
Google Play 프로텍트를 통해 유해 앱으로부터 기기 보호 - https://support.google.com/android/answer/2812853?p=playprotect_download&hl=ko&visit_id=636894174396600424-3422754862&rd=1
원치 않는 소프트웨어 정책 - https://www.google.com/about/unwanted-software-policy.html
멀웨어 및 원치 않는 소프트웨어 - https://support.google.com/webmasters/answer/3258249#mobile-app-guidelines
'Android' 카테고리의 다른 글
[Unit Test] 유닛 테스트 Component - 1. Annotation (0) | 2021.01.04 |
---|---|
[Unit Test] 유닛 테스트 (0) | 2021.01.04 |
[Android] Web Browser에서 DeepLink로 앱 실행하기 (1) | 2020.12.07 |
[Code Coverage] 안드로이드 멀티모듈 프로젝트에서 Jacoco 설정하기 (0) | 2020.06.21 |
[Android] Unity 에서 Url Action 실행하기 (0) | 2019.04.30 |
- Total
- Today
- Yesterday
- 안드로이드
- button padding
- android compose
- compose ui
- 커스텀 버튼
- 컴포즈 초기화
- 코딩테스트
- Leetcode
- unit test
- android test
- Unit
- 유닛 테스트
- AOS
- Android
- android custom button
- 안드로이드 컴포즈
- 안드로이드 테스트
- 안드로이드 종속성 주입
- 안드로이드 유닛 테스트
- 안드로이드 커스텀 버튼
- 알고리즘
- androud hilt
- 구글
- 테스트
- android unit test
- 알고리즘 풀이
- ViewCompositionStrategy
- 유닛테스트
- 안드로이드 단위 테스트
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |