Примечание: я работаю в команде безопасности Ubuntu и помогал в разработке истории ограничения приложений для Ubuntu. Я переписал вопросы для ясности.
В: «Будут ли клики по пакетам безопаснее с точки зрения системы и пользовательских данных, или они будут одинаковыми?»
A: Как правило, пакеты click более безопасны, чем debs, в отношении системных и пользовательских данных.
Пакеты Click не включают в себя сценарии сопровождающего, которые запускаются с правами root при установке, как пакеты deb. Пакеты Click просто распаковываются, а затем используются хуки, предоставляемые системой, если они объявлены щелчком. Например, при щелчке может быть объявлено, что для создания файла рабочего стола используется хук рабочего стола или хук AppArmor для создания профиля AppArmor для приложения. Поскольку в комплектации deb входит концепция сценариев сопровождающего, разработанных для обеспечения обширной настройки программного обеспечения или системы, пакеты deb следует устанавливать только из надежного источника, например, из подписанного архива из дистрибутива, такого как Ubuntu. Пакеты Click могут быть установлены напрямую, и вы можете быть уверены, что установка пакетов не разрушит вашу систему. Тем не менее, это только часть истории - если вы устанавливаете пакет click из ненадежного источника,
Реальная сила щелчка - это когда он используется в сочетании с программным хранилищем с жесткими политиками. Например, безопасность пакета click, установленного из Ubuntu App Store, обычно выше, чем у deb, установленного из доверенного архива. Это связано с тем, что в магазине приложений Ubuntu модель доверия заключается в том, что приложения считаются ненадежными *, а также применяются политики и проверки для обеспечения того, чтобы пакеты щелчков в магазине имели надлежащий манифест безопасности и, следовательно, работали в очень строгом ограничении. В отличие от этого, для пакетов deb в архиве Ubuntu - модель доверия заключается в том, что программное обеспечение и пакет deb считаются доверенными, и, как правило, программное обеспечение не работает в ограниченном пространстве (хотя существует множество исключений, когда профиль AppArmor поставляется с программным обеспечением). для защиты от ошибок безопасности).
- Доверенные пакеты также могут быть доставлены через Ubuntu App Store. Хотя они необычны, они, как правило, разрабатываются компанией Canonical и могут работать в условиях ограниченного пространства
Чтобы ответить на ваши конкретные вопросы:
Q: Основан ли клик на той же системе, что и deb?
A: Низкоуровневый формат пакета для click - это deb. Однако упаковка по щелчку намного проще, поскольку она использует декларативный манифест и хуки, а не традиционные файлы упаковки и сценарии сопровождающего.
В: Может ли AppArmor предоставлять привилегированный доступ к приложениям без взаимодействия с пользователем?
A: AppArmor является сильным пользователем root и может разрешать или запрещать доступ к системным ресурсам (файлам, DBus, сетям и т. Д.) На основе определенной политики безопасности. Пакет click сам по себе не требуется для отправки манифеста безопасности AppArmor или для отправки «безопасного» манифеста безопасности AppArmor. Что делает систему безопасной, так это сочетание кликов и политик магазина, который доставляет клик-пакеты. Пакеты Click, доставленные через Ubuntu App Store, будут использовать политику AppArmor, которая очень ограничена и не допускает привилегированных действий за кулисами (например, приложение, работающее по этой политике, не может выполнять программы в системе за кулисами, получить доступ к вашей учетной записи Facebook , украсть ваши ключи gpg или ssh, манипулировать сетью и т. д.)
Q: Будет ли пользователю предлагаться во время установки предоставить права доступа к приложению, как на Android? (например, «это приложение может сканировать ваш / дома и доступ к сети»)
A: Нет. Сам пакет click может быть установлен без подсказок с использованием низкоуровневых инструментов. В Ubuntu пакеты click должны быть установлены через магазин приложений Ubuntu (см. Выше), а из-за политик магазина приложений Ubuntu в сочетании с возможностями щелчков и системой Ubuntu не требуется проходных, безконтекстных запросов на установку. Ubuntu может сделать это, потому что приложения, установленные из магазина приложений Ubuntu, работают в условиях ограниченного ограничения (то есть они не могут делать плохие вещи за кулисами), и когда приложение нуждается в дополнительном доступе, оно делает это с помощью контролируемых API, которые могут включать подсказки.
В случае привилегированных API у нас есть концепция доверенных помощников, так что у пользователя будет контекстная подсказка, чтобы разрешить или запретить доступ (с (необязательным) отзывным кэшированием, чтобы пользователь не спрашивался каждый раз). Например, если приложению требуется доступ к службе определения местоположения (доверенному помощнику), пользователю будет предложено разрешить доступ в то время, когда приложение пытается использовать службу определения местоположения, что дает контекст, чтобы пользователь мог сделать обоснованное решение. То же самое произойдет для видео и аудио записи. Часто нам вообще не нужно получать запрос безопасности, и мы можем разрешить доступ, основываясь на взаимодействии пользователя с приложением. Например, если приложение хочет загрузить изображение, появится диалоговое окно для выбора изображения. За кулисами, потому что приложение не имеет доступа к каталогу ~ / Pictures, он будет использовать API-концентратор контента, который запустит селектор файлов галереи, чтобы пользователь мог выбрать картинку для загрузки. Затем концентратор контента берет изображение из галереи и передает его приложению. Таким образом, нет диалогового окна безопасности, есть только естественное взаимодействие с пользователем, но за кулисами существует подразумеваемое решение о доверии.
В: В связи с этим вопросом: будут ли .apk и click иметь похожий язык в отношении политик и взаимодействия с пользователем?
A: Нет, нет никаких подсказок при установке по причинам, указанным выше. Разрешения Android и разрешения безопасности для пакетов кликов, определенные для Ubuntu, имеют некоторые сходства, но отличаются и реализуются по-разному.
В: В частности, может ли приложение отправить все мои личные данные по сети без моего ведома, или я каким-то образом ограничусь, чтобы предотвратить это?
A: Если вы устанавливаете клик из ненадежного источника, да, он может делать все что угодно. Если вы устанавливаете щелчок в магазине приложений Ubuntu, нет, приложение не может отправить все ваши данные по сети, потому что оно не имеет к ним доступа. Конечно, может показаться, что приложение выполняет одно, а другое - так, если пользователь предоставляет доступ к сервису определения местоположения или предоставляет приложению доступ к изображению, тогда приложение может быть злым с этими данными, но именно в этом случае оценки / Отзывы и политики безопасности App Store вступают в силу. Если о таком приложении сообщается, оно будет исследовано. При необходимости приложение будет удалено из магазина, оно будет удалено со всех устройств, на которых оно установлено, и доступ разработчика к App Store будет аннулирован.
Q: Можно ли сказать, что пакеты click безопаснее, чем debs, но менее мощны, потому что они более ограничены?
A:Как видно из вышесказанного, ответ не так прост. Один щелчок может доставить программное обеспечение, которое может делать все что угодно. Формат упаковки click является преднамеренно универсальным и может использоваться любым количеством способов и не является специфическим для Ubuntu. Для Ubuntu сочетание Click, API-интерфейсов Ubuntu, политик AppArmor и App Store предоставляет разработчикам очень мощную среду для доставки приложений пользователям безопасным и легким в использовании способом. Полезность самих приложений зависит от API, предлагаемых приложениям базовой системой. Первоначальный набор API-интерфейсов, который будет предлагаться на первых доставочных телефонах Ubuntu, позволит разработчикам создавать всевозможные забавные и полезные приложения, используя богатый API и SDK.