Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
lua_CVE-2020-24370 — CVE-2020-24370 के लिए शोषण जो Lua 5.3 इंटरप्रेटर को लक्षित करता है, स्क्रिप्टिंग भाषा के रनटाइम में एक कमजोरी प्रदर्शित करता है। | Kitploit
उपकरण/GitHubGitHub/renukaselvar/lua_cve-2020-24370
सामान्य उपयोगिताएँभेद्यता विश्लेषणशोषणबाइनरी विश्लेषण
GitHubrenukaselvar/lua_cve-2020-24370

lua_CVE-2020-24370

CVE-2020-24370 के लिए शोषण जो Lua 5.3 इंटरप्रेटर को लक्षित करता है, स्क्रिप्टिंग भाषा के रनटाइम में एक कमजोरी प्रदर्शित करता है।

रिपॉजिटरी देखें
1 साल पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें
Lua 5.3 पढ़ें 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 सही ढंग से बना है, Lua बनाने के बाद "make test" करें। यह इंटरप्रेटर को चलाएगा और इसका संस्करण प्रिंट करेगा।

यदि आप Linux चला रहे हैं और संकलन त्रुटियाँ मिलती हैं, तो सुनिश्चित करें कि आपने readline डेवलपमेंट पैकेज स्थापित किया है (जो शायद libreadline-dev या readline-devel नाम का है)। यदि उसके बाद लिंक त्रुटियाँ मिलती हैं, तो "make linux MYLIBS=-ltermcap" आज़माएं।

Lua स्थापित करना

एक बार जब आप Lua बना लेते हैं, तो आप इसे अपने सिस्टम में आधिकारिक स्थान पर स्थापित करना चाह सकते हैं। इस मामले में, "make install" करें। आधिकारिक स्थान और फाइलों को स्थापित करने का तरीका Makefile में परिभाषित किया गया है। आपको संभवतः फाइलें स्थापित करने के लिए उपयुक्त अनुमतियों की आवश्यकता होगी।

एक चरण में Lua बनाने और स्थापित करने के लिए, "make xxx install" करें, जहां xxx आपके प्लेटफॉर्म का नाम है।

Lua को स्थानीय रूप से स्थापित करने के लिए, "make local" करें। यह उपनिर्देशिकाओं bin, include, lib, man, share के साथ एक install निर्देशिका बनाएगा, और 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 में फाइलें C या C++ प्रोग्राम में Lua को एम्बेड करने के लिए आवश्यक हैं।

अनुकूलन

तीन प्रकार की चीजों को एक फाइल संपादित करके अनुकूलित किया जा सकता है:

  • Lua को कहाँ और कैसे स्थापित करें — Makefile संपादित करें।
  • Lua कैसे बनाएं — src/Makefile संपादित करें।
  • Lua सुविधाएँ — src/luaconf.h संपादित करें।

आपको वास्तव में Makefiles को संपादित करने की आवश्यकता नहीं है क्योंकि आप make को कॉल करते समय कमांड लाइन पर प्रासंगिक चर सेट कर सकते हैं। फिर भी, किए गए परिवर्तनों को रिकॉर्ड करने के लिए Makefiles को संपादित और सहेजना शायद सबसे अच्छा है।

दूसरी ओर, यदि आपको कुछ Lua सुविधाओं को अनुकूलित करने की आवश्यकता है, तो आपको Lua बनाने और स्थापित करने से पहले src/luaconf.h संपादित करना होगा। संपादित फाइल स्थापित की जाएगी, और इसका उपयोग आपके द्वारा बनाए गए किसी भी 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
इंटरप्रेटर:
लाइब्रेरी, lua.c
कंपाइलर:
लाइब्रेरी, luac.c

अपने स्वयं के प्रोग्राम में Lua को लाइब्रेरी के रूप में उपयोग करने के लिए आपको यह जानना होगा कि अपने कंपाइलर के साथ लाइब्रेरी कैसे बनाएं और उपयोग करें। इसके अलावा, Lua के लिए C लाइब्रेरी को गतिशील रूप से लोड करने के लिए आपको यह जानना होगा कि गतिशील लाइब्रेरी कैसे बनाएं और आपको यह सुनिश्चित करना होगा कि Lua API फलन उन गतिशील लाइब्रेरी के लिए सुलभ हों — लेकिन नहीं Lua लाइब्रेरी को प्रत्येक गतिशील लाइब्रेरी में लिंक करें। Unix के लिए, हम अनुशंसा करते हैं कि Lua लाइब्रेरी को स्थिर रूप से होस्ट प्रोग्राम में लिंक किया जाए और इसके प्रतीकों को गतिशील लिंकिंग के लिए निर्यात किया जाए; src/Makefile Lua इंटरप्रेटर के लिए ऐसा करता है। Windows के लिए, हम अनुशंसा करते हैं कि Lua लाइब्रेरी एक DLL हो। सभी मामलों में, कंपाइलर luac को स्थिर रूप से लिंक किया जाना चाहिए।

जैसा कि ऊपर उल्लेख किया गया है, आप Lua बनाने से पहले कुछ सुविधाओं को अनुकूलित करने के लिए src/luaconf.h संपादित कर सकते हैं।

Lua 5.2 के बाद से परिवर्तन

यहाँ Lua 5.3 में पेश किए गए मुख्य परिवर्तन हैं। संदर्भ मैनुअल उन असंगतताओं को सूचीबद्ध करता है जिन्हें पेश करना पड़ा था।

मुख्य परिवर्तन

  • पूर्णांक (डिफ़ॉल्ट रूप से 64-बिट)
  • 32-बिट संख्याओं के लिए आधिकारिक समर्थन
  • बिटवाइज़ ऑपरेटर
  • बुनियादी utf-8 समर्थन
  • मानों को पैक और अनपैक करने के लिए फलन

यहाँ Lua 5.3 में पेश किए गए अन्य परिवर्तन हैं:

भाषा

  • userdata में कोई भी Lua मान uservalue के रूप में हो सकता है
  • फ्लोर विभाजन
  • कुछ मेटामेथड्स के लिए अधिक लचीले नियम

लाइब्रेरी

  • ipairs और टेबल लाइब्रेरी मेटामेथड्स का सम्मान करते हैं
  • string.dump में स्ट्रिप विकल्प
  • टेबल लाइब्रेरी मेटामेथड्स का सम्मान करती है
  • नया फलन table.move
  • नया फलन string.pack
  • नया फलन string.unpack
  • नया फलन string.packsize

C API

  • C में निरंतरता फलनों के लिए सरल API
  • lua_gettable और इसी तरह के फलन परिणामी मान का प्रकार लौटाते हैं
  • lua_dump में स्ट्रिप विकल्प
  • नया फलन: lua_geti
  • नया फलन: lua_seti
  • नया फलन: lua_isyieldable
  • नया फलन: lua_numbertointeger
  • नया फलन: lua_rotate
  • नया फलन: lua_stringtonumber

Lua स्वतंत्र इंटरप्रेटर

  • कैलकुलेटर के रूप में उपयोग किया जा सकता है; '=' के साथ उपसर्ग करने की आवश्यकता नहीं
  • arg तालिका सभी कोड के लिए उपलब्ध

लाइसेंस

[OSI प्रमाणित] Lua नीचे पुनरुत्पादित MIT लाइसेंस की शर्तों के तहत वितरित मुक्त सॉफ्टवेयर है; इसका उपयोग किसी भी उद्देश्य के लिए, वाणिज्यिक उद्देश्यों सहित, बिना किसी लागत के किया जा सकता है, बिना हमसे पूछे।

एकमात्र आवश्यकता यह है कि यदि आप Lua का उपयोग करते हैं, तो आपको अपने उत्पाद या उसके दस्तावेज़ीकरण में कहीं उपयुक्त कॉपीराइट नोटिस शामिल करके हमें श्रेय देना चाहिए।

विवरण के लिए, देखें यह।

कॉपीराइट © 1994–2017 Lua.org, PUC-Rio.

इसके द्वारा, बिना शुल्क के, किसी भी व्यक्ति को जो इस सॉफ्टवेयर और संबंधित दस्तावेज़ीकरण फाइलों ("सॉफ्टवेयर") की एक प्रति प्राप्त करता है, सॉफ्टवेयर में किसी भी प्रतिबंध के बिना व्यवहार करने की अनुमति दी जाती है, जिसमें बिना किसी सीमा के, सॉफ्टवेयर की प्रतियों का उपयोग, प्रतिलिपि, संशोधन, विलय, प्रकाशन, वितरण, उपलाइसेंस और/या बेचने के अधिकार शामिल हैं, और उन व्यक्तियों को ऐसा करने की अनुमति दी जाती है जिन्हें सॉफ्टवेयर प्रदान किया गया है, निम्नलिखित शर्तों के अधीन:

उपरोक्त कॉपीराइट नोटिस और यह अनुमति नोटिस सॉफ्टवेयर की सभी प्रतियों या महत्वपूर्ण भागों में शामिल किया जाएगा।

सॉफ्टवेयर "जैसा है" प्रदान किया जाता है, बिना किसी प्रकार की वारंटी के, स्पष्ट या निहित, जिसमें बिना सीमा के व्यापारिकता, किसी विशेष उद्देश्य के लिए उपयुक्तता और उल्लंघन न होने की वारंटी शामिल है। किसी भी स्थिति में लेखक या कॉपीराइट धारक किसी भी दावे, क्षति या अन्य दायित्व के लिए उत्तरदायी नहीं होंगे, चाहे वह अनुबंध की कार्रवाई, टोर्ट या अन्यथा से उत्पन्न हो, सॉफ्टवेयर से या उसके उपयोग या अन्य लेन-देन से संबंधित हो।

अंतिम अद्यतन: Mon Jun 18 22:57:33 -03 2018

टूल डाउनलोड करें