Как защитить автомобиль от взлома — отечественное изобретение — журнал За рулем

Как взламывают автомобили через CAN-шину

Бьюсь об заклад, такого вы еще не видели. Да и я, признаться, тоже. Серийный Ford Focus. Рядом — инженер с ноутбуком. Одно нажатие виртуальной кнопки на ноутбуке — и вдруг грохот, специфический запах сгоревшей селитры и оседающий тальк от взорвавшейся подушки безопасности. Вместо ноутбука может быть смартфон, а вместо Фокуса — ваша машина.

Автомобиль как орудие убийства

В этот раз никто не пострадал. Ведь я нахожусь в одной из лабораторий инжинирингового центра Национального исследовательского ядерного университета МИФИ. И для экспериментов здесь используют не полноценный Ford Focus, а лишь переднюю панель его салона.Молодые программисты утверждают: современные автомобили с CAN-шиной, доступом в интернет и подключением к гаджетам никак не защищены от внешнего воздействия на любую из систем. А это открывает широчайшие возможности для злоумышленников.

К примеру, едет машина в крайней левой полосе и вдруг. самостоятельно поворачивает руль и выскакивает на встречку. Водитель от неожиданности не успевает среагировать, да и пересилить электроусилитель не так-то просто. Авария, катастрофа. Для всех виновник аварии очевиден, но водитель-то ни при чем! Если он вообще останется жив после лобового столкновения.

Угрозы информационной безопасности автомобиля

Конечно, «рулить» извне можно только автомобилем, оснащенным автоматическим парковщиком. Если автопарковщика нет, можно придумать другие изощренные способы — например, дистанционно давить на газ «в пол».

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

На иномарках CAN-шины (англ. controller area network — сеть контроллеров) в бортовой электросети применяются не один десяток лет. Перешли на них и отечественные производители. CAN-шина обеспечивает двухстороннюю связь между всеми электронными блоками и системами машины: по ней передаются команды ко всем исполнителям, а те посылают обратные сигналы, которые прочие системы безоговорочно выполняют. В этом и кроется уязвимость современного автомобиля.

В чужой власти

Злоумышленник подключает «жучок» к проводке машины там, куда легче всего подобраться. Например, к цепи, идущей на фару или указатель поворота. Получив питание, новый блок передает любую команду в общую сеть автомобиля, и адресат (конкретный узел или устройство) ее выполняет. Таким способом можно вывести из-под контроля водителя электронную педаль газа, электроусилитель руля, фары и стеклоочистители (ночью и в дождь их выключения хватит для аварии), дверные замки — вообще всё! Можно устроить ДТП любой степени тяжести, остановить машину, получить доступ в салон, дезориентировать водителя. Принцип активации «жучка» — на выбор преступника: по времени, по координатам, с помощью ­дистанционного управления.

Возможен иной путь — через внешние сети. Мультимедиасистема автомобиля не имеет доступа в интернет? Не проблема! Хакеры будут действовать через ваш подключенный к Глобальной паутине смартфон. Вы же подключили его к головному устройству машины через Bluetooth для общения по громкой связи? Этого достаточно, чтобы он послужил шлюзом для доступа к бортовой мультимедийной системе, а через нее по CAN-шине и ко всей электронике автомобиля. И снова появляется возможность отправить любую разрушительную команду. Аналогичным образом можно использовать модули ЭРА-ГЛОНАСС и навороченные сигнализации.

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

Коробочка с сюрпризом

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

Устройство представляет собой небольшую микросхему размером с корпус ключа зажигания. Ее подключают к CAN-шине и «обучают» — прописывают количество «легальных» блоков, характеристики вредоносных программ и команд. Как только «коробочка» распознáет лишний блок, она идентифицирует его как вирус и заблокирует деятельность вредоносного устройства. Дополнительно установленное оборудование вроде сигнализации и парктроника можно прописать отдельно.

От вмешательства через интернет, мультимедийную систему, модуль ЭРА-ГЛОНАСС или GSM-модуль сигнализации, а также от воздействия «лишних» строк штатной прошивки защищает специальный алгоритм. Он распознаёт постороннюю команду и отменяет ее. Проверил в деле сам: при наличии этой «коробочки» приборная панель Фокуса не реагирует на сторонние действия с подключенного ноутбука.

Разработка способна частично выполнять и противоугонные функции. Если воры попытаются использовать свое электронное оборудование, его работа будет блокирована: «коробочка» воспримет его как несанкционированный блок в конфигурации сети. Но от дистанционного отключения сигнализации умный чип не спасет. Он ведь не знает, откуда пришел сигнал на снятие с охраны — со штатного брелока или с его двойника.

Мифический герой

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

Отсутствие громких заявлений мировых автоконцернов, что именно их машина умеет противостоять хакерам, косвенно свидетельствует о том, что защита требуется всем. И программисты МИФИ готовы дать автомобильному миру средство от вредоносных вирусов. Быть может, хоть на этом поприще мы окажемся впереди планеты всей. Дело за масштабными испытаниями и внедрением. А пока я лелею надежду, что автомобилисты получат эффективные средства защиты от преступников раньше, чем те выйдут на принципиально новый уровень.

Автомобильный справочник

для настоящих любителей техники

Шина CAN в автомобиле

Шина CAN в автомобиле — это сеть контроллеров, предназначенных для обеспечения подключения электронных устройств, которые способны передавать и получать определенную информацию. Такая схема подключения позволила снизить негативное влияние внешних электромагнитных полей и существенно увеличить скорость передачи данных.

Классификация шинных систем автомобиля

Шина CAN была при­знана стандартом с момента своего появления в серийно выпускаемых автомобилях в 1991 году. Но она также часто используется и в автоматизации. Основные особенности:

  • Передача сообщений с ранжированием при­оритетов и неразрушающим арбитражем;
  • Снижение затрат благодаря использо­ванию недорогой витой пары и простого протокола с невысокими требованиями к вычислительной мощности;
  • Скорость передачи данных до 1 Тбит/с у высокоскоростной шины CAN и до 125 Кбит/с у низкоскоростной шины CAN (бо­лее низкие расходы на аппаратную часть);
  • Высокая надежность передачи данных за счет распознавания и сигнализации спора­дических и постоянных неисправностей и благодаря унифицированию сетевых про­цессов через acknowledge;
  • Принцип много абонентской шины;
  • Высокая степень готовности за счет обна­ружения неисправных станций;
  • Стандартизация по ISO 11898.

Система передачи данных по шине CAN

Логические состояния шин и шифрование

Для обмена данными шина CAN использует два состояния «доминантное» и «рецессив­ное», с помощью которых передаются ин­формационные биты. Доминантное состояние соответствует «0», а рецессивное — «1». Для шифрования передачи используется процесс NRZ (без возврата на ноль), в котором нулевое состояние не всегда возвращается в промежу­ток между двумя одинаковыми состояниями передачи и, соответственно, необходимый для синхронизации временной интервал между двумя фронтами может оказаться слишком большим.

В основном используется двухпроводной кабель, в зависимости от окружающих усло­вий, с витой или не витой парой. Две шинные линии называются CAN-H и CAN-L (рис. «Уровень напряжения передачи по CAN» ).

Двухпроводный кабель обеспечивает сим­метричную передачу данных, при которой биты передаются через обе шинные линии с использованием разных напряжений. Это уменьшает чувствительность к синфазным помехам, поскольку помехи влияют на обе линии и могут быть отфильтрованы путем создания разности (рис. «Фильтрация помех по шине CAN» ).

Однопроводный кабель представляет со­бой способ сокращения производственных затрат за счет экономии на втором кабеле. Однако общее подключение к массе, выпол­няющей функцию второго кабеля, должно быть доступно для этой цели всем пользова­телям шины. Поэтому однопроводный вари­ант шины CAN возможен только для системы связи с ограниченным монтажным простран­ством. Передача данных по однопроводному кабелю более чувствительна к излучаемым помехам — он не позволяет фильтровать импульсы помех так, как в двухпроводном кабеле. В результате на шинной линии тре­буется сигнал более высокого уровня. Это, в свою очередь, отрицательно сказывается на излучении помех. Поэтому необходимо снизить крутизну фронта импульсов сигна­лов шины по сравнению с двухпроводным кабелем. Это связано с уменьшением скоро­сти передачи данных. По этой причине одно­проводной кабель используется только для низкоскоростной шины CAN в области кузова и электроники для функций комфорта. На­пример, низкоскоростная шина CAN с двух­проводным кабелем в случае обрыва кабеля должна продолжать работать как однопрово­дная система. Однопроводное решение не описывается в спецификации CAN.

Уровни напряжения шины CAN

Высокоскоростные и низкоскоростные шины CAN используют разные уровни напряжения для передачи доминантных и рецессивных состояний. Уровни напряжения низкоско­ростной шины CAN показаны на рис. а, «Уровень напряжения передачи по CAN», а высокоскоростной — на рис. Ь, «Уровень напряжения передачи по CAN».

Высокоскоростная шина CAN в рецессив­ном состоянии на обеих линиях использует номинальное напряжение 2,5 В. В доминант­ном состоянии на CAN-H и CAN-L подается номинальное напряжение 3,5 В и 1,5 В, со­ответственно. В низкоскоростной шине CAN в рецессивном состоянии на CAN-H подается напряжение 0 В (максимум 0,3 В), на CAN-L — 5 В (минимум 4,7 В). В доминантном состоя­нии на CAN-H напряжение составляет не ме­нее 3,6 В, а на CAN-L не более 1,4 В.

Предельные значения

Для арбитражного метода в случае CAN важно, чтобы все узлы в сети видели биты идентификатора фрейма одновременно, чтобы узел, передавая бит, видел, передают ли их другие узлы. Задержки возникают из-за распространения сигнала в шине данных и обработки в трансивере. Таким образом, максимально допустимая скорость передачи данных зависит от общей длины шины. Стан­дарт ISO предусматривает скорость 1 Мбит/с для 40 м. У более длинных проводов возмож­ная скорость передачи данных примерно об­ратно пропорциональна длине провода. Сети с дальностью 1 км могут работать со скоро­стью 40 кбит/с.

Протокол CAN

Конфигурация шины

CAN работает в соответствии с принципом многорежимного управления, при котором линейная структура шины подсоединяет не­сколько блоков управления равного приори­тета ранжирования.

Адресация по содержанию CAN использует адресацию по содержанию сообщений. Каждому сообщению присваива­ется метка-идентификатор, который класси­фицирует содержание сообщения (например, о частоте вращения коленчатого вала двига­теля). В каждой станции ведется обработка только тех сообщений, чьи идентификаторы накапливаются в приемочном списке сообщений. Это называется приемочной провер­кой (рис. «Адресация и проверка приемки» ). Таким образом, CAN не требует адресов станции для передачи данных. Это облегчает адаптацию к различным уровням оборудования.

Логические состояния шины CAN

Протокол CAN основывается на двух логиче­ских состояниях: биты информации являются или «рецессивными» (логическое состояние 1), или «доминантными» (логическое со­стояние 0). Когда, по крайней мере, одной из станций передается доминантный бит, тогда перезаписываются рецессивные биты, одновременно посылаемые ото всех других станций.

Назначение приоритетов

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

Арбитраж шины CAN

Каждая станция может начать передачу со­общения только после освобождения шины. Когда несколько станций начинают переда­вать сообщения одновременно, для разреше­ния создаваемых конфликтов доступа к шине используется арбитраж «wired-and» (монтаж­ное И). Сообщению с высшим приоритетом (наименьшим двоичным значением иденти­фикатора) присваивается право первого до­ступа, без задержек и потерь битов (рис. «Побитовый арбитраж» ). Передатчики реагируют на невозможность получения доступа к шине путем автомати­ческого переключения в режим приема; за­тем ими повторяется попытка передачи, как только шина снова освобождается.

Фрейм данных и формат сообщения Шина CAN поддерживает два разных фор­мата сообщений, различающихся только длиной идентификаторов. Стандартный формат включает 11 битов, в то время как расширенная версия состоит из 29 битов. Таким образом, рамка передачи данных со­держит максимум 130 битов стандартного или 150 битов расширенного формата. Это обеспечивает минимальное время ожидания до последующей передачи, которая может быть срочной. Фрейм данных состоит из семи последо­вательных полей (рис. «Фрейм данных» ). «Начало фрейма» показывает начало сообщения и синхронизирует все узлы.

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

Поле «контроля» содержит код, показываю­щий количество байтов данных в поле «данных».

Поле «данных» содержит от 0 до 8 байтов. Сообщение длиной 0 данных может быть ис­пользовано для синхронизации распредели­тельных процессов.

Поле «CRC» (периодический резервный контроль) содержит контрольную сумму для обнаружения возможных помех при пере­даче.

Поле «АСК» (уведомление) содержит сигналы подтверждения, с помощью которых получа­тели подтверждают доставку сообщений.

«Конец фрейма» обозначает конец со­общения.

Затем идет «межфреймовый промежу­ток», отделяющий фрейм от следующего фрейма.

Инициация передатчика

Передатчик обычно инициирует передачу данных посредством отправки фрейма дан­ных. Однако приемник также может запро­сить данные от передатчика, отправив дис­танционный фрейм. Этот дистанционный фрейм имеет тот же идентификатор, что и со­ответствующий фрейм данных. Они различа­ются битом, стоящим после идентификатора.

Обнаружение ошибок

Контролирующими отличительными призна­ками ошибок являются:

  • 15-битовый CRC: (каждый приемник срав­нивает получаемую им последователь­ность CRC с вычисляемой последовательностью);
  • Контроль: каждый передатчик считывает с шины собственное переданное сообщение и сравнивает каждый переданный и отска­нированный бит;
  • Заполнение битами: (между началом фрейма и концом поля CRC каждого фрейма данных или дистанционного фрейма могут находиться максимум пять последовательных битов одной полярно­сти); передатчик реализует пять последовательных битов одной полярности путем вставки в поток битов бита противополож­ной полярности. После доставки сообще­ний получатели снова удаляют эти биты;
  • Проверка фреймов: (протокол CAN со­держит несколько битовых полей со сме­шанным форматом для проверки всех станций).

Обработка ошибок

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

Локализация неисправностей

Так как неисправные станции могут значи­тельно ухудшать нагрузочный режим шины, бортовые контроллеры связи могут включать механизмы, которые позволяют различать промежуточную и постоянную ошибки из-за неисправности местной станции. Этот про­цесс базируется на статистической оценке условий возникновения ошибок.

Варианты исполнения

Изготовители полупроводников предлагают различные варианты исполнения контрол­леров CAN, различающиеся в основном воз­можностями хранения и обработки сообще­ний. Таким образом, главный компьютер может быть освобожден от операций, свя­занных с протоколом.

Стандартизация

Шина CAN стандартизирована для обмена данными в автомобилях; для низкоскорост­ной передачи (до 125 кбит/с) — ISO 11898-3, для высокоскоростной передачи (более 125 кбит/с) — ISO 11898-2 и SAE J 1939 (грузовики и автобусы).

CAN с таймерным управлением

Расширенный протокол CAN с возможностью работы в режиме таймерного управления на­зывается «CAN с таймерным управлением» (TTCAN). В нем можно произвольно выбрать соотношение компонентов с таймерным управлением и компонентов с управлением событиями, поэтому он полностью совме­стим с сетями CAN. TTCAN стандартизируется в ISO 11898-4.

РЕКОМЕНДУЮ ЕЩЁ ПОЧИТАТЬ:

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

Главы

  • Энциклопедия техники (19)
  • История автомобилестроения (20)
  • Полезные советы (3)
  • Действующие единицы (1)
  • Законы физики в автомобиле (15)
  • Математическое моделирование в автомобилестроении (3)
  • Материалы в автомобилестроении (10)
  • Рабочие жидкости (5)
  • Детали машин (6)
  • Способы соединения деталей (8)
  • Физика автомобиля (10)
  • Двигатели внутреннего сгорания (23)
  • Диагностика двигателя (8)
  • Нормы контроля и диагностики токсичности отработавших газов (17)
  • Системы управления бензиновыми двигателями (11)
  • Работа двигателя на альтернативных видах топлива (2)
  • Системы управления дизельными двигателями (9)
  • Альтернативные виды приводов (3)
  • Трансмиссия (47)
  • Системы шасси (18)
  • Управление шасси и активная безопасность (6)
  • Автомобильные кузова (10)
  • Пассивная безопасность автомобиля (1)
  • Системы охраны автомобилей (1)
  • Охранные автомобильные системы (1)
  • Автомобильное электрооборудование (10)
  • Свечи зажигания (6)
  • Автомобильная электроника (21)
  • Системы комфорта и удобства (2)
  • Пользовательские интерфейсы (3)
  • Системы повышения безопасности дорожного движения (7)

О справочнике

За последние время автомобилестроение превратилось в чрезвычайно сложную отрасль. Все труднее и труднее становится представить всю отрасль в целом, и еще сложнее постоянно следить за направлениями, которые важны для автомобилестроения. Многие из этих направлений подробно описаны в специальной литературе. Тем не менее, для тех, кто впервые сталкивается с данными темами, имеющаяся специальная литература не представляется легкой и тяжело усваивается в ограниченные сроки. В этой связи этот «Автомобильный справочник» будет очень кстати. Он структурирован таким образом, чтобы быть понятным даже для тех читателей, которые впервые встречаются с каким-либо разделом. Наиболее важные темы, относящиеся к автомобилестроению, собраны в компактном, простом для понимания и удобном с практической точки зрения виде.

Источник http://www.zr.ru/content/articles/912117-antivirus-dlya-avtomobilya/
Источник Источник Источник Источник http://press.ocenin.ru/shiny-can-v-avtomobilyah/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *