Форматы
Чем открыть файл IMG
Что такое образ диска IMG, чем он отличается от ISO и как смонтировать или распаковать его на разных системах.
Исследователи из runZero раскрыли семь уязвимостей в FatFs — компактной библиотеке, которая читает и пишет файловые системы FAT и exFAT на USB-накопителях и картах памяти. Код FatFs встроен в прошивки миллионов устройств: камер, дронов, промышленных контроллеров и даже аппаратных крипто-кошельков. Специально сформированная флешка или SD-карта может вывести такое устройство из строя, а в худшем случае — привести к выполнению чужого кода.

Коротко: в начале июля 2026 компания runZero опубликовала семь уязвимостей в FatFs — библиотеке чтения FAT и exFAT с USB и SD-карт. Главная брешь CVE-2026-6682 (CVSS 7.6) — целочисленное переполнение при монтировании тома FAT32, способное привести к повреждению памяти и выполнению кода. Уязвимости срабатывают, когда устройство просто читает подсунутую флешку или карту. На момент раскрытия исправлена лишь одна из семи — в версии FatFs R0.16.
В первых числах июля 2026 года исследователи компании runZero раскрыли семь уязвимостей в библиотеке FatFs. FatFs — это крошечная переносимая библиотека на языке C, которая позволяет устройству читать и записывать файловые системы FAT и exFAT — те самые, что используются на USB-флешках, SD- и microSD-картах. Именно её встраивают в прошивки, когда нужно, чтобы устройство «понимало» вставленный съёмный носитель, но полноценной операционной системы под рукой нет.
Масштаб — главная причина, почему история важна. По данным runZero, FatFs встречается практически везде: она входит в прошивки камер видеонаблюдения, дронов, промышленных контроллеров, аппаратных криптокошельков и множества других устройств на встраиваемых и реального времени (RTOS) операционных системах. Всё это — техника, которая читает файлы с флешки или карты, не имея за спиной защитных механизмов «большой» ОС.
Общий сценарий одинаков: злоумышленник готовит носитель со специально искажённой структурой файловой системы и передаёт его жертве — физически или через устройство, куда носитель вставляется. Как только прошивка пытается смонтировать том или прочитать с него данные, разбор «битой» структуры приводит к сбою. Тяжесть последствий зависит от конкретной ошибки — от зависания до повреждения памяти и потенциального выполнения кода.
| Идентификатор | Суть |
|---|---|
| CVE-2026-6682 (7.6, High) | Целочисленное переполнение при монтировании тома FAT32: неверная арифметика даёт ложный размер файла, который дальше используется как длина чтения. На реальном железе — путь к повреждению памяти и выполнению кода. |
| CVE-2026-6687 (7.6, High) | Поле метки тома exFAT переполняет небольшой буфер, давая атакующему точку для повреждения памяти. |
| CVE-2026-6688 (7.6, High) | Длинные имена файлов переполняют обёртку, которую многие проекты пишут вокруг FatFs (например, копирование fname в буфер фиксированного размера через strcpy). |
| CVE-2026-6685 (6.1, Medium) | Переполнение в обработке кэша на фрагментированных томах — способно тихо повредить данные. |
| CVE-2026-6686 (4.6, Medium) | Файл, «растянутый» за свой конец, может выдать остатки ранее удалённых файлов — утечка данных. |
| CVE-2026-6683 (4.6, Medium) | Деление на ноль в разборе exFAT — аварийное завершение (отказ в обслуживании). |
| CVE-2026-6684 (4.6, Medium) | Некорректная таблица разделов GPT подвешивает устройство при монтировании. Единственная из семи, что уже исправлена. |
Обратите внимание на закономерность: под удар попали самые «структурные» части формата — монтирование тома, метка exFAT, таблица разделов, длинные имена. Это код, который вынужден доверять числам, записанным в самом носителе, а поддельный носитель эти числа контролирует полностью.
FAT и exFAT — «общий язык» съёмных носителей: именно в них форматируют флешки и карты, чтобы их читали и телефон, и камера, и автомагнитола. Если устройство ломается от одной вставленной карты, атака не требует ни интернета, ни пароля — достаточно физического доступа к слоту.
Отдельно примечателен способ, которым уязвимости обнаружили. По описанию runZero, исследователи направили на код FatFs связку из обычных инструментов: редактор Visual Studio Code и GitHub Copilot в автоматическом режиме, которому дали несколько простых текстовых заданий. Языковая модель сама собрала фаззер — программу, которая подаёт на вход коду поток намеренно искажённых данных, пока что-нибудь не сломается. Так и всплыли семь ошибок.
Проблема — в дистрибуции исправлений. На момент раскрытия из семи уязвимостей закрыта только одна, CVE-2026-6684, в версии FatFs R0.16. Библиотеку поддерживает, по сути, один разработчик, и runZero сообщила, что неоднократно пыталась связаться с ним, а также привлекла японский координационный центр JPCERT/CC — но ответа не получила. Даже когда выйдет патч, до конкретной камеры или контроллера он доберётся только с обновлением прошивки от её производителя, а такие обновления выходят редко и не для всех устройств.
Обычному пользователю патчить FatFs напрямую не нужно — эта библиотека спрятана внутри устройств. Но снизить риск можно организационно:
История с FatFs напоминает: опасность несёт не только сам файл, но и файловая система, в которую он упакован. Мы привыкли думать о рисках на уровне вложения — вредоносный документ, заражённый архив. Но флешка или карта памяти — это тоже структура данных, и её разбор может быть точкой атаки задолго до того, как вы увидите хоть один файл. Похожая логика недавно всплывала в других форматах-контейнерах: см. наш разбор образов дисков IMG и файлов ISO, где содержимое тоже приходится «монтировать» и разбирать.
Практический вывод простой и старый: не доверяйте носителям неизвестного происхождения, держите прошивки в актуальном состоянии и относитесь к съёмным дискам как к потенциально враждебному вводу. Базовые правила безопасной работы с файлами и загрузками мы собрали в разделе безопасность файлов.