تنزيل برنامج UPX 5.0.1 مباشر

يسمح لك تنزيل الإصدار الأحدث من UPX بالحصول على برنامج سهل الاستخدام لضغط الملفات دون فقدان أو تشويه البيانات المدمجة، مما يجعله أداة مميزة في الحفاظ على أداء وحدات المعالجة.

يعتمد الإصدار الأخير من البرنامج على استخدام مجموعة من الأكواد التي تضمن الحفاظ على خفة البرنامج وتعزيز أدائه كوحدة شائعة الاستخدام يمكن تطبيقها على عدة تنسيقات في ملفات أنظمة التشغيل المتنوعة.

تشمل التحديثات تحسين معالجة البيانات بطريقة تحقق السرعة المطلوبة في فك/ضغط الملفات دون إتلاف هيكلها المعياري مع الحفاظ على الخصوصية وسلامة البيانات.

تنزيل الإصدار الأحدث من UPX

برنامج UPX، وهو اختصار لـ Ultimate Packer for eXecutables، هو برنامج مجاني ومفتوح المصدر لحزم الملفات القابلة للتنفيذ ويدعم مجموعة من تنسيقات الملفات لأنظمة تشغيل مختلفة.

يستخدم البرنامج في ضغط الملفات الكبيرة على الكمبيوتر لتقليل المساحة التي تشغلها على القرص الصلب أو لتسهيل رفعها وإرسالها عبر الإنترنت، ويتميز بضغط الملفات التنفيذية المسؤولة عن تشغيل البرامج.

يتكون كود UPX بشكل رئيسي من جزأين:

  • كود فك الضغط (Stubs) الموجود في مجلد src/stub، وهو كود صغير يضاف إلى كل ملف تنفيذي مضغوط لفك الضغط عند تشغيل الملف، وهذه الأجزاء مكتوبة بلغة التجميع ويتم تحويلها إلى ملفات C header files.
  • كود برنامج الضغط (Packer) الموجود في مجلد src، وهو الكود الرئيسي لبرنامج UPX الذي يقوم بضغط الملفات التنفيذية.

يقلل UPX حجم ملفات البرامج وملفات DLL بنسبة 50%-70%، مما يقلل من مساحة القرص وأوقات تحميل الشبكة وأوقات التنزيل وتكاليف التوزيع والتخزين الأخرى.

تظل البرامج والمكتبات المضغوطة بواسطة UPX قابلة للتشغيل كما كانت من قبل دون أي تأثير على وقت التشغيل أو الذاكرة لمعظم التنسيقات المدعومة.

المزايا الجديدة في الإصدار الأخير

يتضمن الإصدار الأخير من UPX العديد من المزايا التي تضمن تحقيق فاعلية وأداء محسّن، ومنها:

  • استخدام memfd_create لدعم وضع فرض SELinux.
  • تنسيق ELF يتيح فك الضغط على خطوتين للعمل في المستقبل لكل PT_LOAD.
  • “عند استخدام الخيار –unmap-all-pages، لا يحاول البرنامج الرجوع إلى ملفه التنفيذي عبر المسار /proc/self/exe.”
  • في ملفات ELF، أصبح القسم PT_MIPS_ABIFLAGS يدرج الآن في المخرجات المضغوطة، مما يسمح لـ qemu-mips باختيار محاكاة (floating-point) المناسبة.
  • “في ملفات ELF، تم إجراء عدة تعديلات بسيطة لإصلاح مشكلات صغيرة اكتشفتها تقنية الاختبار (fuzzing).”

دعم memfd_create لوضع فرض SELinux

يتضمن الإصدار الأخير من UPX استخدام نظام memfd_create، وهو استدعاء نظام حديث في Linux يسمح بإنشاء ملفات في الذاكرة بشكل مجهول، وهذه الملفات تتصرف مثل أي ملف آخر ويمكن تمريرها إلى العمليات الأخرى باستخدام واصفات الملفات.

نظام SELinux هو نظام أمان قوي لنواة Linux يوفر تحكمًا صارمًا في من يمكنه فعل ماذا داخل النظام، بالإضافة إلى منع الاختراقات أو إساءة استخدام البرامج حتى لو كانت تعمل بحسابات تملك صلاحيات.

ما هو “وضع الفرض” (enforcing mode)

يمتلك SELinux ثلاثة أوضاع تشغيل:

Enforcing الفرض يمنع بالكامل كل ما لا تسمح به السياسات، بمعنى أن أي محاولة مخالفة يتم منعها وتسجيلها
Permissive متساهل لا يمنع أي شيء لكنه يسجل ما كان يمنعه لو كان مفعلا، ويعد مفيدًا في حالات الاختبار قبل التفعيل الكامل
Disabled معطل لا يعمل على الإطلاق

استخدام memfd_create في UPX يوفر طريقة لإنشاء مناطق ذاكرة لفك الضغط تكون أكثر توافقًا مع قيود SELinux في وضع الفرض.

قد تتطلب الطرق القديمة لإنشاء مناطق ذاكرة أذونات معينة قد لا تسمح بها سياسات SELinux الصارمة، وباستخدام memfd_create يمكن لـ UPX العمل بسلاسة أكبر حتى في البيئات التي تطبق SELinux بشكل صارم.

فك الضغط على خطوتين

يدعم الإصدار الأخير من UPX تنسيق Executable and Linkable Format أو ELF، وهو تنسيق ملف شائع للملفات التنفيذية والمكتبات المشتركة على أنظمة Unix والأنظمة الشبيهة بـ Unix بما في ذلك Linux.

في تنسيق ELF، هناك أقسام تسمى PT_LOAD وهي الأجزاء التي يتم تحميلها إلى الذاكرة عند تشغيل البرنامج، وPT_LOAD هو نوع من “القطاعات” “segments” في ملف ELF يمثل أجزاء من الملف التي يجب تحميلها في الذاكرة أثناء تشغيل البرنامج، مثل كود البرنامج وبياناته.

يشير التحسين إلى قدرة البرنامج على التعامل مع عملية فك الضغط بطريقة أكثر مرونة، عن طريق إمكانية فك ضغط جزء معين عند الحاجة إليه أو في مرحلة لاحقة من عملية التحميل بدلاً من فك ضغط جميع الأجزاء مرة واحدة في البداية.

ملف unmap-all-pages

مسار /proc/self/exe هو مسار خاص في نظام لينكس يشير إلى الملف التنفيذي الحالي للبرنامج الذي يعمل، ففي حال أراد البرنامج معرفة أو استخدام نسخة من نفسه يمكنه أن يقرأ هذا المسار.

خيار unmap-all-pages المتاح في الإصدار الأخير من UPX يستخدم لإلغاء كل الصفحات التي تحتوي على الكود والبيانات من الذاكرة، ويخدم ذلك عدد من الأغراض الأمنية أو حالات التأكد من أن البرنامج لا يعتمد على الملف التنفيذي المخزن على القرص.

محاكاة (floating-point) المناسبة

يدعم الإصدار الأخير من UPX معالجات MIPS، وهي عائلة من معالجات (Reduced Instruction Set Computing) أو RISC، وهي شائعة في الأنظمة المدمجة، وPT_MIPS_ABIFLAGS هو نوع من العلامات أو المعلومات الخاصة بواجهة التطبيق الثنائية (ABI) لمعمارية MIPS في ملفات ELF، حيث تحدد هذه العلامات جوانب مثل اصطلاحات استدعاء الدوال وكيفية تمثيل أنواع البيانات.

qemu-mips هو برنامج محاكي مفتوح المصدر يمكنه محاكاة أنظمة MIPS، ومحاكاة (Floating Point) هي طريقة لتمثيل الأرقام الحقيقية في أجهزة الكمبيوتر.

لم يكن UPX يحتفظ أو ينقل معلومات PT_MIPS_ABIFLAGS عند ضغط ملفات ELF الخاصة بـ MIPS، ومع التحديث الجديد يقوم البرنامج بتضمين هذه المعلومات في الملف المضغوط.

تقنية الاختبار (Fuzzing)

هي برمجيات تتضمن تغذية البرنامج بكميات كبيرة من بيانات الإدخال العشوائية أو المشوهة للكشف عن الأخطاء والثغرات الأمنية المحتملة.

يمكن التطوير من الكشف عن بعض العيوب أو المشاكل في طريقة تعامل UPX مع ملفات ELF بما يضمن تحسين استقرار وموثوقية البرنامج.

خصائص الإصدار الأخير من UPX

يضمن تنزيل الإصدار الأخير من UPX الحصول على:

  • برنامج مفتوح المصدر بما يسمح لبرامج الأمان ومكافحة الفيروسات بتحليل التطبيقات المضغوطة لضمان سلامتها وأمانها.
  • نسبة ضغط مذهلة تتيح لك تقليص أحجام التوزيع الخاصة بك بشكل فعال.
  • فك الضغط السريع بسرعة دون أي تكلفة إضافية للذاكرة.
  • الحفاظ على مجموعات التحقق الداخلية للملفات المضغوطة وغير المضغوطة بما يضمن سلامة البيانات.
  • برنامج يدعم تنسيقات قابلة للتنفيذ مختلفة، بما في ذلك برامج Windows وملفات DLL وتطبيقات macOS وملفات Linux القابلة للتنفيذ.
  • سهولة وقابلية النقل حيث تم تصميم البرنامج باستخدام لغة C++ بما يضمن التوافق عبر أنظمة مختلفة.
  • قابلية التوسع ودمج تنسيقات التنفيذ الجديدة وخوارزميات الضغط بسهولة.
  • برنامج مجاني ومفتوح المصدر

يضمن تنزيل الإصدار الأخير من UPX الحصول على طبقة برنامج خفيفة تدعم بيئة الاستخدام بطريقة تتطابق مع أنظمة التشغيل المختلفة.



تحميل مباشر