
LuaJIT FFI बाइंडिंग्स libinjection के लिए, जो SQL इंजेक्शन और XSS पहचान प्रदान करते हैं, वेब एप्लिकेशन सुरक्षा के लिए संदर्भ-विशिष्ट APIs के साथ।
lua-resty-libinjection - libinjection के लिए LuaJIT FFI बाइंडिंग
यह लाइब्रेरी सक्रिय विकास में है और उत्पादन के लिए तैयार है
यह लाइब्रेरी libinjection के लिए FFI बाइंडिंग प्रदान करती है, जो एक SQL/SQLi और XSS टोकनाइज़र और विश्लेषक है।
इस लाइब्रेरी को उसी तरह स्थापित करें जैसे आप किसी अन्य OpenResty lua मॉड्यूल को स्थापित करते हैं। libinjection शेयर्ड ऑब्जेक्ट फ़ाइल को आपके lua_package_cpath में रहना आवश्यक है, इसलिए आपको .so फ़ाइल को उचित स्थान पर सिमलिंक या कॉपी करना चाहिए।
access_by_lua_block {
local libinjection = require "resty.libinjection"
-- सरल SQLi API
local issqli, fingerprint = libinjection.sqli(string)
-- संदर्भ-विशिष्ट बाइंडिंग भी प्रदान की गई हैं
issqli, fingerprint = libinjection.sqli_noquote(string)
issqli, fingerprint = libinjection.sqli_singlequote(string)
issqli, fingerprint = libinjection.sqli_doublequote(string)
--सरल XSS API
local isxss = libinjection.xss(string)
-- संदर्भ-विशिष्ट बाइंडिंग
isxss = libinjection.xss_data_state(string)
isxss = libinjection.xss_noquote(string)
isxss = libinjection.xss_singlequote(string)
isxss = libinjection.xss_doublequote(string)
isxss = libinjection.xss_backquote(string)
}
सिंटैक्स: issqli, fingerprint = libinjection.sqli(string)
एक स्ट्रिंग दिए जाने पर, एक बूलियन issqli लौटाता है जो दर्शाता है कि SQLi का पता चला था या नहीं, और एक स्ट्रिंग fingerprint जो पता लगाए गए libinjection फ़िंगरप्रिंट को दर्शाता है। अधिकांश मामलों में, यह पसंदीदा विकल्प है; नीचे उल्लिखित द्वितीय-स्तरीय API बाइंडिंग विशिष्ट संदर्भों में थोड़ी अधिक कुशल हो सकती हैं।
सिंटैक्स: issqli, fingerprint = libinjection.sqli_noquote(string)
libinjection.sqli की तरह, "जैसा-है-वैसा" स्ट्रिंग के विशिष्ट संदर्भ में।
सिंटैक्स: issqli, fingerprint = libinjection.sqli_singlequote(string)
libinjection.sqli की तरह, एकल-उद्धरण (') स्ट्रिंग के विशिष्ट संदर्भ में।
सिंटैक्स: issqli, fingerprint = libinjection.sqli_doublelequote(string)
libinjection.sqli की तरह, दोहरे-उद्धरण (") स्ट्रिंग के विशिष्ट संदर्भ में।
सिंटैक्स: isxss = libinjection.xss(string)
XSS डिटेक्टर का ALPHA संस्करण। एक स्ट्रिंग दिए जाने पर, एक बूलियन isxss लौटाता है जो दर्शाता है कि XSS का पता चला था या नहीं। अधिकांश मामलों में, यह पसंदीदा विकल्प है; नीचे उल्लिखित द्वितीय-स्तरीय API बाइंडिंग विशिष्ट संदर्भों में थोड़ी अधिक कुशल हो सकती हैं।
सिंटैक्स: isxss = libinjection.xss_data_state(string)
libinjection.xss की तरह, लेकिन केवल DATA_STATE फ़्लैग के साथ चलाया जाता है।
सिंटैक्स: isxss = libinjection.xss_noquote(string)
libinjection.xss की तरह, लेकिन केवल VALUE_NO_QUOTE फ़्लैग के साथ चलाया जाता है।
सिंटैक्स: isxss = libinjection.xss_singlequote(string)
libinjection.xss की तरह, लेकिन केवल VALUE_SINGLE_QUOTE फ़्लैग के साथ चलाया जाता है।
सिंटैक्स: isxss = libinjection.xss_doublequote(string)
libinjection.xss की तरह, लेकिन केवल VALUE_DOUBLE_QUOTE फ़्लैग के साथ चलाया जाता है।
सिंटैक्स: isxss = libinjection.xss_backquote(string)
libinjection.xss की तरह, लेकिन केवल VALUE_BACK_QUOTE फ़्लैग के साथ चलाया जाता है।
कॉपीराइट 2017 Robert Paprocki
स्रोत और बाइनरी रूपों में पुनर्वितरण और उपयोग, संशोधन के साथ या बिना, अनुमत है बशर्ते निम्नलिखित शर्तें पूरी हों:
स्रोत कोड के पुनर्वितरण में उपरोक्त कॉपीराइट सूचना, शर्तों की यह सूची और निम्नलिखित अस्वीकरण को बनाए रखना चाहिए।
बाइनरी रूप में पुनर्वितरण में उपरोक्त कॉपीराइट सूचना, शर्तों की यह सूची और निम्नलिखित अस्वीकरण को दस्तावेज़ीकरण और/या वितरण के साथ प्रदान की गई अन्य सामग्रियों में पुन: प्रस्तुत करना चाहिए।
न तो कॉपीराइट धारक का नाम और न ही इसके योगदानकर्ताओं के नाम, इस सॉफ़्टवेयर से व्युत्पन्न उत्पादों का समर्थन या प्रचार करने के लिए, विशेष पूर्व लिखित अनुमति के बिना उपयोग किए जा सकते हैं।
यह सॉफ़्टवेयर कॉपीराइट धारकों और योगदानकर्ताओं द्वारा "जैसा है" प्रदान किया गया है और कोई भी व्यक्त या निहित वारंटी, जिसमें शामिल हैं, लेकिन सीमित नहीं हैं, व्यापारिकता और किसी विशेष उद्देश्य के लिए उपयुक्तता की निहित वारंटी अस्वीकृत हैं। किसी भी स्थिति में कॉपीराइट धारक या योगदानकर्ता किसी भी प्रत्यक्ष, अप्रत्यक्ष, आकस्मिक, विशेष, अनुकरणीय, या परिणामी क्षति (जिसमें शामिल हैं, लेकिन सीमित नहीं हैं, वैकल्पिक वस्तुओं या सेवाओं की खरीद; उपयोग, डेटा, या लाभ की हानि; या व्यवसाय में रुकावट) के लिए उत्तरदायी नहीं होंगे, चाहे वह किसी भी कारण से और किसी भी दायित्व सिद्धांत पर, चाहे अनुबंध में, कठोर दायित्व, या अपकृत्य (लापरवाही सहित या अन्यथा) में, इस सॉफ़्टवेयर के उपयोग से किसी भी तरह से उत्पन्न हो, भले ही ऐसी क्षति की संभावना के बारे में सलाह दी गई हो।
कृपया GitHub issue ट्रैकर के साथ एक टिकट बनाकर बग की रिपोर्ट करें।