Если в двух словах, то в библиотеке UNACEV2.DLL (не обновлялась с 2006 года) архиватора WinACE, которую использует WinRAR для распаковки ACE архивов (этот формат насколько я понимаю был популярен в Европе, особенно в Германии) дыра, которая позволяет распаковать архив в любую папку, в том числе в автозагрузку. Проблема ещё в том, что WinRAR проверяет архив по сигнатуре, т.е. ACE архив можно переименовать в RAR
https://research.checkpoint.com/extracting-code-execution-from-winrar/
Здравствуйте, Mihas, Вы писали:
M>И на Far Manager тоже батон крошат. Только я не понял, есть ли в нем дыра? Так-то, в его состав входит ace32.exe.
From the headers we found in the FarManager project, we came up with the following signature:
INT __stdcall ACEInitDll(pACEInitDllStruc DllData);
INT __stdcall ACEExtract(LPSTR ArchiveName, pACEExtractStruc Extract);
Судя по всему это про код плагина —
https://github.com/Magzimga/farmanager/blob/master/plugins/newarc/src/plugins/ace/ace.Class.cpp#L42
m_pfnInitDll = (ACEINITDLL)GetProcAddress (m_hModule, "ACEInitDll");
m_pfnReadArchiveData = (ACEREADARCHIVEDATA)GetProcAddress (m_hModule, "ACEReadArchiveData");
m_pfnList = (ACELIST)GetProcAddress (m_hModule, "ACEList");
m_pfnTest = (ACETEST)GetProcAddress (m_hModule, "ACETest");
m_pfnExtract = (ACEEXTRACT)GetProcAddress (m_hModule, "ACEExtract");
То есть опять же ссылка на уязвимую DLL. Но в стандартной поставке (проверил поиском у себя) нет файла, который бы экспортировал такие функции (проверяется обычным текстовым поиском).
Судя по всему этот плагин присутствует в дереве исходников, но инсталлятор третьего фара ставит не его, а arclite (
https://github.com/Magzimga/farmanager/tree/master/plugins/arclite)
Здравствуйте, edton, Вы писали:
E>.. дыра, которая позволяет распаковать архив в любую папку, в том числе в автозагрузку.
А если мне именно это и надо, распаковать в любую папку.
E> Проблема ещё в том, что WinRAR проверяет архив по сигнатуре, т.е. ACE архив можно переименовать в RAR
И какая же это проблема? Кого обманывают переименования файлов?
... << RSDN@Home 1.0.0 alpha 5 rev. 0>>