Jump to content

УПХ

Первоначальный выпуск 26 мая 1998 г .; 26 лет назад ( 1998-05-26 )
Стабильная версия
4.2.2 / 3 января 2024 г .; 6 месяцев назад ( 03.01.2024 )
Репозиторий
Написано в С++ , ассемблер
Операционная система Microsoft Windows , Linux , macOS , DOS , Atari TOS
Платформа i386 , MIPS , AMD64 , ARM , PowerPC , m68k
Доступно в Английский
Тип Исполняемое сжатие
Лицензия GPL, за исключением сжатых исполняемых файлов, [1] запатентован для алгоритма сжатия в двоичных дистрибутивах [2]
Веб-сайт упх .github .что

UPX ( Ultimate Packer for Executables ) — это с открытым исходным кодом, бесплатный упаковщик исполняемых файлов поддерживающий ряд форматов файлов из разных операционных систем. [3] [4]

UPX использует алгоритм сжатия данных под названием UCL. [5] который представляет собой реализацию с открытым исходным кодом частей собственной разработки NRV ( Not Really Vanished ). [6] алгоритм. [2]

UCL спроектирован настолько простым, что декомпрессор может быть реализован всего в несколько сотен байтов кода. UCL не требует выделения дополнительной памяти для распаковки, что является значительным преимуществом, которое означает, что исполняемый файл, упакованный в UPX, обычно не требует дополнительной памяти.

UPX (начиная с бета-версии 2.90) может использовать LZMA на большинстве платформ; однако по умолчанию для 16-разрядной версии это отключено из-за низкой скорости распаковки на старых компьютерах (используйте --lzma чтобы заставить его включиться).

Начиная с версии 3.91, UPX также поддерживает 64-битные (x64) PE- файлы на платформе Windows . [7] В настоящее время эта функция объявлена ​​экспериментальной .

Декомпрессия

[ редактировать ]

UPX поддерживает два механизма распаковки: метод на месте и извлечение во временный файл .

Метод «на месте», при котором исполняемый файл распаковывается в память, возможен не на всех поддерживаемых платформах. Его преимущество состоит в том, что он более эффективен с точки зрения памяти и что среда, настроенная ОС, остается правильной.

Остальное использует извлечение во временный файл. Эта процедура связана с дополнительными накладными расходами и другими недостатками; однако он позволяет упаковывать любой формат исполняемого файла. Метод извлечения во временный файл имеет ряд недостатков:

  • Специальные разрешения игнорируются, например suid .
  • argv[0] не будет иметь смысла.
  • Несколько запущенных экземпляров исполняемого файла не могут использовать общие сегменты.

Немодифицированная упаковка UPX часто обнаруживается и распаковывается антивирусными программными сканерами. UPX также имеет встроенную функцию распаковки немодифицированных исполняемых файлов, упакованных сам с собой.

Поддерживаемые форматы

[ редактировать ]

UPX поддерживает следующие форматы: [8]

UPX в настоящее время не поддерживает PE- файлы, содержащие код CIL, предназначенный для запуска в .NET Framework .

Примечания

[ редактировать ]
  1. ^ Перейти обратно: а б с Для целей DOS UPX поддерживает специальную опцию. -8086 чтобы заставить встроенный распаковщик стать совместимым с 8088/8086 процессорами . , чтобы сжатые файлы можно было запускать и распаковывать даже на самых ранних компьютерах под управлением DOS
  2. ^ Возможность сжатия файлов в стиле DOS .COM можно использовать также для сжатия других двоичных исполняемых файлов. некоторые файлы ядра FreeDOS и EDR-DOS сжимаются таким образом с помощью UPX. Известно, что
  3. ^ Возможность сжатия файлов в стиле DOS .COM можно использовать также для сжатия неисполняемых файлов двоичных данных , если драйвер/приложение, использующее эти файлы, было улучшено для обнаружения файлов, сжатых UPX, и перехода к декомпрессору, встроенному в файл. . FreeDOS использует это для файлов .CPX и файлов шрифтов .CPI, сжатых UPX. Известно, что
  1. ^ «Лицензионное соглашение ЮПХ» . Архивировано из оригинала 12 марта 2016 г. Проверено 14 сентября 2016 г.
  2. ^ Перейти обратно: а б «Руководство хакера UPX» . Гитхаб . 19 февраля 2022 года. Архивировано из оригинала 14 мая 2022 года . Проверено 14 сентября 2016 г.
  3. ^ Марак, Виктор (2015). Основы анализа вредоносных программ для Windows . Пакт Паблишинг. п. 188. ИСБН  978-1-78528-151-8 . Архивировано из оригинала 14 мая 2022 года . Проверено 22 ноября 2015 г. Упаковщики, такие как Ultimate Packer for Executables (UPX), скорее являются компрессорами исполняемых файлов, поскольку основной целью является уменьшение размера, а не запутывание, которое может быть побочным продуктом...
  4. ^ Бланден, Билл (2013). Руткитный арсенал (второе изд.). Джонс и Бартлетт Обучение. стр. 353–355. ISBN  978-1-4496-2636-5 . Архивировано из оригинала 14 мая 2022 года . Проверено 22 ноября 2015 г. Одним из наиболее распространенных упаковщиков исполняемых файлов является UPX (Ultimate Packer для исполняемых файлов). Он не только поддерживает десятки различных форматов исполняемых файлов, но и его исходный код доступен в Интернете.
  5. ^ Маркус Оберхумер. «Библиотека сжатия данных UCL» . oberhumer.com . Архивировано из оригинала 28 июня 2024 г. Проверено 11 января 2022 г.
  6. ^ Маркус Оберхумер. «Библиотека сжатия NRV» . Архивировано из оригинала 9 сентября 2012 года.
  7. ^ «Новости ЮПХ» . Архивировано из оригинала 4 января 2018 г. Проверено 14 сентября 2016 г.
  8. ^ upx(1) Linux по основным командам Руководство
  9. ^ "dos расширитель rtm32 - формат файла заглушки?\ВОГОНС" . Архивировано из оригинала 11 января 2022 г. Проверено 11 января 2022 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: f20dc3165d423ed06e12471729c3aeec__1719581880
URL1:https://arc.ask3.ru/arc/aa/f2/ec/f20dc3165d423ed06e12471729c3aeec.html
Заголовок, (Title) документа по адресу, URL1:
UPX - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)