Suicide
18.08.2022, 20:56
Владелец автомобиля Hyundai Ioniq SEL опубликовал (https://programmingwithstyle.com/posts/howihackedmycar/) серию статей с рассказом, как ему удалось внести изменения в прошивку, используемую в информационно-развлекательной системе (IVI) на базе операционной системы D-Audio2V, применяемой в автомобилях Hyundai и Kia. Оказалось, что все необходимые для расшифровки и верификации данные публично доступны в сети и для их определения потребовалось лишь несколько запросов в Google.
Предлагаемое производителем обновление прошивки к IVI-системе поставлялось в zip-файле, зашифрованном паролем, а содержимое самой прошивки было зашифровано при помощи алгоритма AES-CBC и заверено цифровой подписью на основе ключей RSA. Пароль от zip-архива и AES-ключ для расшифровки образа updateboot.img удалось найти в скрипте linux_envsetup.sh, который в открытом виде присутствовал в пакете system_package с открытыми компонентами ОС D-Audio2V, распространяемом на сайте (https://www.mobis.co.kr/en/tech/rnd.do#open) производителя IVI-системы.
https://www.opennet.ru/opennews/pics_base/CFD0C5CECEC5D4_1660811496.png (https://programmingwithstyle.com/posts/howihackedmycar/images/linux_envsetupZipPass.png)https://www.opennet.ru/opennews/pics_base/CFD0C5CECEC5D4_1660811514.png (https://programmingwithstyle.com/posts/howihackedmycar/images/linux_envsetupAESEncryption.png)
Тем не менее для модификации прошивки не хватало закрытого ключа, применяемого для заверения по цифровой подписи. Примечательно, что RSA-ключ помогла найти поисковая система Google. Исследователь отправил поисковый запрос, указав ранее найденный AES-ключ и натолкнулся на то, что ключ не является уникальным и упоминается в документе NIST SP800-38A (https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38a.pdf). Рассудив, что похожим образом заимствован и RSA-ключ исследователь нашёл в сопровождающем прошивку коде открытый ключ и попытался найти по нему информацию в Google. Запрос показал, что указанный открытый ключ упоминается в примере (https://gist.github.com/irbull/08339ddcd5686f509e9826964b17bb59) из руководства (http://hayageek.com/rsa-encryption-decryption-openssl-c/) по использованию OpenSSL, в котором также указан и закрытый ключ.
https://www.opennet.ru/opennews/pics_base/CFD0C5CECEC5D4_1660813895.png (https://programmingwithstyle.com/posts/howihackedmycar/images/RSAGoogleResults.png)
Получив необходимые ключи исследователь смог (https://programmingwithstyle.com/posts/howihackedmycarpart2/) внести изменения (https://programmingwithstyle.com/posts/howihackedmycarguidescreatingcustomfirmware/) в прошивку и добавить бэкдор, дающий возможность удалённо подключиться к программной оболочке системного окружения IVI-устройства, а также интегрировать (https://programmingwithstyle.com/posts/howihackedmycarpart3/) дополнительные приложения в прошивку.
18.08.2022
https://www.opennet.ru/opennews/art.shtml?num=57648
Предлагаемое производителем обновление прошивки к IVI-системе поставлялось в zip-файле, зашифрованном паролем, а содержимое самой прошивки было зашифровано при помощи алгоритма AES-CBC и заверено цифровой подписью на основе ключей RSA. Пароль от zip-архива и AES-ключ для расшифровки образа updateboot.img удалось найти в скрипте linux_envsetup.sh, который в открытом виде присутствовал в пакете system_package с открытыми компонентами ОС D-Audio2V, распространяемом на сайте (https://www.mobis.co.kr/en/tech/rnd.do#open) производителя IVI-системы.
https://www.opennet.ru/opennews/pics_base/CFD0C5CECEC5D4_1660811496.png (https://programmingwithstyle.com/posts/howihackedmycar/images/linux_envsetupZipPass.png)https://www.opennet.ru/opennews/pics_base/CFD0C5CECEC5D4_1660811514.png (https://programmingwithstyle.com/posts/howihackedmycar/images/linux_envsetupAESEncryption.png)
Тем не менее для модификации прошивки не хватало закрытого ключа, применяемого для заверения по цифровой подписи. Примечательно, что RSA-ключ помогла найти поисковая система Google. Исследователь отправил поисковый запрос, указав ранее найденный AES-ключ и натолкнулся на то, что ключ не является уникальным и упоминается в документе NIST SP800-38A (https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-38a.pdf). Рассудив, что похожим образом заимствован и RSA-ключ исследователь нашёл в сопровождающем прошивку коде открытый ключ и попытался найти по нему информацию в Google. Запрос показал, что указанный открытый ключ упоминается в примере (https://gist.github.com/irbull/08339ddcd5686f509e9826964b17bb59) из руководства (http://hayageek.com/rsa-encryption-decryption-openssl-c/) по использованию OpenSSL, в котором также указан и закрытый ключ.
https://www.opennet.ru/opennews/pics_base/CFD0C5CECEC5D4_1660813895.png (https://programmingwithstyle.com/posts/howihackedmycar/images/RSAGoogleResults.png)
Получив необходимые ключи исследователь смог (https://programmingwithstyle.com/posts/howihackedmycarpart2/) внести изменения (https://programmingwithstyle.com/posts/howihackedmycarguidescreatingcustomfirmware/) в прошивку и добавить бэкдор, дающий возможность удалённо подключиться к программной оболочке системного окружения IVI-устройства, а также интегрировать (https://programmingwithstyle.com/posts/howihackedmycarpart3/) дополнительные приложения в прошивку.
18.08.2022
https://www.opennet.ru/opennews/art.shtml?num=57648