यह एक ओवरफ़्लो अटैक
जैसा दिखता है . वे UNION
- आपकी मौजूदा क्वेरी के साथ। अपने सभी %20
. की जगह साथ (स्पेस) इसकी url-एन्कोडेड पैदावार के बाद से:
=-999.9 UNION ALL SELECT CONCAT(0x7e,0x27,Hex(cast(database() as char)),0x27,0x7e),0x31303235343830303536,0x31303235343830303536,0x31303235343830303536-
इसे तोड़ दो:
- द
=-999.9
अभी-अभी आपकी वर्तमान क्वेरी को समाप्त कर रहा है 0x31303235343830303536
हैNULL
- वे सिर्फ आपकी मौजूदा क्वेरी में कॉलम की संख्या से मेल खा रहे हैं। यदि आपके पासSELECT * FROM users
औरusers
4 कॉलम थे,UNION
4 कॉलम भी होने चाहिए। परिणामस्वरूप, उन्होंने उन स्तंभों को भरने के लिए केवल `NULL मानों का उपयोग किया।- असली भ्रम
CONCAT()
में है . वे 126, 39, डेटाबेस नाम को हेक्स मान, 39, और 126 के रूप में जोड़ रहे हैं --
एक mysql टिप्पणी है - यह आपकी बाकी क्वेरी को बाद में अनदेखा कर देती है
इस हमले को देखते हुए, मुझे संदेह है कि आप mysql_real_escape_string()
में इनपुट रैप नहीं कर रहे हैं , जिसने आपकी क्वेरी से बाहर निकलने और स्वयं को निष्पादित करने के लिए हमला करने की अनुमति दी।
देखें owasp.org अधिक जानकारी के लिए।