[ و به پسرش حسن فرمود : ] پسرکم چیزى از دنیا بجا منه چه آن را براى یکى از دو کس خواهى نهاد : یا مردى که آن را در طاعت خدا به کار برد پس به چیزى که تو بدان بدبخت شده‏اى نیکبخت شود ، و یا مردى که به نافرمانى خدا در آن کار کند و بدانچه تو براى او فراهم کرده‏اى بدبخت شود پس در آن نافرمانى او را یار باشى و هیچ یک از این دو در خور آن نبود که بر خود مقدمش دارى . [ و این گفتار به گونه‏اى دیگر روایت شده است که : ] اما بعد ، آنچه از دنیا در دست توست پیش از تو خداوندانى داشت و پس از تو به دیگرى رسد و تو فراهم آورنده‏اى که براى یکى از دو تن خواهى گذاشت : آن که گرد آورده تو را در طاعت خدا به کار برد پس او بدانچه تو بدبخت شده‏اى خوشبخت شود ، یا آن که آن را در نافرمانى خدا صرف کند پس تو بدانچه براى وى فراهم آورده‏اى بدبخت شوى و هیچ یک از این دو سزاوار نبود که بر خود مقدمش دارى و بر پشت خویش براى او بارى بردارى ، پس براى آن که رفته است آمرزش خدا را امید دار و براى آن که مانده روزى پروردگار . [نهج البلاغه]
 
پنج شنبه 88 اسفند 6 , ساعت 3:8 عصر

Cross-Site ing


این نوع حمله خیلی مشابه به حملات تزریق اسکریپت است و در مواقعی اتفاق می‌افتد که کد اسکریپت توسط صفحات پویای وب سایر سایت‌ها در مرورگر وب وارد شود. در این نوع حملات، هدف هکر خود سایت نیست، بلکه کاربران آن مد نظر می‌باشند. فرض کنید که یک سایت عبارات جستجو را با استفاده از مجموعه QueryString  (در صورتی که برنامه با استفاده از فناوری .NET توسعه داده شده باشد) و از طریق متد HTTP Get دریافت می‌کند، و سایر سایت‌ها می‌توانند عبارات جستجو را با عبارت پرس و جوس Search ارسال کنند.


YourSite.com?Search=asp.net


صفحه جستجو رشته پرس و جو را خوانده و در پایگاه داده به دنبال عبارت مورد نظر می‌گردد و در نهایت نتیجه جستجو را نمایش می‌دهد. در صورتی که داده‌ای متناسب با عبارت مورد نظر در پایگاه داده وجود نداشته باشد، پیامی مبنی بر یافت نشدن جواب تولید و نمایش داده خواهد شد.


در صفحه جستجو قالبی کد‌های زیر وجود دارند:


void Page_load( Src,EventArgs E)


{


          String sSearchStr="";


          NameValueCollection ColQstr = Request.QueryString;


 


          String[] qStrAry = colQstr.AllKeys;


          for (int i = 0; i<= qStrAry.GetUpperBound(0); i++)


          {


                   if (qStrAry[i] == "search")


                   {


                             String[] qStrAry = colQstr.AllKeys;


                             for (int j = 0; j<=qStrAryVal.GetUpperBound(0); j++)


                             {


                                      sSearchStr = qStrAryVal[j];


                                      break;


                             }


                   }


          }


 


          if (sSearchStr.Trim() != "")


          {


                   if (SearchDataStore(sSearchStr) == false)


                             lblResult.Text = "The search keyword " + sSearchStr +


                             " did not produce any results. Please try again.";


          }


}


bool SearchDataStore(String sSearchStr)


{


          /*Perform the search against the datastore and display the


          result. if there are no results then return false.*/


          return false;


}


 


ادامه مطلب...


لیست کل یادداشت های این وبلاگ