...

вторник, 25 мая 2021 г.

Программные патчи для автомобилей станут обязательными и регулярными


Автомобиль Tesla Model 3 взломали с мультикоптера (для зрелищности), источник

Автомобили Tesla по умолчанию подключаются к любой точке WiFi с идентификатором SSID Tesla Service. Это очень удобно для взлома. Пароль указан в файле .ssq, который поставляется с автомобилем, или его можно найти в интернете (см. скриншот под катом).

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

Проблема в том, что критические уязвимости есть не только в теслах, а практически во всех современных автомобилях. Просто Tesla предлагает большие призы за информацию о багах, поэтому эта информация публикуется в СМИ. Остальные автомобили взламывают молча.



Профиль в твиттере с паролем для вайфая Tesla Service

Последнюю хакерскую конференцию PWN2OWN 2020 отменили, поэтому авторы только сейчас опубликовали свой доклад по взлому Tesla. Они написали эксплоит Comsecuris, использующий две уязвимости в демоне ConnMan. Это стандартный менеджер подключений Linux. В частности, используется переполнение буфера в DNS-форвардере и утечка информации стека (stack infoleak) в компоненте DHCP.

В автомобиле Tesla 3 установлена последняя версия ConnMan 1.37, без уязвимости CVE-2017-12865, которую нашли в версии 1.34. Поэтому пришлось искать новые баги. Здесь повезло: возможность переполнения буфера обнаружилась в функции uncompress().

1 static char *uncompress(int16_t field_count, char *start, char *end,
2                       char *ptr, char *uncompressed, int uncomp_len,
3                       char **uncompressed_ptr)
4 {
5       char *uptr = *uncompressed_ptr; /* position in result buffer */
6
7       debug("count %d ptr %p end %p uptr %p", field_count, ptr, end, uptr);
8
9       while (field_count-- > 0 && ptr < end) {
10              int dlen; /* data field length */
11               int ulen; /* uncompress length */
12               int pos; /* position in compressed string */
13               char name[NS_MAXLABEL]; /* tmp label */
14               uint16_t dns_type, dns_class;
15               int comp_pos;
16
17               if (!convert_label(start, end, ptr, name, NS_MAXLABEL,
18               &pos, &comp_pos))
19               goto out;
20
21              /*
22               * Copy the uncompressed resource record, type, class and \0 to
23               * tmp buffer.
24               */
25
26               ulen = strlen(name);
27               strncpy(uptr, name, uncomp_len - (uptr - uncompressed));
28
29               debug("pos %d ulen %d left %d name %s", pos, ulen,
30               (int)(uncomp_len - (uptr - uncompressed)), uptr);
31
32               uptr += ulen;
33               *uptr++ = '\0';
34
35               ptr += pos;
36
37              /*
38               * We copy also the fixed portion of the result (type, class,
39               * ttl, address length and the address)
40               */
41               memcpy(uptr, ptr, NS_RRFIXEDSZ);
42
43               dns_type = uptr[0] << 8 | uptr[1];
44               dns_class = uptr[2] << 8 | uptr[3];
45
46               if (dns_class != ns_c_in)
47               goto out;
48
49               ptr += NS_RRFIXEDSZ;
50               uptr += NS_RRFIXEDSZ;

В строках 27 и 41 функция memcpy копирует в буфер uptr содержимое памяти фиксированным размером 10 байт (NS_RRFIXEDSZ), не проверяя соответствие размера выходного буфера количеству копируемых байт.

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

В нашем случае достаточно отключить файрвол — и отправить на компьютер нужные команды. Конечно, управление автомобилем через мультимедийную систему не получишь, но можно отпереть двери, изменить режим ускорения, рулевого управления и другие функции, доступные с панели компьютерного управления под Linux (раньше там стояла Ubuntu).


Автомобили Tesla обладают продвинутой компьютерной системой, а компания платит очень большие деньги (в районе $300 000) за сообщение о таких уязвимостей. На самом деле хакеры успешно взламывают автомобили и других производителей, просто об этом не всегда сообщают широкой публике.

Компания Upstream Security ежегодно публикует отчёт об автомобильных уязвимостях. Последний отчёт 2021 Global Automotive Cybersecurity Report содержит информацию о более 200 инцидентах безопасности с 2010 по 2020 годы.

Вот статистика по векторам атак за эти годы:

Дистанционные взломы сегодня составляют 80% атак, физическое проникновение — 20%. Облачные сервисы — главный вектор.

В июне 2020 года ООН приняла общий регламент безопасности для транспорта: UNECE WP.29 Cybersecurity. В 2021-2022 годы эти регуляции будут рассмотрены в нескольких странах, а в 2023-2024 годах ожидается более широкое принятие по всему миру. Первый регламент называется Cybersecurity and Cybersecurity Management Systems (CSMS). Последнюю версию см. здесь.

Документ CSMS содержит информацию об угрозах кибербезопасности и перечисляет большое количество уязвимостей и методов атаки. В приложении 5 — десять страниц с описанием уязвимостей в нескольких категориях. В первой таблице кратко перечислены шесть типов угроз с различными типами уязвимостей (перечислено 29 штук) и примерами (67 штук).

В следующей таблице обобщены меры по смягчению угроз кибербезопасности внутри и за пределами автомобиля.

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

Облачные сервисы, бесконтактные ключи по радиопротоколу, порт OBDII, мобильные приложения для управления автомобилем, порты USB и SD, Bluetooth, Wi-Fi, встроенный модем, сенсоры, многочисленные соединения через телематические системы и облачные сервисы, которые работают в автомобиле, встроенная мультимедийная система с компьютером в салоне. Это слишком большая поверхность атаки…

Вероятно, в будущем такие «удобства» войдут в стандартное оснащение всех автомобилей.


P. S. Компания GlobalSign уже 25 лет выдаёт сертификаты безопасности для различных отраслей. Посмотрите нашу интерактивную страничку, посвященную 25-летнему юбилею.

Adblock test (Why?)

Комментариев нет:

Отправить комментарий