성장기록지
android:exported 는 무엇일까? 본문
android:exported란?
공식문서에는 다음과 같이 적혀져 있다.
다른 애플리케이션에서 안드로이드 컴포넌트(액티비티, 서비스, 브로드캐스트 리시버)를 실행할 수 있는지에 대한 설정을 하는 역할을 한다.
- true인 경우, 모든 앱이 활동에 액세스 할 수 있으며, 정확한 클래스 이름으로 시작할 수 있다.
- false인 경우, 동일한 애플리케이션, 동일한 사용자 ID를 가진 애플리케이션, 권한이 있는 시스템 구성요소에 의해서만 접근이 가능하다.
true로 하였을때의 위험성
exported가 true로 되어있는건 취약한 activity로 외부에서 공격이 가능하다는 것이다.
실제로 예시로 액티비티를 실행시키는 과정을 블로그에서 보여준다.
따라서 android:exported = true 로 하게 될 경우는 아래와 같은 보안처리가 필요하다고 한다.
언제 true로 설정을 하게 되는가
컴포넌트에 LAUNCHER 인텐트 필터가 포함되어 있는 경우, true로 반드시 설정해주어야 한다.
아래와 같이 앱이 켜질떄 접근하는 intent filter에서 자주 적용된다.
LAUNCHER는 안드로이드 os 환경에서 홈화면에 인터페이스를 관리하는 하나의 앱이다.
런처(Activity가 실행되는 Home Screen 앱)도 앱 외부에서 해당 액티비티를 실행하는 주체이므로
exported가 true로 되어야한다.
https://reco-dy.tistory.com/23
[Android] android:exported는 무엇일까?
최근 면접을 보면서 최신 기술에 대해 공부하기 급급한 나머지, 안드로이드의 기본적인 지식을 놓치고 있다는 것을 알게 되어 이참에 다시 공부해보고자 합니다. manifest에 입력하는 exported가 어
reco-dy.tistory.com
https://developer.android.com/privacy-and-security/risks/android-exported
android:exported | Security | Android Developers
android:exported 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. OWASP 카테고리: MASVS-PLATFORM: 플랫폼 상호작용 개요 android:exported 속성은 다른 애플리케이션의 구
developer.android.com
https://gomguk.tistory.com/168
[안드로이드 모의해킹] Activity 강제 실행 취약점
직접 연구하여 작성한 자료입니다. 공식 출처가 명시되지 않은 자료의 무단 복제, 사용을 금지합니다. 공격 기법은 학습용, 허가된 환경에서 실습 바랍니다. 실 운영망 대상 공격은 처벌받습니
gomguk.tistory.com
'안드로이드' 카테고리의 다른 글
안드로이드 네트워크 상태 관리 (네트워크 체커) (0) | 2025.02.18 |
---|---|
Glide에 대해 알아보기 - 기본 사용법, 다운 샘플링, Target (0) | 2025.02.11 |
DiffUtil 알아보기 (0) | 2025.01.30 |
StateFlow 개념과 사용 이유 (1) | 2025.01.26 |
Kotlin Flow란? (0) | 2025.01.24 |