Как секретный ключ Huawei попал в прошивки маршрутизаторов Cisco

в 6:45, , рубрики: Cisco, github, huawei, open source, OpenDaylight, Блог компании GlobalSign, зависимости, Интернет вещей, информационная безопасность, маршрутизаторы

Как секретный ключ Huawei попал в прошивки маршрутизаторов Cisco - 1

Разработчики сканера IoT Inspector периодически проводят рутинную проверку прошивок разных производителей. Иногда находят уязвимости в устройствах Интернета вещей. Но последняя находка особенно удивительна. В прошивке маршрутизатора Cisco SG250 сканер нашёл несколько сертификатов и соответствующий секретный ключ сотрудника Futurewei Technologies, американской дочерней компании Huawei Technologies, по имени Гарри Ву (Garry Wu) с электронным адресом gary.wu1@huawei.com.

Но как они попали в прошивку маршрутизатора Cisco?

Странно было ещё расположение файлов, о которых идёт речь (/root/.ssh/). Эта директория обычно предназначена для SSH-ключей, а не сертификатов.

Как секретный ключ Huawei попал в прошивки маршрутизаторов Cisco - 2

Разработчики вручную проверили результаты автоматического сканера. Они были надёжны, ручной анализ подтвердил автоматизированные результаты.

Как секретный ключ Huawei попал в прошивки маршрутизаторов Cisco - 3

Учитывая политические споры вокруг Huawei, сотрудники не хотели спекулировать на этой теме и сразу передали информацию Cisco. Там отдел безопасности подтвердил результаты и начал внутреннее расследование. Им потребовалось всего несколько дней, чтобы выяснить причины и поделиться подробностями.

Как оказалось, сертификаты и закрытый ключ, о которых идёт речь, были частью свободного пакета OpenDaylight GitHub, который используется в некоторых продуктах Cisco. Проблема затронула все маршрутизаторы Cisco серий 250/350/350X/550X. Разработчики использовали сертификаты для тестирования функции Cisco FindIT для проактивного управления сетью маршрутизаторов с автоматическим нахождением всех устройств в сети, конфигурации через единый интерфейс и т. д. Сертификаты оказались в прошивках продуктов из-за простого недосмотра.

Cisco сразу выпустила прошивку без этих сертификатов, а 3 июля опубликовала рекомендации по безопасности. Кроме того, Cisco исправила и другие проблемы, обнаруженные сканером: пустые хэши паролей, ненужные зависимости и различные уязвимости в зависимостях.

Никакой угрозы безопасности тут не оказалось. О мифических «бэкдорах Huawei» речи не идёт. Согласно Cisco, никакие векторы атаки не были определены, поскольку сертификаты фактически не используются в финальных версиях прошивок.

Но всё равно здесь просматривается две проблемы.

Во-первых, разработчики часто для удобства или по недосмотру помещают секретную информацию в программный код, который потом выкладывается в открытый доступ. Например, в марте 2019 года исследователи из Университета Северной Каролины просканировали GitHub и установили, что свыше 100 тыс. репозиториев содержат API-ключи, токены и криптографические ключи. Кроме того, каждый день на GitHub попадают тысячи новых, уникальных «секретов». Общая статистика по найденным секретным объектам показывает, что чаще всего в открытый доступ попадают ключи Google API. Также нередко встречаются приватные ключи RSA и идентификаторы Google OAuth.

Как секретный ключ Huawei попал в прошивки маршрутизаторов Cisco - 4

Исследование показало, что злоумышленник даже с минимальными ресурсами может скомпрометировать многих пользователей GitHub и найти массу секретных ключей. Чтобы бороться с этой проблемой, на GitHub разработали функцию сканирования токенов Token Scanning, которая сканирует репозитории, ищет токены и уведомляет поставщиков услуг об утечке информации.

Вторая проблема в том, что программы всё чаще подключают в качестве внешних зависимостей Open Source проекты на том же GitHub, не проверяя их соответствующим образом. Получается, что разработчики слепо доверяют чужому коду, за которым может никто не следить. Проблема описана, например, в статье Расса Кокса «Наша проблема c зависимостями», перевод которой есть на Хабре.


Как секретный ключ Huawei попал в прошивки маршрутизаторов Cisco - 5

Автор: GlobalSign_admin

Источник


* - обязательные к заполнению поля