안드로이드 다중 사용자 보안 평가
초록
안드로이드의 다중 사용자 기능을 체계적으로 분석하여 접근 제어 누락·오류를 찾아냈으며, 이로 인한 잠재적 공격 시나리오와 실제 실험 결과를 제시한다. 현재 구현은 일부 위협만 완화하고 있어 개인 정보 유출·권한 상승 위험이 남아 있다.
상세 분석
본 논문은 안드로이드 4.2 이후 도입된 다중 사용자 프레임워크를 보안 관점에서 전면 재검토한다. 먼저 시스템 전반에 걸친 권한 매핑을 추적하고, 사용자·앱·시스템 리소스 간의 주체·객체 관계를 명시적으로 정의하지 않은 지점을 식별한다. 특히 UID 기반 격리 메커니즘이 프로세스 간 공유 메모리와 ContentProvider 호출에서 일관되지 않아, 악의적인 사용자가 다른 사용자의 데이터베이스 파일에 직접 접근하거나, 브로드캐스트 인텐트를 가로채어 권한을 상승시킬 수 있음을 발견했다. 또한, 패키지 매니저가 다중 사용자 환경에서 앱 설치·삭제 시 권한 정보를 전파하지 않아, 한 사용자가 설치한 앱이 다른 사용자의 프로필에 남아 남용될 가능성을 제시한다. 파일 시스템 레벨에서는 /data/user/0 과 /data/user/10 등 사용자 별 디렉터리 구조가 존재하지만, 일부 시스템 서비스가 절대 경로를 하드코딩해 경로 검증을 우회함으로써 권한 없는 파일 접근이 가능했다. 이러한 설계 결함은 “권한 위임”과 “공유 리소스” 두 축에서 집중적으로 나타났으며, 특히 공유된 외부 저장소(External Storage)와 MediaStore 데이터베이스가 사용자 구분 없이 동일하게 노출돼 프라이버시 침해 위험이 크다. 논문은 이러한 문제들을 “주체‑객체 식별 부재”, “권한 전파 누락”, “공유 리소스 과다 노출”로 분류하고, 각각에 대해 가설 기반 공격 시나리오를 수립했다. 실험에서는 악성 앱을 단일 사용자 프로필에 설치한 뒤, 다른 프로필의 사진·연락처 데이터에 무단 접근하거나, 시스템 설정을 변경하는 등 7가지 주요 취약점을 재현했으며, 일부는 루트 권한 없이도 성공했다. 결과적으로 현재 안드로이드 다중 사용자 구현은 설계 단계에서의 접근 제어 원칙 적용이 미흡하며, 전반적인 보안 모델을 재정비해야 함을 강조한다.
댓글 및 학술 토론
Loading comments...
의견 남기기