Page 233 - بسم الله الرحمن الرحيم
P. 233

‫وفي بعض الحالت يظهر الخطا التالي‬

                                                                                                                                              ‫اقتباس‪:‬‬

                    ‫‪Microsoft OLE DB Provider for ODBC Drivers error‬‬
                                                                              ‫‪''80040e14‬‬

       ‫]‪Microsoft][ODBC SQL Server Driver][SQL Server]Unclosed‬‬
                                                                       ‫‪quotation mark‬‬

                         ‫‪.''=before the character string ''' AND Password‬‬
                                                        ‫‪admin/admin.asp, line 13/‬‬

                   ‫وفي الخطأ هذا حصلنا على جهزء من أمر الـ ‪ SQL‬وأيضا أسم أحد العمده في الجدول‬

 ‫وهو ما يؤكد أمكانية عمل ‪ inject‬للـ ‪ SQL Query‬المستخدمه للتحقق صلحية أسم المستخد‪.‬م وكلمة‬
                                                                                      ‫المرور المدختله ‪.‬‬

                                               ‫إذن لنتكلم عن الـ ‪ SQL injection‬بشيء من التفصيل‬
    ‫لو كان لدينا سكربت يقو‪.‬م بالتأكد من صلحية اسم المستخد‪.‬م وكلمة المرور المدختله من المستخد‪.‬م قأننا‬

                                                                          ‫سنتحقق منها بالطريقة التاليه‬

                                                                                                                                              ‫‪:code‬‬

                 ‫‪SELECT * from Users WHERE User_Name='<field from web‬‬
                                  ‫‪'<form>' AND Password='<field from web form‬‬
                                                                                            ‫‪}( if( TRUE‬‬
                                                                                     ‫‪Login OK‬‬
                                                                                                         ‫{‬
                                                                                                     ‫‪} else‬‬
                                                                                        ‫‪Login FAILD‬‬
                                                                                                            ‫{‬

   ‫عند قيا‪.‬م أحد المسمو ح لهم بالدختول للصفحة المحميه فأنه يقو‪.‬م بكل تصأكيد بتوثيق نفسه قبل أن يسمح له‬
                                                                                               ‫بالدختول‬

                                              ‫فعند قيامه بأدختال أسم المستخد‪.‬م وكلمة المرور الخاصه به‬
                                                                             ‫أسم المستخد‪.‬م ‪admin :‬‬

                                                                          ‫كلمة المرور ‪t0ps3cr3t :‬‬
                                                        ‫فإن شكل امر الـ ‪ SQL‬سيصبح بالشكل التالي ‪:‬‬

                                                                                                                                              ‫‪:code‬‬

                         ‫‪SELECT * from Users WHERE Users_Name='admin' AND‬‬
                                                                            ‫‪'Password='t0ps3cr3t‬‬

‫وعند وجهود سطر في جهدول ‪ User‬تصحقق فيه الشرط وهو أن يكون اسم المستخد‪.‬م ‪ admin‬وكلمة المرور‬
                                                                                         ‫‪t0ps3cr3t‬‬

                                ‫فأن المر سيقو‪.‬م بإرجهاع قيمة ‪ TRUE‬أي أن المستخد‪.‬م مخول بالدختول ‪.‬‬

                                                ‫‪233‬‬
   228   229   230   231   232   233   234   235   236   237   238