참고 : Ubuntu 보안 팀에서 일하면서 Ubuntu의 응용 프로그램 제한 이야기를 디자인하는 데 도움을주었습니다. 나는 명확성을 위해 질문을 다시 한 번 말했다.
Q : "클릭 패키지가 시스템 및 사용자 데이터와 관련하여 더 안전합니까, 아니면 동일합니까?"
A : 일반적으로 클릭 패키지는 시스템 및 사용자 데이터와 관련하여 뎁보다 안전합니다.
클릭 패키지에는 deb 패키지와 같이 설치시 루트로 실행되는 관리자 스크립트가 포함되어 있지 않습니다. 클릭 패키지는 포장을 풀고 클릭으로 선언하면 시스템에서 제공 한 후크가 사용됩니다. 예를 들어 클릭은 데스크톱 후크를 사용하여 데스크톱 파일을 생성하거나 AppArmor 후크를 사용하여 앱의 AppArmor 프로파일을 생성하도록 선언 할 수 있습니다. deb 패키징에는 소프트웨어 또는 시스템을 광범위하게 사용자 정의 할 수 있도록 설계된 관리자 스크립트 개념이 있으므로 deb 패키지는 신뢰할 수있는 소스 (예 : Ubuntu와 같은 배포판의 서명 된 아카이브)에서만 설치해야합니다. 클릭 패키지가 직접 설치 될 수 있으며 패키지 설치로 인해 시스템이 손상되지 않을 수 있습니다. 그러나 이것은 이야기의 일부일뿐입니다. 신뢰할 수없는 출처에서 클릭 패키지를 설치하면,
클릭의 진정한 힘은 강력한 정책을 가진 소프트웨어 리포지토리와 함께 사용될 때입니다. 예를 들어, Ubuntu App Store에서 설치된 클릭 패키지의 보안은 일반적으로 신뢰할 수있는 아카이브에서 설치된 deb의 보안보다 높습니다. Ubuntu App Store에서 트러스트 모델은 앱이 신뢰할 수없는 것으로 간주되고 * 스토어의 클릭 패키지가 적절한 보안 매니페스트를 갖도록 엄격한 정책 하에서 실행되도록 정책 및 검사가 이루어지기 때문입니다. Ubuntu 아카이브에서 패키지를 토론하는 것과는 대조적으로-신뢰 모델은 소프트웨어 및 deb 패키징이 신뢰할 수있는 것으로 간주되며 일반적으로 소프트웨어가 제한에 따라 실행되지 않습니다 (AppArmor 프로파일이 소프트웨어와 함께 제공되는 경우는 예외가 많음) 보안 버그로부터 보호하기 위해).
- 신뢰할 수있는 패키지는 Ubuntu App Store를 통해 제공 될 수도 있습니다. 흔하지는 않지만 일반적으로 Canonical에서 개발 한 것이며 제한에 따라 실행되거나 실행되지 않을 수 있습니다.
특정 질문에 대답하려면 다음을 수행하십시오.
Q : 클릭은 deb와 동일한 시스템을 기반으로합니까?
A : 클릭에 대한 저수준 패키지 형식은 deb입니다. 그러나 클릭 패키징은 기존 패키징 파일 및 유지 관리 스크립트 대신 선언적 매니페스트 및 후크를 사용한다는 점에서 훨씬 간단합니다.
Q : AppArmor는 사용자 개입없이 앱에 대한 특권 액세스를 제공 할 수 있습니까?
A : AppArmor는 근본적으로 강력하며 정의 된 보안 정책에 따라 시스템 리소스 (파일, DBus, 네트워킹 등)에 대한 액세스를 허용하거나 거부 할 수 있습니다. 클릭 패키지 자체는 AppArmor 보안 매니페스트를 배송하거나 '안전한'AppArmor 보안 매니페스트를 배송 할 필요가 없습니다. 시스템을 안전하게 만드는 것은 클릭 패키지를 제공하는 상점 정책과 클릭의 조합입니다. Ubuntu App Store를 통해 제공되는 클릭 패키지는 매우 제한적이고 장면 뒤에서 권한있는 작업을 허용하지 않는 AppArmor 정책을 사용합니다 (예 :이 정책으로 실행되는 앱은 시스템 뒤에서 시스템에서 프로그램을 실행할 수없고 페이스 북 계정에 액세스 할 수 없음) , gpg 또는 ssh 키를 훔치거나 네트워킹 조작 등)
Q : 설치시 Android와 같이 앱에 대한 액세스 권한을 부여하라는 메시지가 표시됩니까? (예 : "이 앱은 / home을 스캔하고 네트워크에 액세스 할 수 있습니다")
A : 아니요. 클릭 패키지 자체는 저수준 도구를 사용하여 프롬프트없이 설치할 수 있습니다. Ubuntu에서 클릭 패키지는 Ubuntu 앱 스토어를 통해 설치해야하며 (위 참조) 클릭 기능 및 Ubuntu 시스템과 결합 된 Ubuntu 앱 스토어 정책으로 인해 클릭 연결, 컨텍스트없는 설치 프롬프트가 필요하지 않습니다. Ubuntu 앱 스토어에서 설치된 앱은 제한적 제한 (즉, 배후에서 나쁜 일을 할 수 없음) 하에서 실행되기 때문에 앱에 추가 액세스가 필요한 경우 프롬프트가 포함 된 제어 된 API를 사용하므로이 작업을 수행 할 수 있습니다.
권한이있는 API의 경우, 신뢰할 수있는 도우미 개념을 통해 사용자에게 액세스를 허용하거나 거부 할 수있는 상황에 맞는 프롬프트 (선택적인 회전 가능 캐싱 포함)를 제공하므로 매번 사용자에게 요청하지 않습니다. 예를 들어 앱이 위치 서비스 (신뢰할 수있는 도우미)에 액세스해야하는 경우 앱에서 위치 서비스를 사용하려고 할 때 액세스를 허용하라는 메시지가 표시됩니다. 알려진 결정. 비디오 및 오디오 녹음에서도 마찬가지입니다. 종종 보안 프롬프트가 필요하지 않으며 앱과의 사용자 중심 상호 작용을 기반으로 액세스를 허용 할 수 있습니다. 예를 들어 앱에서 사진을 업로드하려는 경우 사진을 선택하는 대화 상자가 있습니다. 앱 뒤에서 ~ / Pictures 디렉토리에 액세스 할 수 없기 때문에 content-hub API를 사용하여 사용자가 업로드 할 사진을 선택할 수 있도록 갤러리 파일 선택기를 시작합니다. 그런 다음 content-hub는 갤러리에서 사진을 가져 와서 앱에 제공합니다. 이러한 방식으로, 보안 대화가없고, 사용자를위한 자연스러운 상호 작용 만이 있지만, 배후에는 신뢰 결정이 내재되어 있습니다.
Q :이 질문과 관련하여 : .apk 및 click은 정책 및 사용자 경험과 관련하여 유사한 언어를 사용합니까?
A : 아니요. 위에서 언급 한 이유로 설치 프롬프트가 표시되지 않습니다. 우분투에 대해 정의 된 클릭 패키지에 대한 Android 권한 및 보안 권한은 유사하지만 서로 다르고 다르게 구현됩니다.
Q : 구체적으로 클릭하면 앱이 내 개인 정보를 네트워크를 통해 전송할 수 있습니까?
A : 신뢰할 수없는 출처에서 클릭을 설치하면 무엇이든 할 수 있습니다. Ubuntu App Store에서 클릭을 설치하면 아니요, 앱은 액세스 할 수 없기 때문에 네트워크를 통해 모든 데이터를 전송할 수 없습니다. 물론 앱이 한 작업을 수행하고 다른 작업을 수행하는 것처럼 보일 수 있으므로 사용자가 위치 서비스에 대한 액세스 권한을 부여하거나 앱에 사진에 대한 액세스 권한을 부여하면 앱이 해당 데이터로 인해 악의적 일 수 있습니다. / 리뷰 및 App Store 보안 정책이 적용됩니다. 이와 같은 앱이보고되면 조사됩니다. 필요한 경우 앱이 스토어에서 제거되고 앱이 설치된 모든 디바이스에서 앱이 제거되고 개발자의 앱 스토어 액세스가 취소됩니다.
Q : 클릭 패키지는 뎁보다 안전하지만 더 제한적이므로 덜 강력하다고 말할 수 있습니까?
에이:위에서 볼 수 있듯이 대답은 그렇게 간단하지 않습니다. 클릭 자체로 모든 작업을 수행 할 수있는 소프트웨어가 제공 될 수 있습니다. 클릭 패키징 형식은 의도적으로 범용이며 여러 방법으로 사용할 수 있으며 우분투에만 국한되지는 않습니다. Ubuntu의 경우 클릭, Ubuntu API, AppArmor 및 App Store 정책의 조합은 개발자가 사람들이 안전하고 사용하기 쉬운 방식으로 응용 프로그램을 사용자에게 제공 할 수있는 매우 강력한 환경을 제공합니다. 응용 프로그램 자체의 유틸리티는 기본 시스템에서 응용 프로그램에 제공하는 API에 따라 다릅니다. 우분투 최초의 휴대 전화에서 제공 될 초기 API 세트를 통해 개발자는 풍부한 API 및 SDK를 사용하여 모든 종류의 재미 있고 유용한 애플리케이션을 만들 수 있습니다.