Буфер обмена в Android обходят: защита от чтения не работает
Ctrl+C, Ctrl+v, Ctrl+cve: Bypassing Android's Clipboard Read Security Measures
Исследователь разобрал, как обойти механизмы Android, защищающие буфер обмена от чтения фоновыми приложениями, и опубликовал разбор. В обсуждении на Hacker News спорят, что сам буфер обмена — наследие прошлого: он позволяет мгновенно передать любые данные любому слушающему процессу, включая пароли и личную информацию. Разработчики жалуются, что ограничения Android 10 сломали легитимные приложения, а контроля над доступом к буферу по-прежнему нет.
Если бы буфера обмена не существовало и его изобрели сегодня, он никогда не прошёл бы проверку на приватность и безопасность ни в одной крупной компании.
- iloveyoutwo
В GrapheneOS недавно появилась безопасная вставка: https://grapheneos.org/features#secure-paste
- vintagedave
Я не пользуюсь Android, так что не уверен, что именно вижу во встроенном видео. Дело в том, что вверху экрана должно быть уведомление, но его нет? Мне показалось, что в статье говорилось, будто используются два разных уведомления, которые скрывают системное, но я вообще не вижу ни одного.
- seszett
Меня всегда раздражало отсутствие контроля над тем, могут ли приложения просматривать буфер обмена или нет.
Приложение bpost (бельгийская национальная почта) сразу читает буфер обмена при открытии, и я ненавижу такое поведение всей душой. При этом оно закатывает истерику, если обнаружит разблокированный загрузчик, root-доступ, «подозрительные» приложения или что угодно ещё.
В итоге я запер его на устаревшем телефоне со стоковой ОС вместе с банковскими и идентификационными приложениями, без которых не обойтись. Отвлёкся, но изначальной причиной моего раздражения действительно было отсутствие контроля над моим буфером обмена, которое я заметил благодаря тому маленькому уведомлению.
- chinhodado
Давным-давно я написал приложение-словарь для собственного использования, которое показывало определение слова при копировании его в буфер обмена (например, из приложения для чтения электронных книг). Приложение-словарь работало в фоне и показывало всплывающее окно только по событию буфера обмена.
Потом примерно в Android 10 они ужесточили безопасность и решили, что фоновые приложения больше не могут получать события буфера обмена. С точки зрения безопасности это логично, но это полностью сломало моё приложение-словарь. Хотелось бы, чтобы у разработчика был способ обойти это с помощью собственного приложения.
- streetfighter64
Я считаю, что разрешать любой программе читать буфер обмена — огромная ошибка. Должно работать так: буфер обмена полностью защищён ОС, и единственный момент, когда приложение может увидеть его содержимое, — это когда оно получает его в событии Ctrl+V, инициированном пользователем. Я почти уверен, что большинство пользователей, даже нетехнических, ожидают именно такого поведения.