SQL Injection və XSS

Salam, PHP-da SQL Injection-dan qorunmaq üçün mysqli prepare metodundan istifadə edirəm amma internetdə bunun hacklana biləcəyini görmüşdüm. Sizcə prepare metodu güvənlidir? XSS - xss dan qorunmaq üçün isə php-da bir neçə yol var. strip_tags, htmlentitles, htmlspecialchars, filter_input_array. Bunların bir-birindən fərqini az çox bilirəm. Bəs XSS-dan qorunmaq üçün hansını istifadə eləməliyəm??

Verilmiş cavablar və yazılan şərhlər (4 cavab var)

E. Hacı (2016-06-27 16:22:11)
Aha oradakı cavabda aydın izah edilir. Ki giriş zamanı injectionun qarşısını necə alır, amma 2-ci dərəcəli injection hallarında(oxunma zamanı) hansı problemlər çıxa bilər və.s. orada verilən əks nümunələr isə utf8 halında işləmir, hansı ki biz daim utf-8 ilə işləyirik onsuz da(ən azından öz milli hərflərimiz digər yayğın character setlərdə yoxdur deyə)

Nicat97 (2016-06-27 15:40:38)
PDO ilə prepare linki: http://stackoverflow.com/questions/134099/are-pdo-prepared-statements-sufficient-to-prevent-sql-injection

Hasan0208 (2016-06-27 14:26:39)
Kodlarınızı PDO ilə yazın.

E. Hacı (2016-06-27 13:04:50)
Hacklana biləcəyini deyən mənbəni göstərin lütfən. mysqli prepare tam güvənlidir. prepare istifadə etmədikdə isə hə öz yerlərinə uyğun olaraq: addslashes, intval(), mysql_real_escape_string və.s. istifadə etmək olar. Ümumiyyətlə injection baxır nə mənada deyilir. Birbaşa bazanı hack etmək üçün olan injectionu təkcə addslashes() və ya mysql_real_escape_string qarşısın alır. Amma digər məsələ də var axı. Sonra bu data hardasa istifadə olunacaq axı. Deməli ya bazaya girərkən bütün tədbirlər görülməlidir, ya da bazaya sadəcə escape ilə buraxıb bazadan oxuyarkən htmlentities filan kimi tədbirlər görülməlidir.

Mövzu üzrə bənzər suallara da baxa bilərsiniz.

Notepad++ ilə fayl müqayisəsi

PHP error funksiyaları

Məlumatlar filterdən keçir, amma HTML teqlərindən istifadə edə bilmirəm

MYSQL bazayla əlaqə

Texno Portal açsam uğurlu olarmı ?

php de Azercell şifənin təsdiqi