реклама на сайте
подробности

 
 
> КАН моталка. Принцип работы., Как обмануть CAN.
galjoen
сообщение Nov 11 2009, 12:21
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



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

Я предполагаю, что дело происходит примерно так:
1. В CAN сеть подключается специальный девайс.
2. Этот девайс портит посылки, содержащие информацию о пробеге. Но нужно перед этим прочесть имеющуюся посылку, чтобы из неё вынуть данные о реальном пробеге.
3. Этот девайс выдаёт в сеть свою посылку, содержащую скорректированную информацию.

Испортить посылку по п.2, на мой взгляд, лучше всего установив доминанту во время передачи CRC. Тогда и реальный пробег можно прочесть (мы ведь знаем, что ошибка CRC - это наших рук дело). Понятно, что для этого придётся влезть в CAN протокол програмно, т.к. CAN контроллеры на такое не рассчитаны. Но проблем там быть не должно, т.к. скорость 250 или 500 кбод. ATmega48 вполне справится. При тактовой 16 мГц будет 64 или 32 такта на бит. Вполне достаточно чтобы CRC на лету подсчитать. Лучше всего вход захвата таймера для приёма данных использовать.

Ну и противодействовать этому легко. Просто смотреть испорченные посылки.

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

А сейчас подумал, что м.б. ребята так не заморачиваются. Просто забивают всю шину своими левыми сообщениями. А когда происходит реальная передача, то у неё ID такой же. Арбитража из-за этого нет. Появляется ошибка в данных и CRC. А счётчик ошибок у ребят постоянно сбрасывается. А у настоящего - Bus Off.
Go to the top of the page
 
+Quote Post
2 страниц V  < 1 2  
Start new topic
Ответов (15 - 22)
Punk
сообщение Nov 24 2009, 18:16
Сообщение #16


Местный
***

Группа: Участник
Сообщений: 242
Регистрация: 19-06-06
Из: Новосибирск
Пользователь №: 18 167



В АБС пробега не храниться. У АБС и так забот хватает. Подсчетом километража занята приборная панель, иногда моторник.
---------------------------------------------------------------------------

А Вы где-нить на просторах интернета встречали софтверный кан для АВР ? интересно было бы взглянуть.
Go to the top of the page
 
+Quote Post
galjoen
сообщение Nov 24 2009, 18:46
Сообщение #17


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Punk @ Nov 24 2009, 21:16) *
А Вы где-нить на просторах интернета встречали софтверный кан для АВР ? интересно было бы взглянуть.

Не встречал, хотя и не искал. Хотя возможно, сам, в недалёком будущем, займусь. Но ИМХО - то, что с интернета скачано, только для примера использовать можно. А в изделие - только своё, проверенное.
Go to the top of the page
 
+Quote Post
Doka
сообщение Nov 24 2009, 19:57
Сообщение #18


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



Цитата(Punk @ Nov 24 2009, 21:16) *
В АБС пробега не храниться. У АБС и так забот хватает. Подсчетом километража занята приборная панель, иногда моторник.
---------------------------------------------------------------------------

нет... это уже какой-то совсем несерьёзный разговор пошёл.....
мы о современных авто или о механических одометрах на "классике"??

вообще-то, при смене приборной панели на новую в сборе пробег остаётся...

ECU - вот она родословная и обитель километража..


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
Punk
сообщение Nov 25 2009, 06:51
Сообщение #19


Местный
***

Группа: Участник
Сообщений: 242
Регистрация: 19-06-06
Из: Новосибирск
Пользователь №: 18 167



Цитата(Doka @ Nov 24 2009, 22:57) *
нет... это уже какой-то совсем несерьёзный разговор пошёл.....
мы о современных авто или о механических одометрах на "классике"??

вообще-то, при смене приборной панели на новую в сборе пробег остаётся...

ECU - вот она родословная и обитель километража..


А Вы лично панели меняли, сматывали? на каких авто?
Go to the top of the page
 
+Quote Post
mich.bil
сообщение Jan 25 2010, 19:09
Сообщение #20





Группа: Участник
Сообщений: 13
Регистрация: 12-09-08
Из: Украина, Херсон
Пользователь №: 40 146



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

Сообщение отредактировал mich.bil - Jan 25 2010, 19:10
Go to the top of the page
 
+Quote Post
Juray
сообщение Jan 26 2010, 09:34
Сообщение #21


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 19-03-06
Из: Йошкар-Ола
Пользователь №: 15 388



Цитата(Doka @ Nov 24 2009, 22:57) *
ECU - вот она родословная и обитель километража..

ECU = Electronic Control Unit = Электронный Блок Управления = ЭБУ
Большинство электронных блоков в АТС можно так назвать - АБС, ЭСУД... Каждый из них чем-то управляет.
Из не управляющих разве что всякие рекордеры - тахограф, "чёрный ящик"...


Цитата(Doka @ Nov 12 2009, 09:45) *
думаю в разных авто - по-разному.


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

Могу рассказать, как выглядит система на последних МАЗах с бошевским EDC-7.
Шина там - CAN 2.0 B (29-битный идентификатор) , протокол - SAE J 1939.

С датчиков колёс сигналы получает АБС.
АБС сообщает в CAN скорость в сообщениях EBC2 (Wheel Speed Information, pgn65215), может и HRW (High Resolution Wheel Speed, pgn65134)

С датчика КПП сигнал идёт на тахограф или электронный спидометр, где и должен подсчитываться пробег.
Тахограф должен по запросу выдавать сообщение VD (Vehicle Distance, pgn65248) или HRVD (High Resolution Vehicle Distance, pgn65217).
Электронный же спидометр с CAN вообще дела не имеет, хотя пробег также считает (одометр).
И тахограф, и ЭС сигнал с датчика нормализует (формирует прямоугольник с заданной длительностью и амплитудой импульса), и выдаёт дальше.

Нормализованный сигнал заведен на несколько приемников:
- EDC по этому сигналу также рассчитывает скорость и пробег. Скорость затем выдаётся в CAN в сообщении CCVS (Cruise Control/Vehicle Speed, pgn65265).
Пробег же можно считать из блока через диагностическую шину (KWP 2000).
- Блок БДИ, который кроме управления указателями выполняет функции бортового регистратора, подсчитывает по этому сигналу пробег, который также затем считывается по диагностической шине ISO 9141.
- Контроллер КПП.

Сигнал заведён еще куда-то, о чем я не в курсе - но картина и так вырисовывается.
Пробег "для диагностики" лежит в нескольких местах, и фальсифицировать его именно "цифровым" методом очень сложно.
Уязвимым местом остаётся вход сигнала с датчика. Подмотку "вперёд" можно выполнять генератором импульсов. А вот для уменьшения пробега придётся ездить с отключенным спидометром, оторвав этот провод.
Go to the top of the page
 
+Quote Post
Juray
сообщение Feb 2 2010, 13:25
Сообщение #22


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 19-03-06
Из: Йошкар-Ола
Пользователь №: 15 388



Насчет расшифровки "ECU":
http://en.wikipedia.org/wiki/Electronic_Control_Unit
http://en.wikipedia.org/wiki/Engine_control_unit
Неоднозначность, однако...

Сообщение отредактировал Juray - Feb 2 2010, 13:37
Go to the top of the page
 
+Quote Post
galjoen
сообщение Feb 3 2010, 12:58
Сообщение #23


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Juray @ Jan 26 2010, 12:34) *
Могу рассказать, как выглядит система на последних МАЗах с бошевским EDC-7.
Шина там - CAN 2.0 B (29-битный идентификатор) , протокол - SAE J 1939.

С датчиков колёс сигналы получает АБС.
АБС сообщает в CAN скорость в сообщениях EBC2 (Wheel Speed Information, pgn65215), может и HRW (High Resolution Wheel Speed, pgn65134)

А на ПАЗ-иках с камминзом так:
АБС там видимо разные стоят. Все формируют PGN=0xFEBF (65215), но период выдачи этого сообщения различен. Хотя бывает и как положено по стандарту - 100 mS. Но чаще нет. При поворотах возникают корректные отклонения по колёсам - значит датчики во всех стоят.
Спидометр со своим счётчиком сам по себе.
Я интегрирую скорость из PGN=0xFEBF по времени - получаю пробег (интегрирую по времени прихода сообщения, использую Time Trigger Communication). Совпадает с пробегом по GPS с точностью 1%. А у счётчика спидометра примерно на 6% пробег больше. Видимо он не из CAN cкорость берёт, ну или такой выдающийся расчёт там применён...
Сообщения с общим пробегом PGN=0xFEE0 (65248) в сети есть у всех, но в 2-х из 3-х случаев данные там фиктивные. Обычно сплошные 0. Ну или машина ездит, а ничего не прибавляется.
Цитата(Juray @ Jan 26 2010, 12:34) *
Сигнал заведён еще куда-то, о чем я не в курсе - но картина и так вырисовывается.
Пробег "для диагностики" лежит в нескольких местах, и фальсифицировать его именно "цифровым" методом очень сложно.
Уязвимым местом остаётся вход сигнала с датчика. Подмотку "вперёд" можно выполнять генератором импульсов. А вот для уменьшения пробега придётся ездить с отключенным спидометром, оторвав этот провод.

А обмануть можно если к диагностическому разъёму, через который будут читать пробег, ретранслятор приделать. Он все сообщения будет напрямую пропускать, а в сообщении с пробегом данные, ну скажем на 100000 км уменьшать. А спидометр скрутить - это уж само собой. Только крутить нужно так, чтобы разница 6% была. Иначе подозрительно будет...
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 06:16
Рейтинг@Mail.ru


Страница сгенерированна за 0.01863 секунд с 7
ELECTRONIX ©2004-2016