Эксперт Positive Technologies Георгий Зайцев обнаружил уязвимость в компоненте Application Control, входящем в состав специализированной защиты для встроенных систем Kaspersky Embedded Systems Security версий 1.1 и 1.2. Ошибка была найдена в ходе аудита защищенности банкомата, на котором был установлен этот программный продукт. Эксплуатация данной уязвимости потенциально позволяла злоумышленнику в конечном счете осуществить установку неизвестного ПО на банкомат, а затем ― развить атаку вплоть до снятия всех денег из устройства. «Лаборатория Касперского» оперативно устранила данную уязвимость в актуальных версиях решения.
С технической точки зрения эксплуатация данной уязвимости позволяла злоумышленнику загрузить сервис Kaspersky Embedded Systems Security до такого состояния, что он оказывался не в состоянии в отведенное время обрабатывать запросы на проверку запуска файлов. Это, в свою очередь, позволяло атакующему запускать любые приложения не из белого списка. Таким образом злоумышленник получал возможность запускать на банкомате. exe-файлы (например, с флешки или по сети) для повышения своих привилегий в системе, ее заражения или просто для снятия всех имеющихся в устройстве денег.
«Принцип белого списка разрешает запуск на устройстве только доверенных программ. Уязвимость в Application Control открывала два пути для обхода этого ограничения и запуска нужного злоумышленнику файла, ― комментирует Георгий Зайцев. ― В первом случае в конец исполняемого файла злоумышленник мог дописать большое количество любых ничего не значащих данных. После нужно было дважды запустить выполнение файла. При первом запуске происходит вычисление хеш-суммы файла, то есть его идентификатора: на его основе должно приниматься решение о разрешении или запрете запуска. При достаточном размере файла этот процесс займет больше времени, чем отведено на проверку. И в результате по истечении выделенного срока файл будет исполнен».
Поскольку Kaspersky Embedded Systems Security позволяет сохранять результаты, для того чтобы избежать пересчета хеш-суммы при последующих запусках, этот метод сработает только при первом запуске файла.
«Второй способ позволял обойти и это ограничение и заключался в одновременном запуске большого количества экземпляров приложения. Это также приводило, грубо говоря, к „зависанию“ приложения и, как результат, — к запуску файла не из белого списка», ― отметил Георгий Зайцев.
«Лаборатория Касперского» уже выпустила патч для устранения описанной уязвимости в версиях решения 1.1 и 1.2. Кстати, в этом же патче была исправлена еще одна найденная экспертами Positive Technologies уязвимость, позволяющая отключать функциональность Application Control путем отправки специального запроса к драйверу klif. sys. В новой версии Kaspersky Embedded Systems Security 2.0 данные уязвимости отсутствуют.
Это не первая проблема безопасности, обнаруженная экспертами Positive Technologies в защитном софте для банкоматов. В конце 2016 года исследователи компании выявили опасную уязвимость в системе Solidcore, являющейся частью продукта McAfee Application Control (MAC).