Представьте, что вы ведете машину. Это новая модель, которую вы только что купили, и пока она вам очень нравится. Вы едете по автостраде, в салоне играет ваша любимая музыка, кондиционер работает как надо. Вдруг стереосистема выключается. Странно, думаете вы. Неужели вы нажали на какую-то кнопку? Затем кондиционер перестает работать, а из вентиляционных отверстий начинает идти горячий воздух. Что здесь происходит? Пока вы пытаетесь разобраться, тормоза внезапно срабатывают с полной силой. Машина сзади сумасшедшим образом гудит, едва избегая столкновения. В ужасе вы изо всех сил пытаетесь свернуть на обочину. Несмотря на ваши тщетные попытки разобраться, ничто не объясняет откровенного мятежа вашего автомобиля. Для автопроизводителя это пиар-катастрофа.
Эта нервозная ситуация может показаться надуманной, но группа компьютерных хакеров показала, что это вполне возможно. Как документировано журналом Wired, практически все ключевые системы поздней модели Jeep Cherokee могли контролироваться удаленно. Уязвимость в системе “UConnect” SUV, используемой во всем модельном ряду Fiat Chrysler Automobiles, позволяла проводить атаки через интернет с использованием встроенного сотового соединения. Поскольку почти все функции Cherokee контролируются электронно, это превратило двухтонный автомобиль в усовершенствованную игрушку с дистанционным управлением. Как только Fiat Chrysler узнал о хакерском эксперименте, компанию вынудили отозвать 1.4 миллиона аналогично оснащенных автомобилей, что обошлось в крупную сумму. Однако весь этот переполох мог быть легко разрешен с помощью обновлений по воздуху.
Благодаря ускоряющемуся темпу компьютеризации систем автомобилей, обновление и защита управляющего программного обеспечения становятся новой ответственностью для автопроизводителей. Подключение по воздуху означает, что критически важные патчи, особенно те, которые закрывают уязвимости безопасности, могут быть тихо отправлены на тысячи автомобилей без вмешательства пользователя. Тем не менее, важно понимать, что решение через воздушное обновление представляет собой двуострый меч: если оно реализовано неправильно, аппаратные системы автомобиля могут быть подвергнуты атаке. Крайне важно обеспечить, чтобы не только система обновления была сама по себе безопасной, но и чтобы подход к проектированию был по своей сути устойчивым.
Лучшие практики для обновлений по воздуху все еще развиваются, но их можно легко подытожить: держите вещи разделенными. Чем больше слоев, обфускации и песочниц добавлено к ключевым системам автомобиля, тем лучше. На практике это означает, что целевые активы, такие как блоки управления двигателем и сеть контроллеров, должны быть защищены от систем развлечений и телефонии и обновляться отдельно. Хотя привлекательны преимущества экономии за счет консолидированного подхода к проектированию, стратифицированный подход гораздо более устойчив.
Дизайнеры встраиваемого оборудования также должны рассмотреть возможность использования готовых решений, особенно тех, которые работают на стандартных операционных системах отрасли. Это не только сократит затраты на разработку, но и подход, основанный на собственных разработках, может не уделить достаточно внимания потенциальным уязвимостям в безопасности. Наконец, для абсолютной безопасности стоит рассмотреть возможность исключения наиболее критических систем из программы обновлений по воздуху. Например, основные блоки управления и контроллеры подушек безопасности могут обновляться во время визитов в сервис и технических информационных бюллетеней.
Последний пункт может показаться уклонением, но это не так. Возможно безопасно обновлять все системы транспортного средства, но это требует некоторого переосмысления через новый подход. Использование независимого менеджера обновлений по воздуху или легкого компьютера, отвечающего за обновления, обеспечивает максимальную безопасность. Этот блок, который служит брандмауэром для критически важных систем от фактического оборудования связи, действует как «контроль паспортов» для входящих обновлений прошивки.
Используя либо встроенное шифрование/дешифрование, либо криптографический проверяющий механизм, менеджер обновлений по воздуху проверяет файл обновления на предмет его подлинности. Если прошивка была подделана или является фальшивой, менеджер обновлений отклоняет файл. При реализации вместе с безопасностью коммуникаций, такой как TLS, данная система теоретически непробиваема. Критические управляющие механизмы остаются изолированными, и обновления прошивки могут распространяться без беспокойства.
Автопроизводители постепенно осознают новые обязанности, которые создают современные автомобильные системы, и роль, которую играет безопасность. На первый взгляд может показаться, что безопасное, надежное решение обрекает разработчиков на большие затраты и накладные расходы. Однако это не обязательно так. С помощью современного инструмента разработки, ориентированного на безопасность, как Altium TASKING®, высокий уровень устойчивости не будет вызывать головную боль. предоставляет интегрированную среду разработки для встроенных систем и разработан с учетом уникальных потребностей автомобильных приложений.
Соответствие MISRA C и CERT C позволяет быстро разрабатывать программное обеспечение для слоистых аппаратных блоков, не жертвуя при этом надежностью или безопасностью. Это решение экономически эффективно обеспечивает возможность обновлений "по воздуху" с целенаправленной разработкой прошивки и длинным списком поддерживаемого аппаратного обеспечения. Что наиболее важно, оно упрощает и делает более легким создание быстро компилируемого кода с низким воздействием, который высоко устойчив к уязвимостям и атакам. Обратитесь в Altium сегодня, чтобы узнать больше о том, что это может сделать для вашего конкретного автомобильного приложения.