Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/renukaselvar/lua_cve-2020-24370
أدوات عامةتحليل الثغرات الأمنيةالاستغلالتحليل الملفات الثنائية
GitHubrenukaselvar/lua_cve-2020-24370

lua_CVE-2020-24370

استغلال لـ CVE-2020-24370 يستهدف مترجم Lua 5.3، يوضح ثغرة أمنية في بيئة تشغيل لغة البرمجة النصية.

عرض المستودع
منذ سنة واحدةلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
Lua 5.3 readme blockquote, .display { border: solid #a0a0a0 2px ; border-radius: 8px ; padding: 1em ; margin: 0px ; } .display { word-spacing: 0.25em ; }

dl.display dd { padding-bottom: 0.2em ; }

tt, kbd, code { font-size: 12pt ; }

Lua مرحباً بك في Lua 5.3

حول · تثبيت · تغييرات · ترخيص · دليل المرجع

حول Lua

Lua هي لغة برمجة نصية قوية وسريعة وخفيفة الوزن وقابلة للتضمين، طورها فريق في PUC-Rio، الجامعة البابوية الكاثوليكية في ريو دي جانيرو بالبرازيل. Lua هي برمجيات حرة تستخدم في العديد من المنتجات والمشاريع حول العالم.

الموقع الرسمي لـ Lua يوفر معلومات كاملة عن Lua، بما في ذلك ملخص تنفيذي و توثيق محدث، خاصة الدليل المرجعي، والذي قد يختلف قليلاً عن النسخة المحلية الموزعة في هذه الحزمة.

تثبيت Lua

Lua موزعة على شكل كود مصدري. تحتاج إلى بنائه قبل استخدامه. بناء Lua يجب أن يكون سهلاً لأن Lua مطبقة بلغة ANSI C نقية وتُترجم دون تعديل على جميع المنصات المعروفة التي تحتوي على مترجم ANSI C. Lua تترجم أيضاً دون تعديل كلغة C++. التعليمات أدناه لبناء Lua مناسبة للأنظمة الشبيهة بـ Unix. انظر أيضاً تعليمات للأنظمة الأخرى و خيارات التخصيص.

إذا لم يكن لديك الوقت أو الرغبة لتجميع Lua بنفسك، احصل على نسخة ثنائية من LuaBinaries. جرب أيضاً LuaDist، توزيعة متعددة المنصات لـ Lua تتضمن بطاريات.

بناء Lua

في معظم المنصات الشبيهة بـ Unix، فقط قم بـ "make" مع هدف مناسب. إليك التفاصيل.

  1. افتح نافذة طرفية وانتقل إلى الدليل الأعلى، والذي يسمى lua-5.3.5. ملف Makefile هناك يتحكم في عملية البناء وعملية التثبيت.

  2. قم بـ "make" وانظر ما إذا كانت منصتك مدرجة. المنصات المدعومة حالياً هي:

    aix bsd c89 freebsd generic linux macosx mingw posix solaris

    إذا كانت منصتك مدرجة، فقط قم بـ "make xxx"، حيث xxx هو اسم منصتك.

    إذا لم تكن منصتك مدرجة، جرب الأقرب أو posix، generic، c89، بهذا الترتيب.

  3. التجميع يستغرق بضع لحظات فقط وينتج ثلاثة ملفات في دليل src: lua (المفسر)، luac (المترجم)، و liblua.a (المكتبة).

  4. للتحقق من أن Lua قد بُني بشكل صحيح، قم بـ "make test" بعد بناء Lua. هذا سيشغل المفسر ويطبع إصداره.

إذا كنت تستخدم Linux وتحصل على أخطاء في التجميع، تأكد من تثبيت حزمة تطوير readline (والتي غالباً ما تسمى libreadline-dev أو readline-devel). إذا حصلت على أخطاء ربط بعد ذلك، فجرب "make linux MYLIBS=-ltermcap".

تثبيت Lua

بمجرد بناء Lua، قد ترغب في تثبيته في مكان رسمي في نظامك. في هذه الحالة، قم بـ "make install". المكان الرسمي وطريقة تثبيت الملفات يتم تعريفها في ملف Makefile. ستحتاج على الأرجح إلى الصلاحيات المناسبة لتثبيت الملفات.

لبناء وتثبيت Lua في خطوة واحدة، قم بـ "make xxx install"، حيث xxx هو اسم منصتك.

لتثبيت Lua محلياً، قم بـ "make local". هذا سينشئ دليلاً install مع أدلة فرعية bin و include و lib و man و share، ويقوم بتثبيت Lua كما هو مدرج أدناه.

لتثبيت Lua محلياً، ولكن في دليل آخر، قم بـ "make install INSTALL_TOP=xxx"، حيث xxx هو الدليل الذي اخترته. يبدأ التثبيت من دليلي src و doc، لذا كن حذراً إذا لم يكن INSTALL_TOP مساراً مطلقاً.

bin:
lua luac
include:
lua.h luaconf.h lualib.h lauxlib.h lua.hpp
lib:
liblua.a
man/man1:
lua.1 luac.1

هذه هي الأدلة الوحيدة التي تحتاجها للتطوير. إذا كنت تريد فقط تشغيل برامج Lua، فأنت تحتاج فقط الملفات في bin و man. الملفات في include و lib ضرورية لتضمين Lua في برامج C أو C++.

التخصيص

ثلاثة أنواع من الأشياء يمكن تخصيصها عن طريق تحرير ملف:

  • أين وكيف يتم تثبيت Lua — حرر Makefile.
  • كيفية بناء Lua — حرر src/Makefile.
  • ميزات Lua — حرر src/luaconf.h.

لا تحتاج فعلياً لتحرير Makefile لأنه يمكنك تعيين المتغيرات ذات الصلة في سطر الأوامر عند استدعاء make. ومع ذلك، ربما من الأفضل تحرير وحفظ Makefile لتسجيل التغييرات التي قمت بها.

من ناحية أخرى، إذا كنت بحاجة لتخصيص بعض ميزات Lua، ستحتاج لتحرير src/luaconf.h قبل بناء وتثبيت Lua. الملف المحرر سيكون هو المثبت، وسيستخدم من قبل أي عملاء Lua تقوم ببنائهم، لضمان الاتساق. تخصيصات إضافية متاحة للخبراء عن طريق تحرير مصادر Lua.

بناء Lua على أنظمة أخرى

إذا كنت لا تستخدم أدوات Unix المعتادة، فإن تعليمات بناء Lua تعتمد على المترجم الذي تستخدمه. ستحتاج لإنشاء مشاريع (أو أي شيء يستخدمه المترجم) لبناء المكتبة، المفسر، والمترجم، كما يلي:

المكتبة:
lapi.c lcode.c lctype.c ldebug.c ldo.c ldump.c lfunc.c lgc.c llex.c lmem.c lobject.c lopcodes.c lparser.c lstate.c lstring.c ltable.c ltm.c lundump.c lvm.c lzio.c lauxlib.c lbaselib.c lbitlib.c lcorolib.c ldblib.c liolib.c lmathlib.c loslib.c lstrlib.c ltablib.c lutf8lib.c loadlib.c linit.c
المفسر:
library, lua.c
المترجم:
library, luac.c

لاستخدام Lua كمكتبة في برامجك الخاصة، ستحتاج لمعرفة كيفية إنشاء واستخدام المكتبات باستخدام المترجم الخاص بك. علاوة على ذلك، لتحميل مكتبات C ديناميكياً لـ Lua، ستحتاج لمعرفة كيفية إنشاء مكتبات ديناميكية وتحتاج للتأكد من أن دوال واجهة Lua API قابلة للوصول لتلك المكتبات الديناميكية — لكن لا تقم بربط مكتبة Lua داخل كل مكتبة ديناميكية. بالنسبة لـ Unix، نوصي بأن تكون مكتبة Lua مربوطة بشكل ثابت مع البرنامج المضيف ويتم تصدير رموزها من أجل الربط الديناميكي؛ ملف src/Makefile يفعل ذلك لمفسر Lua. بالنسبة لـ Windows، نوصي بأن تكون مكتبة Lua عبارة عن DLL. في جميع الحالات، يجب ربط المترجم luac بشكل ثابت.

كما ذكر أعلاه، يمكنك تحرير src/luaconf.h لتخصيص بعض الميزات قبل بناء Lua.

التغييرات منذ Lua 5.2

إليك التغييرات الرئيسية المقدمة في Lua 5.3. الدليل المرجعي يسرد عدم التوافقيات التي كان لا بد من تقديمها.

التغييرات الرئيسية

  • أعداد صحيحة (64 بت بشكل افتراضي)
  • دعم رسمي للأعداد ذات 32 بت
  • عوامل تشغيل على مستوى البت
  • دعم أساسي لـ utf-8
  • دوال لتغليف وفك تغليف القيم

إليك التغييرات الأخرى المقدمة في Lua 5.3:

اللغة

  • يمكن أن تحتوي userdata على أي قيمة Lua كقيمة مستخدم
  • قسمة أرضية
  • قواعد أكثر مرونة لبعض الميتاميثودات

المكتبات

  • ipairs ومكتبة الجداول تحترمان الميتاميثودات
  • خيار strip في string.dump
  • مكتبة الجداول تحترم الميتاميثودات
  • دالة جديدة table.move
  • دالة جديدة string.pack
  • دالة جديدة string.unpack
  • دالة جديدة string.packsize

C API

  • واجهة برمجة تطبيقات أبسط لوظائف الاستمرار في C
  • lua_gettable والدوال المشابهة تعيد نوع القيمة الناتجة
  • خيار strip في lua_dump
  • دالة جديدة: lua_geti
  • دالة جديدة: lua_seti
  • دالة جديدة: lua_isyieldable
  • دالة جديدة: lua_numbertointeger
  • دالة جديدة: lua_rotate
  • دالة جديدة: lua_stringtonumber

مفسر Lua المستقل

  • يمكن استخدامه كآلة حاسبة؛ لا حاجة للبادئة بـ '='
  • جدول arg متاح لجميع الأكواد

الترخيص

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

الشرط الوحيد هو أنه إذا استخدمت Lua، فعليك منحنا الفضل من خلال تضمين إشعار حقوق النشر المناسب في مكان ما في منتجك أو توثيقه.

للتفاصيل، انظر هذا.

Copyright © 1994–2017 Lua.org, PUC-Rio.

يُمنح الإذن بموجب هذا، مجاناً، لأي شخص يحصل على نسخة من هذا البرنامج والملفات المرتبطة به (البرنامج)، للتعامل في البرنامج دون قيود، بما في ذلك دون حصر حقوق الاستخدام، النسخ، التعديل، الدمج، النشر، التوزيع، الترخيص، و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين يتم توفير البرنامج لهم بالقيام بذلك، وفقاً للشروط التالية:

يجب تضمين إشعار حقوق النشر أعلاه وهذا الإشعار بالإذن في جميع النسخ أو الأجزاء الجوهرية من البرنامج.

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

آخر تحديث: Mon Jun 18 22:57:33 -03 2018

تنزيل الأداة