2017-01-10 1 views
0

권한이 Linux 커널의 그룹 ID에 매핑되어 있기 때문에 Android 권한이 DAC 메커니즘의 일종이라고 생각합니다. SEAndroid는 MAC 메커니즘입니다. 그리고 MAC 검사는 DAC 검사 후에 수행됩니다.SEAndroid 정책과 Android 권한 사이의 관계는 무엇입니까?

그러나 나는 그들 사이의 관계를 이해하지 못합니다. 앱에서 한 가지 조치를 확인하기 위해 협력하는 방법을 허용 또는 거부해야합니까?

그리고 CHECK 액션이 소스 코드 (권한 검사 및 SEAndroid 정책 검사)에서 어떻게 구현되었는지 알고 싶습니다. 하지만 Android 및 Linux 커널에서 관련 소스 코드를 찾을 수 없습니다. 고급 종이 보안에

은 (SE) 안드로이드는 안드로이드에 유연한 MAC을 현실로, 기존의 세 번째 파티 앱

이 응용 프로그램의 설치가 중단되고, 설치다고 경우 정책 요청 된 권한 중 하나를 거부합니다.

또한 소스 코드에서 세부 구현을 알고 싶습니다. 그러나 나는 그것이 어디에 있는지 모른다.

Android 및 Linux에 익숙한 사람이 있습니까? 커널이 나를 도와 줄 수 있습니까?

답변

0

Android 권한을 참조 할 때 Android System Permissions (READ_LOGS, READ_HISTORY_BOOKMARKS, WRITE_HISTORY_BOOKMARKS 등)을 참조한다고 가정합니다.

MMAC (및 시스템 권한 적용)에 대한 모든 SEAndroid 지원이 중단되었으며 모든 소스 코드가 AOSP에서 제거되었습니다. 자세한 내용은 answer을 참조하십시오.

SEAndroid MAC 메커니즘은 Android 스택의 가장 깊은 계층에서 구현되며 가장 기본적인 작업 (예 : 읽기/쓰기 파일, 열기/닫기 소켓, 바인드 등)에 대한 액세스 제어를 제공합니다. 이는 LSM (Linux Security Modules) 훅을 커널에 배치함으로써 가능합니다. 이것은 SEAndroid MAC 모듈을 매우 강하게 만듭니다.

반면에 Android 사용 권한 시스템은 실제로 높은 수준 인 "JAVA API level framework"과 PackageManager, ServiceManager, ActivityManager 등의 구성 요소로 구현됩니다. SEAndroid가 상위 수준 구성 요소의 적용을 처리하도록 허용하는 것이 중요합니다. 이것은 내 개인적인 견해 일뿐입니다).

관련 문제