PDA

View Full Version : توابع کابردی و امنیتی PHP



zatron
پنج شنبه 07 دی 1391, 15:38 عصر
سلام دوستان در این تاپیک توابع امنیتی و کاربردی PHP رو با هم قرار بدیم
لطفا دوستان کمک کنند.

lordofphp
پنج شنبه 07 دی 1391, 16:36 عصر
سلام
خوبین؟
خوب گفتم اولین نفر باشم گفته باشم:لبخند:
خوب برای فیلتر داده های ورودی و جلوگیری از کاراکتر های خطرناک این تابع رو پیشنهاد میکنم:
mysql_real_escape_string
به صورت


mysql_real_escape_string($_POST['username']);


برای رمزنگاری داده ها از md5 با کلید استفاده کنید تا کرک پسورد بسیار دشوار در حد کرک نشدن باشه
نمونش استفاده از تابع hash_hmac


define('salt', ' D-b$AdXV_.1');
$password=hash_hmac('MD5',mysql_real_escape_string ($_POST['password']),salt);

البته گداشتن کد امنیتی برای فرم ها خیلی خیلی مهمه که حتما باید بذارین
همچنین با استفاده از تکنیک های htaccess به امنیت وب سایتتون بیفزایید
حتما قبل از لود کامل وب سایت برروی هاست بسپارید چند هکر وب سایتتون تست بزنن تا ضعف هاتون پی ببریید
مورد بعدی اینه که اگر دوست دارین به اضافه جلوگیری از هک وب سایتتون اطلاعات هکر بدست بیارید کار سختیه اما کمی خطر داره باید کمی خب راهش باز کنید
اگرهم هک شدید آروم باشید و سعی کنید راه و علت هکتون رو پیدا کنید البته تو این قسمت استفاده از بکاپ خیلی خوبه
ان شاء الله وب سایت های امنی بنویسیم
درپناه وراه حق پیروز وپایدار باشید
یاحق

engmmrj
پنج شنبه 07 دی 1391, 18:40 عصر
من این function رو از خود سایت php برداشتم با این function می تونید بیشتر کد های مخرب رو فیلتر کنید

function quote_smart($value)
{
if(!is_numeric($value)) {
if(get_magic_quotes_gpc()) $value = stripslashes($value);
return "'" .mysql_real_escape_string($value) . "'";
}
else return $value;
}

engmmrj
پنج شنبه 07 دی 1391, 21:31 عصر
لیست تابع هایی که به درد فیلتر کردن کد های مخرب میشوند

intval($value);
stripslashes($value);
htmlspecialchars($value,ENT_QUOTES);
htmlentities($value,ENT_QUOTES);
utf8_decode($value);
strip_tags($value);

mysql_real_escape_string($value);
mysql_escape_string($value);
trim($value);

lordofphp
پنج شنبه 07 دی 1391, 22:04 عصر
سلام
کدهای خیلی خوبیه ولی اگه اصول رعایت کنید + در ذهنتون خلاقیت هایی در زمینه امنیت ایجاد کنید مقتدر میشید
ولی خودمونیم کسی وب شخصی من خواسته هک کنه؟
آخه سیستم امنیتی که نوشته بودم گزارشش داده و حتی آیپی هکرم دارم جالبه ایپیش ایرانه (تو این سیستم من سعی کردم حتی اگه آیپی مخفی شده آیپی اصلی گیر بیارم)

engmmrj
پنج شنبه 07 دی 1391, 23:40 عصر
اینو استاد گرانقدر جناب رضا قربانی نوشتن که من چند تا چیز بهش اضافه کردم که درصد خیلی زیادی از کدهای مخرب رو میگیره

$symbol = array(',', ')', '(', "'", '"','!', '?', '/', '[', ']', '+', '=', '#', '\x00','\x7F','\xC0','\xFD', '\n', '\r','\t', '\x1a', '&', '$' ,'order','select','union','delete','....'
,'update','/*/','&&','<','>');

$username = preg_replace("/<.*?>/", "",$_POST['username'] );
$username =str_replace( $symbol ,"",$username);

wallfa
جمعه 08 دی 1391, 11:31 صبح
اینو استاد گرانقدر جناب رضا قربانی نوشتن که من چند تا چیز بهش اضافه کردم که درصد خیلی زیادی از کدهای مخرب رو میگیره

$symbol = array(',', ')', '(', "'", '"','!', '?', '/', '[', ']', '+', '=', '#', '\x00','\x7F','\xC0','\xFD', '\n', '\r','\t', '\x1a', '&', '$' ,'order','select','union','delete','....'
,'update','/*/','&&','<','>');

$username = preg_replace("/<.*?>/", "",$_POST['username'] );
$username =str_replace( $symbol ,"",$username);

آقا مهدی این از کارکتر های خاص جلوگیری میکنه !