Здравствуй ЛОР, с необычным кмк вопросом сегодня я.
Ищу совета, помощи.
История длинная, начну издалека и надеюсь у вас хватит терпения дочитать до конца.
В моей машине с самого начала ее существования была установлена довольно примитивная магнитола. Хотелось чего-то помощней с навигацей и блекджеком.
Купил, поставил.
Тут небольшое отступление: автомобили марки Citroen и Peugeot комплектуются магнитолами производства компании Magneti Marelli.
Магнитолы эти одинаковы внутри и отличаются лишь интерфйсом.
Некоторые имеют тач, и часть функций там выведена на кнопки на экране. Некоторые тача не имеют и тогда эти функции выведены на хардварные кнопки.
Для подгонки по месту использования под конкретный автомобиль используется специальный дейвайс и программка разработки опять же концерна PSA. Суть в том что бы отредактировать некое подобие реестра зашитого внутри магнитолы.
Техник на СТО подключается к магнитоле через CAN-шину в автомобиле и задает настройки. Настроек очень много, начиная от «дизель/бензин» и до «количество динамиков». Можно также включать различные опции, например поддержку Mirror Link, Android Auto.
Однако не все так просто. Как оказалось, перед тем как отправить параметр конфигурации в магнитолу, мерзкая программулина связывается с материнским кораблем, в смысле сервером и проверяет - а чо ваще на этой машине должно стоять? И если ответ ее не устроит, то параметр в магнитолу не прописывается.
Моя магнитола снята как раз с автомобиля Peugeot 208 а установлена в Citroen C4. Машины немножко похожи но понятное дело телекодировать магнитолу не удается так как сервер видит что наи моей машине эта магнитола стоять не должна. Если кто не в курсе, все автомобили идентифицируются по уникальному VIN-номеру.
Как только не пытались мы с электриком на СТО обойти защиту - ничего не получается. Как потом я узнал позже, над этой проблемой бьется еще пара человек в инете но они больше по ремонту машин специалисты а не по компьютерам. Поэтому результата от них ждать не приходится.
Итак я уже подхожу к сути. Коротко - я пытаюсь найти способ как задать некоторые параметры в магнитоле.
Разобрав прошивку я обнаружил что параметры хранятся в sqlite базах (их несколько разбитых по категориям). Т.е вместо телекодирования через спец-кабель и программку можно поменять параметры прямо в файлах, подумал я и обрадовался.
Первое что я попробовал - это подменить данные в sqlite-файлах в прошивке и подсунуть файл прошивки с измененными файлами как обновление. Безуспешно, так как магнитола проверяет целостность файлов прошивки каким-то мерзким способом, а именно у них там своя (!) реализация crc32. Вот так например выглядит файл с контрольными суммами для одного из файлов (только одного, не спрашивайте меня почему тут несколько строк «size») :
CRC32: -1308817588
SIZE: 42635998
SIZE_1: 43126784
SIZE_2: 43601920
SIZE_4: 44634112
SIZE_8: 46972928
SIZE_16: 51953664
SIZE_32: 62914560
Понять как почитать такую контрольную сумму я не смог а инструкций в интернете понятное дело нет.
На данный момент у меня есть две идеи по способам изменения этих параметров.
1) Хардварный способ. Операционка и юзерские настройки магнитолы хранятся на micro-sd флешке. Флешка натурально вставленна в слот и ее можно достать. Идея в том что бы разобрать магнитолу и поправить файлы прямо на ней. Есть шанс получить «кирпич» если в магнитоле есть система защиты от подобных действий.
2) Софтварный способ.
В магнитоле есть браузер и возможность выходить в интернет. Т.е базовый план в том что бы выйти таким образом в инет, узнать свой IP, просканировать nmap-ом и попытаться найти стандартные уязвимости а если повезет и там есть telnet или подобная штука то подобрать пароль.
Есть мнение что в магнитоле работает операционка vxWorks. Быстрый гугл по CVE для vxWorks не дает никаких результатов.
В общем, в порядке эксперимента хочу обратится к знающим товарищам с такими вот вопросами:
1) Есть ли какие-то стандартные алгоритмы/способы поиска уязвимостей в embedded системах?
2) Может быть у вас есть альтернативные идеи как получить доступ к файловой системе так что бы ось не узнала об этом факте и поменять там что-то?
Само собой, хардварный способ сейчас самый перспективный но софтварный тоже стоит разрабатывать так как я вангую шифрование на флешке.
Спасибо )
Похожие темы
- Форум Магнитола на Linux, поиск подсчета (2020)
- Форум Ядро - Поиск уязвимостей (2015)
- Форум Гостевая книга - поиск уязвимостей (2012)
- Форум Поиск уязвимостей сервера что почем (2019)
- Форум Помогите подобрать магнитолу (2010)
- Форум плеер для магнитолы (2014)
- Форум Накопитель из магнитолы (2007)
- Форум [автомобильное] Лесоповал (2011)
- Форум Магнитола переносная (не авто) (2012)
- Форум Распознавание автомобильных номеров (2016)