ايس اي ايس انجنيئر ضايع ڪرڻ جا امتحان

ايس اي ايس انجنيئر حملن ويب ايپليڪيشنز تي زبردست خطرات پيدا ڪن ٿيون جيڪي ڊيٽابيس جي پس منظر تي منحصر هونديون متحرڪ مواد پيدا ڪرڻ لاء. هن قسم جي حملي ۾، هيڪرز هڪ ويب ايپليٽ کي هٿان بڻائڻ جي ڪوشش ڪئي آهي انهن کي پنهنجي SQL SQL Commandands ڊيٽابيس ۾ جاري ڪيل انجنيئر ۾ داخل ڪرڻ جي ڪوشش. هڪ مثال طور، آرٽيڪل تي آرٽيڪل انجيل حملي جو مضمون ڏسو. هن مقالي ۾، اسان ڪيترن ئي طريقن سان هڪ نظر رکون ٿا جيڪو توهان پنهنجي ويب ايپليڪيشنن کي جانچ ڪري سگهو ٿا اهو معلوم ڪرڻ لاء ته اهي SQL انجينئر حملن کي نقصانڪار هوندا آهن.

خودڪار ايس اي ايس انجنيئر سکيننگ

هڪڙي امڪان هڪ خودڪار ويب ايپليڪيشنز کي متاثر ٿيندڙ اسڪينر استعمال ڪندي آهي، جهڙوڪ ايڇ جي ويب ڄاڻ، آئي بي ايم جي ايس ايس ايسکن يا سينزڪ جي هيل اسٽيرم. اهي اوزار سڀئي صلاحڪار، خودڪار طريقن سان امڪاني SQL انجڻ جي نقصانات لاء توهان جي ويب ايپليڪيشنن جو تجزيو ڪرڻ لاء پيش ڪن ٿيون. جيتوڻيڪ، اهي وڏي پئماني تي آهن، سيٽ تي $ 25،000 تائين سيٽ تي.

دستيابيل SQL انجيل آزمائش

ڇا ڪنهن غريب ايپليڪيشن ڊولپر ٺاهڻ لاء ڇا آهي؟ توهان شايد اصل بنيادي تجربن کي هلائي سگهو ٿا جيڪي توهان جي ويب ايپليڪيشنز کي ايس اي ايس انجنيس جي نقصانات لاء ويب برائوزر کان وڌيڪ استعمال ڪندي استعمال ڪرڻ لاء. پهريون، احتياط جو هڪ لفظ: ٽيسٽ ڪريان ٿو صرف بيان ڪري ٿو صرف بنيادي SQL انجکشن ڊالن جي لاء. اهي ترقي يافته ٽيڪنالاجي نه ڳولي سگهندا آهن ۽ استعمال ڪرڻ لاء ڪجهه محتاط آهن. جيڪڏهن توهان برداشت ڪري سگهو ٿا، خودڪار اسڪينر سان وڃو. بهرحال، جيڪڏهن توهان قيمت ٽئگ تي نه ٿا سگهو، دستياتي ٽيسٽ وڏو پهريون قدم آهي.

تشخيص ڪرڻ جو آسان طريقو اهو آهي ته ڇا ايپليڪيشن کي نقصان پهچائڻ لازمي طور تي معصوم انجنيئر جي حملن جي استعمال ڪرڻ آهي، جيڪو توهان جي ڊيٽابيس کي اصل ۾ نقصان نه پهچائيندو، جيڪڏهن اهي ڪامياب ٿين ٿا پر توهان کي اهو ثبوت فراهم ڪنداسين ته توهان کي مسئلو کي درست ڪرڻ جي ضرورت آهي. مثال طور، فرض ڪريو ته توهان وٽ هڪ سادي ويب ايپليڪيشن آهي جيڪو هڪ فرد ڊيٽابيس ۾ ڏسڻ ۽ نتيجي جي طور تي رابطي جي معلومات مهيا ڪري ٿو. اهو صفحو شايد هيٺ ڏنل يو آر ايل فارم استعمال ڪري سگھن ٿا.

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

اسان اهو فرض ڪري سگھو ٿا ته هي صفحو هڪ ڊيٽابيس لوڪ اپ انجام ڏئي ٿو، هيٺ ڏنل طريقي سان هڪ سوال استعمال ڪندي :

منتخب ٿيل ڊائريڪٽري مان چونڊيو WHERE آخري نالو = 'شپيپل' ۽ پهريون نالو = 'ميڪ'

ان سان گڏ استعمال ڪرڻ جي ڪوشش ڪريو. اسان جي عارضي طور تي، اسان URL ۾ هڪ سادي تبديلي آڻي سگهو ٿا جيڪو SQL انجڻ حملن جي ٽيسٽ لاء ٽيسٽ ڪري ٿو:

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

جيڪڏهن ويب ايپليڪيشن ايس ايس انجيل جي صحيح طريقي سان محفوظ نه ڪئي وئي آهي، اهو آسان طور تي هي جعلي پهريون نالو اهو ايس ايڪس ڊيٽابيس ۾ اهو ڊيٽابيس جي خلاف عمل ڪري ٿو، ان جي نتيجي ۾:

SELECT فون ڊاريڪٽري مان چونڊيو جتي آخري نالو = 'شپيپل' ۽ پهريون نالو = 'ميک' ۽ (منتخب ٿيل (*) جعلي کان چونڊيو>> يا '1' = '1'

توهان محسوس ڪنداسين ته نحو مٿي مٿي ڏنل يو آر ايل يوٽ ۾ ٿورو مختلف آهي. آئون ان جي ASCII مساوات لاء URL جي انڪوڊ ٿيل متغير کي تبديل ڪرڻ جي آزادي ورتو جيڪو مثال جو مثال بيان ڪرڻ آسان بڻائي ٿو. مثال طور،٪ 3d لفظ '=' لاء URL-انڪوڊنگ آھي. ساڳئي مقصدن لاء آئون ڪجهه لڪير به شامل ڪيا ويا.

نتيجو جا نتيجا

امتحان اچي ٿو ته توھان مٿي ڏنل فهرست ڏنل URL سان ويب پيج لوڊ ڪرڻ جي ڪوشش ڪريو. جيڪڏهن ويب ايپليڪيشن سٺي طريقي سان ڀريل آهي، انهي کي ڊيٽابيس ڏانهن سوال منظور ڪرڻ کان اڳ انٽيٽ مان هڪ اکرن کي ڪڍي ڇڏيندو. اهو صرف هڪ ماڻهو لاء هڪ عجیب نالو ڪڍڻ جو نتيجو آهي جيڪو SQL جي گلاس ۾ شامل آهي. توهان هيٺ ڏنل هڪ ئي طريقي سان ايپليڪيشن مان هڪ غلط پيغام ڏسي سگهو ٿا.

مسئلو: ڪابه استعمال وارو نالو ميڪس سان گڏ نه ملي + AND + (چونڊ + شمار (*) + جعلي کان) +٪ 3e0 + OR + 1٪ 3d1 Chapple!

ٻي صورت ۾، جيڪڏهن اپليڪيشن ايس ايس ايس انجنيشن کي نقصان پهچايو وڃي، اهو بيان سڌو سنئون ڊيٽابيس ڏانهن منتقل ٿيندو، نتيجي ۾ هڪ ٻن امڪانن جي نتيجي ۾. پهريون، توهان جي سرور کي تفصيلي غلط پيغام ملي چڪي آهي (جنهن کي توهان نه هجڻ گهرجي)، توهان هن کي ڪجهه ڏسنداسين:

ODBC ڊرائيور غلطي لاء Microsoft OLE DB فراهم ڪندڙ '80040e37' [Microsoft] [ODBC SQL Server ڊرائيور] [SQL سرور] غلط اعتراض جو نالو 'جعلي'. /directory.asp، ليڪ 13

ٻئي طرف، جيڪڏهن توهان جو ويب سرور تفصيلي غلطي پيغام نه ڏيکاري، توهان هڪ وڌيڪ عام غلطي حاصل ڪنداسين، جهڙوڪ:

اندروني سرور جي غلطي سرور سرور اندروني غلطي يا غلط فڪر جي سامنا ڪئي وئي ۽ توهان جي درخواست مڪمل ڪرڻ ۾ ناڪام هئي. مهرباني ڪري سرور جي منتظم سان رابطو ڪريو جي غلطي ٿيڻ ۽ ڪجھ توهان جو شايد ٿي چڪو وقت جي خبر ڏيو ته شايد شايد غلطي جي ڪري هجي انهي غلطي بابت وڌيڪ معلومات سرور جي غلط لاگ ان ۾ موجود هوندا.

جيڪڏهن توهان مٿين ٻن غلطين مان هڪ ٻئي کي وصول ڪيو ٿا، ته توهان جي درخواست ايس اي ايس انجنيئر حملي ۾ خطرناڪ آهي! ڪجهه قدم جيڪي توهان SQL ايڪس انجنيئر حملن جي خلاف توهان جي درخواستن جي بچاء لاء وٺي سگهو ٿا.