و اين مقاله مي خوام تكنيك ها و هك هايي رو بگم كه با انجام اونا سيستم مديريت محتواي ديتالايف رو حسابي در مقابل هكرها و كدهاي مخرب ايمن مي كنيد (البته نه ايمني صد درصد) . من دو قطعه كد آماده كردم كه با افزودن اونا به سيستم ديتالايف به شدت دست هكرها رو براي رخنه از طريق اين آسيب پذيري ها به ديتالايف مي بنده .
كار شما اينه كه اين دو قطعه كد رو بعد از خط <?PHP در فايل index.php يعني اول صفحه بزاريد:
نقل قول:
بعد از اين كار فايل index.php رو ذخيره كنيد.کد://[1] Prevent any possible XSS attacks via $_GET. foreach ($_GET as $check_url) { if ((eregi("<[^>]*script*\"?[^>]*>", $check_url)) || (eregi("<[^>]*object*\"?[^>]*>", $check_url)) || (eregi("<[^>]*iframe*\"?[^>]*>", $check_url)) || (eregi("<[^>]*applet*\"?[^>]*>", $check_url)) || (eregi("<[^>]*meta*\"?[^>]*>", $check_url)) || (eregi("<[^>]*style*\"?[^>]*>", $check_url)) || (eregi("<[^>]*form*\"?[^>]*>", $check_url)) || (eregi("\([^>]*\"?[^)]*\)", $check_url)) || (eregi("\"", $check_url))) { die ("<br><br><CENTER><b><font color='#ff0000'>Dastresi Gheyre Mojaz Mibashad ... </font></b></CENTER>"); } } unset($check_url); // [2] Prevent any possible XSS attacks via QUERY_STRING. $inArray = array("'", ";", ":", "/**/", "/UNION/", "/SELECT/", "AS ", "../", "..", "%", "*", "^", "$"); foreach($inArray as $res) { if(stristr($_SERVER['QUERY_STRING'], $res)) { die("<br><br><CENTER><b><font color='#ff0000'>Dastresi Gheyre Mojaz Mibashad ... </font></b></CENTER>"); } }
البته شما به جاي كد زير:
نقل قول:
مي تونين يه صفحه ي html ايجاد كنين و در صورت تشخيص حمله ، براي نمايش عدم دسترسي هكر يا كد مخرب رو به اون صفحه راهنمائي كنيد . مثلاً اين كد رو به كار ببريد :کد:die("<br><br><CENTER><b><font color='#ff0000'>Dastresi Gheyre Mojaz Mibashad ... </font></b></CENTER>");
نقل قول:
كار اين كدها اينه كه مقادير و داده هاي غير مجاز در url رو تشخيص ميده و در صورت غير مجاز بودن اين مقادير (مقادير و كدهائي كه هكرها براي تزريق كد يا داده در سايت يا بانك اطلاعاتي از آنها استفاده ميكنند) دسترسي به كل برنامه و سايت رو براي هكر غير ممكن مي كنه و به اون غير مجاز بودن عملش رو گوش زد مي كنه .کد:header("location: error1.html");
مثلاً همين چند روز پيش بود كه من بوسيله يه XSS تونستم كنترل مديريت سايت ديتالايف 6.7 رو در دست بگيرم (روي يه نسخه كه رو لوكال هاست نصب كردم ، امتحان كردم) اما بعد از اسفاده از اين كدها ديگه اين كار برام مقدور نبود .
اين رو هم گفته باشم كه اكثر CMS هاي معروف كدهاي اينچنيني يا مشابهي براي پالايش URL دارن و اين ضريب ايمنيشون رو خيلي خيلي بالا مي بره








پاسخ با نقل قول
