Reverse engineering на CAN шината...
Модератор: Общи модератори
12 мнения
• Страница 1 от 1
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Reverse engineering на CAN шината...
Заигравам се с едни красоти по камиона и опрях до там, че да ми трябват точно конкретни съобщения идващи по интериорния CAN. Всичко прекрасно, мислех, че се е заринало с информация в нета за тия коли (Daimler-Chrysler от тия години) - да, ама не! Никъде нищо не пише, а като питаш по форумите и фейсбук групите, никой не иска да каже Ще да искат пари явно Та запретнах ръкави, разглобих камионетката и си намерих подходящо място на интериорния CAN ("CAN-B" както го наричат). Подготвих си един аматьорски хардуер (Arduino Nano + MCP2515), с който да слухтя, и го боцнах на правилното място. Единствената информация, която беше изтекла из нета беше, че CAN-B, е на доста крив битрейт - 83.3kbps. Хубаво, докарах го с 16MHz кварц на MCP2515-ката.
И какво видях! Видях един burst от стотина съобщения вървящи там за една елементарна команда към жипката Признавам си, че го подцених, защото не вярвах, че има много, много модули навързани по CAN на тоя модел. Да, ама не, бая са Поради това Arduino-то не смогва да изпомпа достатъчно бързо съобщенията по серийната конзола и съответно изпускам някои. Тааа... ще минавам на Raspberry Pi със socketCAN
Та чудя се, дали има и други дивяци като мен из форума, които им се ще да си преслушат CAN-a. Знам, че на BMW съобщенията са що-годе известни и едва ли ви се е налагало reverse engineering, но все пак. Откъде сте черпили информация, ако сте ползвали нещо наготово?
И какво видях! Видях един burst от стотина съобщения вървящи там за една елементарна команда към жипката Признавам си, че го подцених, защото не вярвах, че има много, много модули навързани по CAN на тоя модел. Да, ама не, бая са Поради това Arduino-то не смогва да изпомпа достатъчно бързо съобщенията по серийната конзола и съответно изпускам някои. Тааа... ще минавам на Raspberry Pi със socketCAN
Та чудя се, дали има и други дивяци като мен из форума, които им се ще да си преслушат CAN-a. Знам, че на BMW съобщенията са що-годе известни и едва ли ви се е налагало reverse engineering, но все пак. Откъде сте черпили информация, ако сте ползвали нещо наготово?
Последна промяна Nickelback на 05 Апр 2019, 18:51, променена общо 1 път
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
Re: Reverse engineering на CAN шината...
Това цялото с каква идея го правиш?Че имам интерес към тия камиончета знаеш.
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Re: Reverse engineering на CAN шината...
slatanic написа:Това цялото с каква идея го правиш?Че имам интерес към тия камиончета знаеш.
Ами към момента е тайна и предстояща приятна изненада към потребителите на форума и автомобилната общност в България (и не само) като цяло Нещо полезно ще е за всички Като заработи системата от-до, всички ще разберете
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
Re: Reverse engineering на CAN шината...
http://chadgibbons.com/2013/12/29/hacki ... r-can-bus/
аз намерих това - поне може да видиш формата и стринговете на някои от съобщенията...
аз си мислех, че кан-а на джип е като на мерцедес (нали бяха заедно едно време) ама изглежда не са...
аз намерих това - поне може да видиш формата и стринговете на някои от съобщенията...
аз си мислех, че кан-а на джип е като на мерцедес (нали бяха заедно едно време) ама изглежда не са...
алекс
трабант 601с
разни други возила
трабант 601с
разни други возила
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Re: Reverse engineering на CAN шината...
alx написа:http://chadgibbons.com/2013/12/29/hacking-the-jeep-interior-can-bus/
аз намерих това - поне може да видиш формата и стринговете на някои от съобщенията...
аз си мислех, че кан-а на джип е като на мерцедес (нали бяха заедно едно време) ама изглежда не са...
Благодаря от все сърце! Няма точно това, което търся, но има важни опорни точки, което е още по-ценно
Ще стане работата
ПС: Все ми се ще да си говорим в подобен стил с теб, ще е доста по-креативно
Последна промяна Nickelback на 05 Апр 2019, 19:53, променена общо 1 път
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
Re: Reverse engineering на CAN шината...
Не знам за протокола на Даймлер-Крайслер, обаче ако си в непознати води, ето това е добър подход. Използваш електрическия профил, който може да се извлече от съобщенията, за да идентифицираш от кое ECU идват за начало.
http://canlandbucket.s3-website-eu-west-1.amazonaws.com/productionResourcesFiles/ebba4210-6c52-493d-a2ea-525dff614b21/Use%20of%20CAN%20Bus%20Message%20Electrical%20Signatures%20for%20Automotive%20Reverse%20Engineering.pdf
http://canlandbucket.s3-website-eu-west-1.amazonaws.com/productionResourcesFiles/ebba4210-6c52-493d-a2ea-525dff614b21/Use%20of%20CAN%20Bus%20Message%20Electrical%20Signatures%20for%20Automotive%20Reverse%20Engineering.pdf
enigma
ያለ እኩል
ያለ እኩል
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Re: Reverse engineering на CAN шината...
enigma написа:Не знам за протокола на Даймлер-Крайслер, обаче ако си в непознати води, ето това е добър подход. Използваш електрическия профил, който може да се извлече от съобщенията, за да идентифицираш от кое ECU идват за начало.
http://canlandbucket.s3-website-eu-west-1.amazonaws.com/productionResourcesFiles/ebba4210-6c52-493d-a2ea-525dff614b21/Use%20of%20CAN%20Bus%20Message%20Electrical%20Signatures%20for%20Automotive%20Reverse%20Engineering.pdf
Ахахахаха, това с клъстеризацията пък е страшно хитро, нямаше да се сетя вероятно
За съжаление нямам подходяща техника вкъщи, че да го приложа, но не вярвам да ми се наложи чак
Бла-го-да-ря и на теб!
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
Re: Reverse engineering на CAN шината...
Абе ще стане работата.Пък до тогава дано да съм се обзавел отново с грандче па макар и 6.1 този път.
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Re: Reverse engineering на CAN шината...
Малко логове от днес, че ми стана едно такова тъжно и се чудя от 'де да го почна
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
Re: Reverse engineering на CAN шината...
Много интересна тема, зарадвах се, когато видях, че се заражда подобен проект и то от човек, който отдавна е показал, че не е като да не е зареден с ентусиазъм.
Аз знам, че имаш и познанията, и амбицията да докараш до край този проект, така че не съм убеден дали би имало особен смисъл от елементарни идеи, но все пак реших да ти напиша една.
Много често, когато става дума за canbus, дадени модули изпращат по няколко съобщения в секунда и когато четеш цялата комуникация, ти идва да се гръмнеш, защото реално виждаш един стабилно голям поток от не много променящи се съобщения.
Та, мисълта ми е, че можеш да помислиш за това как да си улесниш визуализацията, като вземеш идея от тази картинка:
а защо не и от целия проект на пичагата: https://medium.com/@alexandreblin/can-b ... 27f2b1709a
Така поне ще можеш да изключиш големия флууд от ненужни за теб съобщения към момента.
Аз знам, че имаш и познанията, и амбицията да докараш до край този проект, така че не съм убеден дали би имало особен смисъл от елементарни идеи, но все пак реших да ти напиша една.
Много често, когато става дума за canbus, дадени модули изпращат по няколко съобщения в секунда и когато четеш цялата комуникация, ти идва да се гръмнеш, защото реално виждаш един стабилно голям поток от не много променящи се съобщения.
Та, мисълта ми е, че можеш да помислиш за това как да си улесниш визуализацията, като вземеш идея от тази картинка:
а защо не и от целия проект на пичагата: https://medium.com/@alexandreblin/can-b ... 27f2b1709a
Така поне ще можеш да изключиш големия флууд от ненужни за теб съобщения към момента.
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Re: Reverse engineering на CAN шината...
PeReZ написа:Много интересна тема, зарадвах се, когато видях, че се заражда подобен проект и то от човек, който отдавна е показал, че не е като да не е зареден с ентусиазъм.
Аз знам, че имаш и познанията, и амбицията да докараш до край този проект, така че не съм убеден дали би имало особен смисъл от елементарни идеи, но все пак реших да ти напиша една.
Благодаря, колега, радвам се, че има хора, които оценяват начинанието Само с vehicle bus ривърс инженеринг не се бях занимавам, ама ей го на, наложи се Естествено има своите особености, които откривам и тепърва ще откривам
А елементарните идеи, хич не са елементарни Често пъти вглъбени в уж страхотно комплексния проблем не виждаме елементарното му решение Out-of-the-box мисленето е "в почивка" в някои напрегнати моменти и е прекрасно да има някой, който да те върне в реалността Наскоро решавах един проблем на работа по изключително завъртян начин. Все не се получаваше както го искам Едно момче, стажант на две седмици вметна "защо не го направиш така и така"? В първия момент се усмихнах, тъкмо да му кажа, как уж няма да стане по неговия начин, и ми светна, че точно по неговия начин ще стане с лека корекция в правилната посока. Но човекът имаше идея, глобална концепция, имплементацията е нещо второстепенно Казах му браво и съм обещал да го черпя бира на обяд Та така, отплеснах се Идеята ми бе, че приемам съвети и идеи от всеки, и определено ги адмирирам Не се присмивам на идеите, не се присмивам на "глупавите" въпроси (които в повечето случаи не са дори глупави, ами са прелюдия към решението). Присмивам се и се държа саркастично с неаргументираната, подигравателна, груба и иронична критика на първо влизане от хора, които си нямат идея от нещата, но се държат така, че като уж имат Каквото повикало, такова се обадило в общия случай
С две думи - благодаря ти за включването и да, определено ми е ценно, тъй като това питонско туулче изглежда определено обещаващо Буферира малко месиджи и джурка разликите, за да ти блеснат пред очите. Написах си вчера подобно, но доста по примитивно, че нямах време. Ще го пробвам уикенда това от линка, определено
По подобен начин (забравих да се похваля тия дни), реших проблема с мистичните съобщения. Само че използвах готов такъв туул - "cansniffer", вървящ на Raspberry-то, с който намерих това:
Ето как изглежда в реално време:
Както се вижда, той буферира последните "N" на брой постъпили съобщения за определено време и ги дава, сравнително прегледно, на един екран, сортирани по ID. Съответно, ако се промени пейлоудът веднага го оцветява в червено Така открих това, което ми трябва Въпрос беше на настройки и на туул. И да, както винаги съм казвал, решаването на даден проблем е 40% в правилния туулинг, 40% подход, и едни 20% знания
PeReZ написа:*Не е напълно вярно твоето убеждение, че в Интернет има много писано за БМВ canbus комуникацията. Имам предвид, че и там винаги се опира до reverse engineering, така че всеки, който е имал някакви мераци - все някога е бил в същата ситуация.
С такова впечатление бях останал, но може би е грешно да, може би за VAG има повече инфо, не знам Тъпо, че нямам съвременно БМВ и да си пробвам Ама май и не искам да имам, като знам какво готвят по новите - тотално криптиране, salt-ване и sign-ване на vehicle bus трафика, а и дори криптиране на вътрешното IPC измежду процесите в даден модул, както и междупроцесорната комуникация Ходи сниффвай и разбери нещо
PeReZ написа:Много често, когато става дума за canbus, дадени модули изпращат по няколко съобщения в секунда и когато четеш цялата комуникация, ти идва да се гръмнеш, защото реално виждаш един стабилно голям поток от не много променящи се съобщения.
...
Така поне ще можеш да изключиш големия флууд от ненужни за теб съобщения към момента.
И си абсолютно прав - съобщенията се пращат многократно по шината за определен интервал от време Моят месидж се праща три пъти, след което се "погасява" и се праща вече с друг пейлоуд
Проектът е интересен и определено ще го разгледам
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
- Nickelback
- старши ентусиаст
- Мнения: 1857
- Регистриран на: 20.10.2010
- Местоположение: София
- Пол: Мъж
- Кара: BigBlockV8 и чат-пат SmallBlockV8
- Мечтае да кара: бангия с предно
- Детайли за колата: ;)
Big: Hemi 370 cu. in.
Small: S62B50 с жокери
Re: Reverse engineering на CAN шината...
Да е жив и здрав Жорданката (този иначе така симпатичен столкър и доктор на философските науки ), че ме подсети за темата Аз каквото ми трябваше си го намерих (бях писал назад) и малко бях забравил за темата Но ако някой има въпроси съм насреща да отговоря. Да речем, че си почупих главата малко и мога да препоръчам как да се подходи
Тук по темата (понеже е обща) гепнах ей тоя линк от колегите в Е90 раздела. Има доста описани съобщения за може би най-актуалните модели БМВ на пазара у нас към момента. Вярвам, че ще са полезни на някого:
http://www.loopybunny.co.uk/CarPC/k_can.html
@PeReZ, не прибегнах до Python скрипта на пичагата, понеже ползва Arduino, което се опитва да помпи данни на 115200 по серийна конзола към ПитонЯ и нещо не смогва. При мен трафикът е доста по-свиреп в началото и изпуска съобщения. Не ми се занимаваше да го пренаписвам скрипта да ползва socketcan директно и да върви на моето Raspberry и затова го зарязах Иначе дава доста прегледно резултатите
Тук по темата (понеже е обща) гепнах ей тоя линк от колегите в Е90 раздела. Има доста описани съобщения за може би най-актуалните модели БМВ на пазара у нас към момента. Вярвам, че ще са полезни на някого:
http://www.loopybunny.co.uk/CarPC/k_can.html
@PeReZ, не прибегнах до Python скрипта на пичагата, понеже ползва Arduino, което се опитва да помпи данни на 115200 по серийна конзола към ПитонЯ и нещо не смогва. При мен трафикът е доста по-свиреп в началото и изпуска съобщения. Не ми се занимаваше да го пренаписвам скрипта да ползва socketcan директно и да върви на моето Raspberry и затова го зарязах Иначе дава доста прегледно резултатите
"За тЕя пари има Е-шеесе" - форумна пословица.
Лето две и седемнаесто.
12 мнения
• Страница 1 от 1
Кой е на линия
Потребители разглеждащи този форум: Bing [Bot]