
Уязвимость обхода каталогов в файлах .ONEPKG в Microsoft Office OneNote 2007 (CVE-2014-2815) приводит к выполнению произвольного кода.
Уязвимость обхода каталогов в файлах ".ONEPKG" Microsoft Office OneNote 2007 (CVE-2014-2815), приводящая к произвольному выполнению кода Уязвимость обхода каталогов в файлах ".ONEPKG" Microsoft Office OneNote 2007 (CVE-2014-2815), приводящая к произвольному выполнению кода
OneNote 2007 подвержен уязвимости, которая заставляет программу извлекать файлы, содержащиеся внутри файла ".onepkg", использующего "MS CAB Format", в произвольное место в системе с помощью родительского каталога ".." в именах файлов. Поскольку OneNote также не проверяет расширения файлов, можно извлечь небезопасные файлы в произвольные места.
В Windows XP обычный пользователь имеет права на запись в большинство мест системы, поэтому злоумышленник может извлечь DLL файл (ntshrui.dll) в каталог установки Microsoft Office, который загружается OneNote сразу после обработки файла ".onepkg":
c:\program files\microsoft office\office12\ntshrui.dll
В Windows Vista и выше обычный пользователь ограничен функцией "UAC", поэтому можно извлекать файлы только в подкаталоги профиля текущего пользователя. Возможно извлечение исполняемого файла в папку автозагрузки, что также приводит к произвольному выполнению кода при перезагрузке компьютера.
Для воспроизведения используйте программу-архиватор CAB (например, 'makecab.exe') или вашу IDE с языком программирования, поддерживающим формат MS CAB, и вставьте файлы с длинными именами в новый CAB-архив. и отредактируйте имена файлов, заменив символы на родительские каталоги "..". Переименуйте полученный CAB-архив в ".onepkg".
В данном PoC использовалось приложение Windows Write, которое должно быть помещено в папку автозагрузки. Я назвал его:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaWrite.exe
затем, используя технику обхода пути, имя файла внутри CAB-архива стало:
......\roaming\microsoft\windows\start menu\programs\startup\Write.exe
Уязвимые: MS Office 2007 SP3 Протестировано на: Windows XP SP3, Vista SP2, 7 SP1 + Office 2007 SP3 (без исправления) (другие ОС, вероятно, также уязвимы)