20 сентября 2017

Приложения для подключенных автомобилей: что с безопасностью?

Угрозы

Идея общаться со своим автомобилем с помощью приложения выглядит очень привлекательной с точки зрения практичности и удобства. На улице мороз? Заведите машину, не вылезая из-под одеяла — к тому времени, как вы выйдете из дома, она уже точно прогреется. Если, наоборот, жарко — заведите двигатель и установите кондиционер на нужную температуру, не вставая с кресла. Можно больше не запоминать, на какой улице вы припарковались, — автомобиль всегда расскажет вам свои текущие GPS-координаты через мобильное приложение.

Звучит заманчиво, поэтому все больше и больше моделей автомобилей поддерживает управление при помощи мобильных приложений. Но вот безопасно ли это? Эксперты «Лаборатории Касперского» провели два этапа исследований, чтобы понять, как обстоят дела именно с этим аспектом – с безопасностью.

Исследуем безопасность приложений для управления автомобилями

Первый этап состоялся в конце 2016 года. На февральской конференции RSA Conference 2017 антивирусные аналитики Михаил Кузин и Виктор Чебышев представили доклад «Мобильные приложения и угон автомобиля«. Эксперты исследовали приложения для Android, с помощью которых можно управлять подключенными автомобилями — открывать двери, запускать двигатель, находить автомобиль на карте, считывать показания приборов и так далее.

В ходе исследования наши эксперты проверили девять мобильных приложений крупнейших автопроизводителей на наличие защиты от трех типичных вариантов атак, которыми активно пользуются вредоносные приложения для Android: получения прав суперпользователя на устройстве (рутование), перекрытия интерфейса приложения поддельным окном и внедрения в приложение для удаленного управления автомобилем вредоносного кода.

Разберем для начала, чем опасны эти атаки.

Потенциальные векторы атаки

Рутование
Чем может быть опасно рутование устройства? В стандартном режиме работы Android все приложения хранят данные — в том числе такие ценные, как логины, пароли и прочая личная информация — в изолированных участках памяти, к которым у других приложений доступа нет.

После рутования этот защитный механизм разрушается: обладая правами root, вредоносное приложение может получить доступ к данным других приложений и украсть оттуда ценные данные.

Многие зловреды этим активно пользуются: порядка 30% наиболее распространенных вредоносных приложений для Android умеет рутовать устройства, используя уязвимости в операционной системе. Кроме того, многие пользователи облегчают заразе работу и сами рутуют свои Android-устройства — советуем не делать этого, если вы не уверены на 100% в том, что сможете сами правильно защитить свой смартфон или планшет.

Перекрытие интерфейса приложения
Этот трюк работает следующим образом: зловред постоянно отслеживает, какие приложения запускает пользователь и в момент запуска знакомой ему программы перекрывает ее окно собственным, идентичным или очень похожим внешне. Срабатывает это моментально, поэтому у пользователя нет возможности заметить, что происходит нечто подозрительное.

Дальше зловред ворует логины, пароли, номера карт и любую другую интересующую злоумышленников информацию, которую пользователь вводит в поддельном окне, думая, что общается с настоящим приложением, которому он может доверять.

Перекрытие интерфейса приложения — это стандартный трюк из арсенала мобильных банковских троянцев. Впрочем, слово «банковские» тут достаточно условно: создатели этих троянцев уже давно не ограничиваются одними только мобильными банками и заодно подделывают окна массы других приложений, в которых пользователи могут вводить номера карт или еще что-нибудь интересное.

Список имитируемых приложений очень велик: разнообразные платежные системы и популярные мессенджеры, программы для покупки авиабилетов и бронирования отелей, магазин Google Play и приложение Android Pay, сервисы для оплаты штрафов и многое другое. Недавно создатели одного из троянов начали «угонять» платежные данные даже из приложений для вызова такси.

Внедрение вредоносного кода
Также злоумышленники могут взять настоящее приложение, разобраться, как оно работает, внедрить в него вредоносный код, сохранив нетронутой функциональность оригинального приложения — и распространять его через Google Play или через какие-то другие каналы (в частности, довольно популярный вариант — с помощью вредоносных рекламных объявлений в системе Google AdSense).

Чтобы предотвратить использование данного трюка, разработчики оригинального приложения должны сделать задачи реверс-инжиниринга созданной ими программы и внедрения в нее вредоносного кода максимально трудоемкими и поэтому экономически невыгодными для потенциальных вредителей. Для этого есть хорошо известные методики, которые, по-хорошему, должны практиковать разработчики всех приложений, работающих с ценными данными пользователя. Но по-хорошему бывает очень редко.

Основная угроза

Используя перечисленные выше способы, вредоносные приложения могут воровать логин и пароль или PIN-код пользователя, а также VIN-код (уникальный идентификационный номер) автомобиля — собственно, это все, что требуется для аутентификации в приложении. Как только преступник получает эти данные, ему остается только установить соответствующее приложение на собственный смартфон.

После этого он сможет разблокировать двери (эта функция есть во всех приложениях) или даже запустить двигатель (встречается реже, но тоже достаточно часто) и угнать автомобиль — или следить за передвижениями владельца авто, если цель в этом.

Угроза уже перешла из теоретической плоскости в практическую. На форумах в даркнете периодические встречаются объявления о покупке и продаже учетных записей для приложений, работающих с подключенными автомобилями. Причем платят за них весьма щедро — гораздо больше, чем за данные краденых кредиток.

Объявления на форуме в «темном интернете» о покупке и продаже краденых учетных записей в приложениях для управления автомобилем

Киберпреступники быстро реагируют на новые возможности заработать, так что появление волны зловредов, атакующих приложения для подключенных автомобилей, — это только вопрос времени.

Первый тайм — 9:0 в пользу зловредов

На момент публикации исследования в феврале 2017 года эксперты проверили девять Android-приложений для управления автомобилями крупнейших автопроизводителей и обнаружили, что ни одно из этих приложений не защищено ни от одной из трех перечисленных угроз.

Еще раз: все девять исследованных приложений были уязвимы для всех самых распространенных атак.

Разумеется, еще до публикации результатов эксперты «Лаборатории Касперского» связались с соответствующими автопроизводителями и рассказали о найденных проблемах.

Второй тайм — 12:1 в пользу зловредов

Всегда интересно посмотреть на то, как события развивались дальше. Поэтому несколько дней назад на Франкфуртском автосалоне Михаил Кузин представил «вторую серию» этого исследования.

Эксперт добавил в список еще четыре новых приложения и проверил их все — то есть в сумме мы исследовали 13 программ. Оказалось, что только одно из этих новых приложений защищено от одного из трех типов атаки: если оно видит, что телефон «рутованный», то оно просто отказывается работать. Однако оно не защищено от двух других атак, а три оставшихся новых приложения уязвимы для всех описанных способов взлома.

Но гораздо хуже другое: повторная проверка показала, что те девять приложений, которые эксперты исследовали ранее, все еще содержат все те же самые уязвимости. За прошедшие месяцы разработчики так ничего и не исправили. Более того, некоторые из этих приложений все это время не получали вообще никаких обновлений.

Увы, автопроизводители, при всех их знаниях и умениях в области разработки автомобилей, пока не обладают достаточным опытом для того, чтобы правильно обеспечивать кибербезопасность.

Они в этом не одиноки. Эта же проблема актуальна для производителей и другой умной электроники, входящей в понятие Internet of Things. Есть, впрочем, разница: в случае взлома какого-нибудь умного тостера ущерб будет не очень велик. В случае автомобиля — это десятки тысяч долларов, а то и угроза человеческой жизни.

Радует, что экспертиза — дело наживное, и не обязательно наступить на все возможные грабли, чтобы ее получить. Мы открыты к сотрудничеству с автопроизводителями и с радостью поможем им избежать подобных проблем в приложениях.

Ну а тем, кто беспокоится, что мобильное приложение на их телефоне может стать точкой входа для злоумышленников, рекомендуем поставить надежное защитное решение на смартфон — оно позволит вовремя обнаружить зловредные приложения, пока они не добрались до важных данных, и нейтрализовать их.