SQL Injection Vulnerabilities க்கான சோதனை

SQL Injection தாக்குதல்கள் மாறும் உள்ளடக்கத்தை உருவாக்க ஒரு தரவுத்தள பின்தளத்தில் சார்ந்து வலை பயன்பாடுகளுக்கு மிகப்பெரிய அபாயங்களை அளிக்கின்றன. இந்த வகை தாக்குதல், ஹேக்கர்கள் தரவுத்தளத்தால் வெளியிடப்பட்ட தங்கள் சொந்த SQL கட்டளைகளை ஒரு முயற்சியில் ஒரு வலை பயன்பாட்டை கையாள வேண்டும். உதாரணமாக, தரவுத்தளங்களின் மீது SQL Injection Attacks கட்டுரை பார்க்கவும். இந்த கட்டுரையில், உங்கள் வலை பயன்பாடுகளை SQL Injection Attacks பாதிக்கப்படுகிறதா என்பதை தீர்மானிக்க பல வழிகளில் பாருங்கள்.

தானியங்கி SQL ஊசி ஸ்கேனிங்

ஒரு சாத்தியமான ஒரு வலைத்தள பயன்பாட்டு பாதிப்பு ஸ்கேனர் ஐப் பயன்படுத்துகிறது, ஹெச்பி இன் வலை இன்ஸ்பெக்ட், ஐபிஎம் இன் ஆப்ஸ்கான் அல்லது சென்சிக் இன் ஹெய்டெஸ்ட்ம் போன்றவை. இந்த கருவிகளில் அனைத்து சாத்தியமான SQL ஊசி பாதிப்புகளுக்கு உங்கள் வலை பயன்பாடுகள் பகுப்பாய்வு எளிதாக, தானியங்கு வழிகளில் வழங்குகின்றன. இருப்பினும், அவர்கள் மிகவும் விலையுயர்ந்தவர்கள், சீட்டுக்கு $ 25,000 வரை இயங்கும்.

கையேடு SQL ஊசி சோதனைகள்

செய்ய ஏழை பயன்பாடு டெவலப்பர் என்ன? நீங்கள் ஒரு வலை உலாவலைக் காட்டிலும் SQL Injection Vulnerabilities ஐப் பயன்படுத்தி உங்கள் வலை பயன்பாடுகளை மதிப்பீடு செய்ய சில அடிப்படை சோதனைகளை உண்மையில் இயங்க முடியும். முதலில், ஒரு எச்சரிக்கை எச்சரிக்கை: அடிப்படை SQL எஜெக்டிக் குறைபாடுகளை மட்டுமே நான் காண்கிறேன். அவர்கள் மேம்பட்ட நுட்பங்களை கண்டுபிடிப்பதில்லை மற்றும் பயன்படுத்த சற்று கடினமாக இருக்கும். நீங்கள் அதை வாங்க முடிந்தால், தானியங்கி ஸ்கேனர் மூலம் செல்லுங்கள். எனினும், நீங்கள் அந்த விலை டேக் கையாள முடியாது என்றால், கையேடு சோதனை ஒரு பெரிய முதல் படியாகும்.

ஒரு பயன்பாடு பாதிக்கப்படக்கூடியதா என்பதை மதிப்பீடு செய்ய எளிய வழி, தீங்கு விளைவிக்கும் உட்செலுத்துதல் தாக்குதல்களுடன் பரிசோதனை செய்வது, அவை வெற்றிகரமாக உங்கள் தரவுத்தளத்தை பாதிக்காது, ஆனால் நீங்கள் ஒரு சிக்கலை சரிசெய்ய வேண்டும் என்பதற்கான ஆதாரங்களை உங்களுக்கு வழங்கும். உதாரணமாக, ஒரு தரவுத்தளத்தில் ஒரு நபரைப் பார்ப்பதுடன் அதன் விளைவாக தொடர்புத் தகவலை வழங்குவதற்கும் ஒரு எளிய வலை பயன்பாட்டினை நீங்கள் வைத்திருப்பதாக வைத்துக்கொள்வோம். பின்வரும் பக்கத்தை பின்வரும் பக்க வடிவத்தில் பயன்படுத்தலாம்:

http://myfakewebsite.com/directory.asp?lastname=chapple&firstname=mike

இந்த பக்கம் ஒரு தரவுத்தள தேடலை நடத்தி, பின்வருவதைப் போல ஒரு வினவலைப் பயன்படுத்துவோம் என்று நாம் கருதிக்கொள்ளலாம்:

டைரக்டரியிலிருந்து ஃபோனைத் தேர்வு செய்க கடைசி பெயர் = 'சாப்பல்' மற்றும் முதல் பெயர் = 'மைக்'

இந்த ஒரு பிட் பரிசோதனை செய்யலாம். மேலேயுள்ள எங்கள் அனுமானத்துடன், SQL இன்ஜினீயன் தாக்குதல்களுக்கான சோதனைகள் URL க்கு ஒரு எளிய மாற்றத்தை செய்யலாம்:

http://myfakewebsite.com/directory.asp?lastname=chapple&firstname=mike'+AND+(select+count(*)+from+fake)+%3e0+OR+'1'%3d'1

வலை பயன்பாடு சரியாக SQL இன்ஜின்களுக்கு எதிராக பாதுகாக்கப்படவில்லை என்றால், அது வெறுமனே தரவுத்தளத்திற்கு எதிராக செயல்படும் SQL அறிக்கையில் இந்த போலி முதல் பெயரை செருகுவதால், இதன் விளைவாக:

கடைசி பெயர் = 'சாப்பல்' மற்றும் முதல் பெயர் = 'மைக்' மற்றும் (போலி எண்ணிலிருந்து தேர்ந்தெடு (*))> 0 அல்லது '1' = '1'

மேலே கண்டறிதல் அசல் URL இல் உள்ளதை விட கொஞ்சம் வித்தியாசமானது என்பதை நீங்கள் கவனிக்கலாம். நான் எடுத்துக்காட்டாக பின்பற்ற எளிதாக தங்கள் ASCII equivalents URL- குறியிடப்பட்ட மாறி மாற்றும் சுதந்திரம் எடுத்து. எடுத்துக்காட்டாக,% 3d ஆனது '=' பாத்திரத்திற்கான URL- குறியீட்டு முறை ஆகும். நான் இதே போன்ற காரணங்களுக்காக சில வரி இடைவெளிகளை சேர்த்தேன்.

முடிவுகளை மதிப்பீடு செய்தல்

மேலே பட்டியலிடப்பட்டுள்ள URL உடன் வலைப்பக்கத்தை ஏற்ற முயற்சிக்கும் போது சோதனை நிகழ்கிறது. இணைய பயன்பாடு நன்கு செயல்பட்டால், தரவுத்தளத்தில் கேள்விக்கு முன்னர் உள்ளீடுகளிலிருந்து ஒற்றை மேற்கோள்களை அகற்றிவிடும். இது வெறுமனே SQL ஒரு கொத்து அடங்கும் என்று ஒரு முதல் பெயர் யாரோ ஒரு வித்தியாசமான தேடல் ஏற்படுத்தும்! கீழே உள்ளதைப் போன்ற பயன்பாட்டிலிருந்து ஒரு பிழை செய்தியை நீங்கள் காண்பீர்கள்:

பிழை: பயனர் பெயர் மைக் + மற்றும் + உடன் காணவில்லை (தேர்வு + + (+) + போலி + + 3e0 + அல்லது + 1% 3d1 சாப்பல்!

மறுபுறம், பயன்பாடு SQL ஊசி பாதிக்கப்படாவிட்டால், அது தகவல் நேரடியாக தரவுத்தளத்தில் அனுப்பப்படும், இதன் விளைவாக இரண்டு சாத்தியக்கூறுகளில் ஒன்று. முதலில், உங்கள் சேவையகம் விரிவான பிழை செய்திகளை இயக்கியிருந்தால் (நீங்கள் விரும்பாதது!), நீங்கள் இதைப் போன்ற ஏதாவது ஒன்றை பார்ப்பீர்கள்:

ODBC இயக்கிகள் பிழை '80040e37' [மைக்ரோசாப்ட்] [ODBC SQL சர்வர் டிரைவர்] [SQL சர்வர்] தவறான பொருள் பெயர் 'போலி' க்கான Microsoft OLE DB வழங்குநர். / directory.asp, வரி 13

மறுபுறம், உங்கள் வலை சேவையகம் விரிவான பிழை செய்திகளைக் காட்டவில்லை என்றால், நீங்கள் இன்னும் பொதுவான பிழை ஒன்றைப் பெறுவீர்கள்:

உள்ளக சேவையகப் பிழை சேவையகத்தின் உள் பிழை அல்லது தவறான உள்ளமைவு ஏற்பட்டது மற்றும் உங்கள் கோரிக்கையை முடிக்க முடியவில்லை. பிழையை ஏற்படுத்திய நேரத்தையும், பிழையை ஏற்படுத்தியிருப்பதற்கு நீங்கள் செய்திருக்கக்கூடிய எதையும் பற்றியும் அறிய சேவையக நிர்வாகியை தொடர்பு கொள்ளவும். இந்த பிழை பற்றிய மேலும் தகவலுக்கு சர்வர் பிழை பதிவில் கிடைக்கக்கூடும்.

மேலே உள்ள இரு பிழைகளில் ஒன்றை நீங்கள் பெற்றால், உங்கள் பயன்பாடு SQL இன்ஜினீயரிங் தாக்குதலை பாதிக்கக்கூடியது! SQL Injection தாக்குதல்களுக்கு எதிராக உங்கள் பயன்பாடுகளைப் பாதுகாக்க சில படிகள் உள்ளன: