Что Можно Сделать Через Разъем Obd В Автомобиле?

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

Как заинтересованный владелец, мне стало интересно, что можно сделать, имея лишь доступ к разъему OBD и не более того.

Все описанное в статье относится к автомобилю 2008 года выпуска (Mitsubishi Lancer), но как показала практика, за 10 лет для производителя ничего не изменилось и все функции продолжают использоваться и работать на современных автомобилях.

Структура сети в автомобиле представлена на картинке:

Что можно сделать через разъем OBD в автомобиле?

В автомобиле имеются 3 CAN-шины (высокоскоростная шина двигателя 500 кбит/с, низкоскоростная салонная шина 83,3 кбит/сек, диагностическая) и одна шина LIN. Связующим звеном между ними является блок ETACS (Electronic Total Automobile Control System), который выполняет роль «шлюза» и передает сообщения с одной шины на другую по определенным правилам, а также обрабатывает некоторые из них.

Что можно сделать с CAN-шиной? Например, пообщаться с блоками и, возможно, что-то изменить.

Чтобы начать диалог с любым блоком, необходимо знать его адрес, а также поддерживаемые функции (PID), которые он может обрабатывать и на которые отвечать.

Программное обеспечение для дилерских центров под названием MUT III находится в открытом доступе.

Изучая базы данных из него, мы можем найти всю интересующую нас информацию.

Об адресах (запрос-ответ) в сети CAN:

Что можно сделать через разъем OBD в автомобиле?

PID запросов, полная расшифровка ответов всех блоков, включая положение байтов в ответе (если в одном кадре передается несколько значений) и множители с единицами измерения:

Что можно сделать через разъем OBD в автомобиле?

Например, мы хотим узнать угол поворота руля.

Для этого отправим команду 2102 на блок управления ESP. В ответ придет сообщение 6102 FFEA000008FFF302 Глядя на таблицу, обнаруживаем, что нужны 2 и 3 байты.



Что можно сделать через разъем OBD в автомобиле?

Значение в int16. 0xFFEA = -22, умножив на коэффициент 0,04375 получим угол поворота -0,9625 градусов.

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



Что можно сделать через разъем OBD в автомобиле?

Ладно, мы узнали всё, что хотели, но какой от этого толк? Теперь, если вы что-то измените/включите/отключите.

Простой пример.

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

Масло поменяли, но сообщение продолжает высвечиваться на экране, потому что счетчик никто не сбрасывал и обнулить можно только дилерским сканером MUT-III (стоит около 1000$, не каждому по карману) и некоторыми программами( тоже не бесплатно).

Еще в этих же таблицах можно найти команду под говорящим названием CLEAR_CVT_oil_degradation_level_Start. Вы можете зло посмеяться в сторону ОД и сбросить этот злополучный счетчик самостоятельно.

Отправка команды 31 03 на блок CVT и.

получаем в ответ 7F 31 33. Небольшое отступление.

Практически во всех автомобилях используется механизм диагностики и обслуживания.

UDS (он же ISO 14229) .

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

В результате имеем расшифрованный ответ от вариатора: 7F - запрос отклонен, 31 - это PID, который мы отправили и Код отрицательного ответа 33, а именно «Доступ запрещен».

То есть у нас нет прав изменять или запрашивать эту функцию.

У кого оно есть? Отступление 2. UDS использует механизм ограничения доступа на нескольких уровнях — обычный диагностический сеанс, расширенный сеанс, сеанс программирования и т. д. В каждом сеансе есть уровни допуска, которые определяют, что можно, а что нельзя делать.

Чтобы получить к ним доступ, нужно запросить у блока так называемый Seed, обработать его определенным алгоритмом и отправить обратно в блок (Key).

Вы можете прочитать больше здесь .

Попробуем запросить семя.

Отправляем в ЭБУ команду 2701 и получаем в ответ 6701 6A43FD3C. Отправляя обратно любое 4-байтовое значение ( 27 02 DEADBEEF), получаем в ответ 7F 27 35, где 35 — неверный ключ, поскольку было отправлено значение «из воздуха».

Где искать алгоритм расчета ключа? В прошивке блока управления больше нигде.

Достать его довольно легко (но не на всех блоках, все зависит от используемого микроконтроллера), сначала находим обработчик приема CAN, затем функцию обработки PID 0x27.

Что можно сделать через разъем OBD в автомобиле?

Повторив обменсид-ключом с алгоритмом из прошивки, мы получим ответ 6702 34, где 34 — «Доступ разрешен».

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

Таким образом, через OBD-разъем можно делать с автомобилем практически все: менять VIN-номера в блоках, настраивать кодировку (конфигурацию), отключать иммобилайзер менее чем за секунду, стирать информацию об ошибках, вводить блок в загрузку.

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

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

Любое вмешательство в электронные блоки управления автомобиля может оказаться для них последним.

Всем хорошего дня! Теги: #Автомобильные гаджеты #реверс-инжиниринг #шины #автомобильная электроника

Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.