saytı hack olunmaqdan qorumaq üçün nələr etmək olar?
htmlspecialchars,trim,striptags,strlen(limit qoymaq üçün)=>postların qabağına..başqa nələr eləmək olar..?
saytı hack olunmaqdan qorumaq üçün nələr etmək olar?
htmlspecialchars,trim,striptags,strlen(limit qoymaq üçün)=>postların qabağına..başqa nələr eləmək olar..?
Verilmiş cavablar və yazılan şərhlər (5 cavab var)
2
Bu bir cavabda təsvir olunacaq qədər kiçik məsələ deyil. Sayt təhlükəsizliyi böyük bir mövzudur. Bunun üçün http://phpsec.org/projects/guide/ bu linkdəki materialları oxuyun.
Yazdığınız funksiyalar hər biri lazım ola bilər. Əsas bu məsləhətləri verə bilərəm.
1. GET, POST, REQUEST dəyişənlərinin axınını tam nəzarətə almaq və filtr etmək(siz deyən funksiyalarla, lazım olsa is_numeric ilə, addslashes ilə, file_exists ilə və.s.)
2. SQL injectionların qarşısını almaq. Bu məsələ 1-ci bəndlə də sıx bağlıdır. Məqsəd dinamik query-nin istənməyən formay düşməsinin qarşısını almaqdır.
3. XSS və digər məsələlər. Burda artıq məsələ get-gedə qəlizləşdiyindən çıxış yolu FRAMEWORK texnologiyasıdır. Belə ki framvvorklarda yuxarıda yazdığım işlərin əksəriyyəti hazır vəziyyətdə olur siz əziyyətə düşmürsünüz. Framvvorkla bağlı sual olsa ayrıca sual kimi bu saytda yazın.
Əgər saytda qeydiyyat varsa yaxşı olar ki qeydiyyatda zamanı ləqəb və şifrənin düzgünlüyünü yoxlamaq üçün, regular expressionlardan istifadə edəsən. Həmçinin şifrənin ötürülməsində GET metodundan istifadə edirsənsə (adətən wap saytlarda belə olur və şifrə linkdə açıq şəkildə görünür Misal: wap.sizinsayt.com/enter.php?id=2323&pass=12345), yaxşı olar ki şifrəni md5_encode və md5_decode funksiyaları vasitəsi ilə çevirəsən. O zaman yuxarıdakı link təxminən belə olacaq wap.sizinsayt.com/enter.php?id=2323&pass=3gjh59hg9wk04. Həmçinin offline vaxtı təyin etsən yaxşı olar. Bu istifadəçilərin keşdə qalan linklərdən istifadə etməsinin qarşısını alır və müəyyən bir zaman intervalı ərzində aktiv olmadıqda təkrar girişi tələb edir.
md5_decode bu funksiya haqqinda birinci defedi eshidirem 😀
0
çünki belə bir funksiya yoxdur. 🙂 yuxarıda yazan dost yəqin ki encode, crypt metodların ümumiləşdirib məsəlçün bir funksiya yazıb. hər halda nə demək istədiyi aydındır, sadəcə md5-i decode etməklə bir balaca yanlışlığa yol verib. 🙂
Üzr istıyirəm. Artıq iki ildi phpdən kənaram ona görə yaddan çıxıb. Qocalıq pis şeydi 🙂 Yazmaq istədiyim base64_decode və base64_encode funksiyaları idi. Aşağıda kiçik nümunələr verirəm mənə elə gəlir izzaha ehtiyyac yoxdur.
if (isset($_POST[‘login’])) {
$login = mysql_escape_string(htmlspecialchars(stripslashes(trim($_POST[‘login’]))));
} else {
unset($login);
}
$login=substr($login,0,15);
$q = mysql_query(“SELECT `id` FROM `wap_users` WHERE `login` = ‘”.$login.”‘;”);
if(mysql_num_rows($q) != “0”) {$error = “Teessüf ki, “.$login.” leqebli istifadeçi artıq mövcuddur!”;}
elseif (empty($login)) {$error = “Leqeb gösterilmeyib!”;}
elseif (strlen($login) < "4") {$error = "Leqeb 4 simvoldan az olmamalıdır!";}
Sual verin
Cavab verin