Всем привет, решил выдать статью на эту тему "ибо мои нище-бродские глаза" все никак не перестают аху..вать! И постоянно они задают моему мозгу такой вопрос "ОТКУДА????? наглые малыши у вас такие тачки??))"
Эта статья предназначена для ознакомления! и ..е только...
Итак, предисловие: как все Мы видим что мир постоянно компьютеризируется, уже можно с холодильником бухать, точнее просить его что бы он произносил "тост"-ы "за здоровье, что бы у нас все было и нам за это ничего не было" и т.д. ну и соответственно автомобили уже сами паркуются, тормозят при обнаружении пешехода все за счет датчиков, сенсоров и компьютера который отвечают за всю "движуху" , кроче говоря поскольку "чужие" автомобили стали умнее и умнее, они включают в себя все больше и больше электроники, что делает их более уязвимыми.
Приступим, оговорюсь сразу что дело это не легкое и нужно много чего понимать, а именно как общаются датчики между собой и с компьютерным блоком автомобиля, а общаются они по протоколу CAN --> Area Network Controllerосновала и стандартизовала этот протокол немецкая компания BOSH еще в 80-ых и общение происходит по двум проводам между датчиками за счет поднятия и понижения напряжения, так они разговаривают между собой))
Не буду Вас грузить умными терминами, а скажу сразу что у каждой (новой и почти) машины есть разъем для подключения автомобиля к компу называется он OBD-2вот он и служит для диагностики, выявления ошибок и их устранения(стирания), прошивки авто добавление удаления опций автомобиля например: не все знают что можно добавить опцию "провести до дома" то есть автомобиль ночью фарами Вас сопровождает(подсвечивает) до подъезда после его закрытия... а за эту функцию пришлось бы Вам доплатить в салоне за её (добавление) то есть включение, а просто достаточно включить у дяди Васи в гараже или самому! В общем дерут эти "салонщики" с простого народа деньги как могут и это я Вам привел один простой пример!
Можно конечно и так подключится к CAN шине )))) как показано ниже..
добавлю про CAN что этот протокол не имеет функций безопасности, не имеет шифрования, аутентификации из всего делаем вывод что можно просто подключится и делать простую атаку типо MITM(человек по середине) главное подключится!))) Раз Мы сможем подключиться то спокойно можем перехватывать, нюхать модифицировать под свое усмотрение и отправлять (ложные)пакеты на компьютер авто, а поможет нам в этом волшебный софт под названием :
вот кривой перевод возможностей этих утилит: https://github.com/linux-can/can-utils
1 . Основные инструменты для отображения, записи, создания и воспроизведения CAN трафика
candump : дисплей, фильтр и журнал CAN данных в файлы
canplayer : Replay CAN лога
cansend : отправить один кадр
cangen : генерировать (случайный) CAN трафика
cansniffer : различия содержания отображения CAN данных (только 11bit CAN ID)
2 . CAN доступ через IP - сокеты
canlogserver : войти CAN кадры из удаленного / локального хоста
bcmserver : интерактивная конфигурация БОЙ (удаленный / локальный)
socketcand : использовать RAW / БЦМ / ISO-TP сокетов через TCP / IP сокетов
3 . CAN в ядре конфигурации шлюза
cangw : CAN шлюз userpace инструмент для NETLINK конфигурации
измерение шины 4. CAN и тестирование
canbusload : вычислить и отобразить CAN автобус с
может-известково-бита синхронизация : версия в пользовательском пространстве расчета битрейта в ядре
canfdtest : Дуплексная тестовая программа (DUT и хост - часть)
5. Инструменты ISO-TP ISO15765-2: 2016 для Linux
isotpsend : отправить один ISO-TP PDU
isotprecv : получить ISO-TP PDU (ы)
isotpsniffer : 'прослушивание' ISO-TP PDU (ы)
isotpdump : 'прослушку' и интерпретируют CAN сообщений (CAN_RAW)
isotpserver : сервер IP для простого TCP / IP ISO 15765-2 шунтирование (ASCII HEX)