Как стать автором
Обновить

DLL HiJacking в Qt-приложениях

Время на прочтение1 мин
Количество просмотров2.8K
В марте 2011 года я писал о DLL HiJacking в VirtualBox. Тогда разработчики сообщили, что проблема не в их продукте, а в Qt, на котором основана их продукция.
Наконец, найдя время, я решил проверить так ли это. Оказалось, что так.

Мной были проверены:


И они оказались уязвимы.


Видео демонстрация уязвимости (видео без звука):


Однако, версия Oracle VirtualBox 4.1.2 уже не была уязвима. Пытаясь выяснить с какой версии Qt проблема решилась, стал изучать Qt changelog, где обнаружил вот такую запись для версии 4.7.1:

QLibrary
* [QT-3825] System libraries are only loaded from the system directories.


Для тех, кто пользуется приложениями, написанными на Qt, рекомендую проверить версии библиотек (Qt*.dll), находящихся в той же директории, что и исполняемый файл приложения. Если их версия < 4.7.1 обновите их вручную, скачав Qt Libraries.

Список потенциально уязвимых приложений (часть из них уже используют обновлённую Qt).

UPD: Перевод поста на английский

Ссылки по теме:
  1. DLL Hijacking (инструментарий для поиска, эксплуатация через Metasploit)
  2. Прибыльный DLL Hijacking (спасибо elgrand)
  3. Microsoft Security Advisory (2269637)
    Insecure Library Loading Could Allow Remote Code Execution
    (спасибо ComodoHacker)
  4. Qt: Security announcement – Windows DLL preloading
  5. Опубликован новый раздел реестра CWDIllegalInDllSearch, позволяющий управлять алгоритмом пути поиска DLL
Теги:
Хабы:
Всего голосов 55: ↑53 и ↓2+51
Комментарии12

Публикации

Истории

Работа

Ближайшие события

27 августа – 7 октября
Премия digital-кейсов «Проксима»
МоскваОнлайн
28 сентября – 5 октября
О! Хакатон
Онлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
10 – 11 октября
HR IT & Team Lead конференция «Битва за IT-таланты»
МоскваОнлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн