Если определенные dll'ки лежит в директории, в которой юзер двойным щелчком загружает документ Microsoft Office или запускает его через "Пуск | Выполнить", то эти dll'ки будут загружены вместо официальных dll'лок Microsoft. Это позволяет извлечь нужный программный код и захватить контроль над компьютером.
Прореха действует в:
MS Office 2000
Windows 98
Windows 2000
Если в директории с документом офиса лежат riched20.dll или msi.dll, то при двойном щелчке мыши на документе Microsoft Office загружаются dll'ки + функции DllMain(). Excel не работает с riched20.dll, но работает с msi.dll.
Демонстрация:
1) Скачайте dll1.cpp и сформируйте нужный файл
2) Переименуйте dll1.dll в riched20.dll
3) Поместите riched20.dll в директорию по выбору
4) Закройте все приложения Офиса
5) Из Проводника двойным щелчком мыши загрузите документ Офиса (предполагается, что в этой директории лежит наш riched20.dll).
Предпочтительнее загружать документ Word'а.
Защита:
Не запускайте документы Офиса "double click"'ом и не используйте "Пуск | Выполнить". Можно использовать "Пуск | Открыть документ Office"