Тот случай, когда Android оказался круче. В BitChat нашли дыру, которая работала только на айфонах
NewsMakerПопулярный Bluetooth-мессенджер преподнёс крайне неприятный сюрприз своей аудитории.
Специалисты компании BARGHEST обнаружили уязвимость в децентрализованном мессенджере BitChat , которая позволяла внедрять поддельные сообщения в Bluetooth-mesh сеть приложения. Ошибка затрагивала версию BitChat для iOS и могла использоваться для рассылки спама, подмены сообщений и нарушения работы сети без подключения к интернету.
Анализ показал цепочку ошибок, приводящую к так называемому отравлению кэша. При таком сценарии злоумышленник отправляет специально сформированный пакет данных, который клиент принимает как легитимный и сохраняет в локальном кэше. После синхронизации с другими устройствами этот пакет автоматически распространяется по всей сети.
BitChat предназначен для обмена сообщениями без центральной инфраструктуры. Устройства находят друг друга через Bluetooth Low Energy и пересылают сообщения по принципу gossip-сети, постепенно распространяя данные между участниками. Каждый узел хранит локальный кэш сообщений и делится им с новыми соседями при подключении. Именно кэш выступает ключевой точкой доверия системы: только проверенные сообщения должны попадать в него и затем передаваться другим пользователям.
В версии 1.15.0 для iOS механизм проверки работал некорректно. Клиент мог принять пакет без криптографической подписи и сохранить его в кэше. После сохранения такой пакет считался обычным сообщением и распространялся при последующей синхронизации с другими устройствами.
Специалисты компании BARGHEST обнаружили уязвимость в децентрализованном мессенджере BitChat , которая позволяла внедрять поддельные сообщения в Bluetooth-mesh сеть приложения. Ошибка затрагивала версию BitChat для iOS и могла использоваться для рассылки спама, подмены сообщений и нарушения работы сети без подключения к интернету.
Анализ показал цепочку ошибок, приводящую к так называемому отравлению кэша. При таком сценарии злоумышленник отправляет специально сформированный пакет данных, который клиент принимает как легитимный и сохраняет в локальном кэше. После синхронизации с другими устройствами этот пакет автоматически распространяется по всей сети.
BitChat предназначен для обмена сообщениями без центральной инфраструктуры. Устройства находят друг друга через Bluetooth Low Energy и пересылают сообщения по принципу gossip-сети, постепенно распространяя данные между участниками. Каждый узел хранит локальный кэш сообщений и делится им с новыми соседями при подключении. Именно кэш выступает ключевой точкой доверия системы: только проверенные сообщения должны попадать в него и затем передаваться другим пользователям.
В версии 1.15.0 для iOS механизм проверки работал некорректно. Клиент мог принять пакет без криптографической подписи и сохранить его в кэше. После сохранения такой пакет считался обычным сообщением и распространялся при последующей синхронизации с другими устройствами.