This question and its answers are now out of date
, Yeni bir kod yazmak için mysql_*
işlevleri kullanmak etmeyiniz. Onlar artık korunur ve topluluk deprecation process başladı. red box ? Instead you should learn about prepared statements gör ve ya PDO ya da MySQLi kullanın. Eğer karar veremiyorsanız, hangi this article size yardımcı olacaktır. Eğer PDO almak ise, here is good tutorial. Ayrıca PHP Why shouldn't I use mysql
fonksiyonlar görmek? A>
this awesome guide on Stack görmeye ve in-house pratik bir PHP/MySQL
güvenlik kontrol listesi ihtiyacı sonra, orijinal kılavuz saygı ödemek için karar verdik.
Neye ihtiyacım PHP
ve MySQL
için practical güvenlik kontrol listesi olduğunu. Cevaplar kılavuzları olarak işlev gerekir iken burada içerikleri kontrol listesi olarak işlev görebilir.
Tarafından practical Ben her cevap gereksiz güvenlik nazariye önlemek ve gerçek sonuçlara odaklanması gerektiği anlamına gelmektedir. Çoğumuz hakkında bilmeniz gerekmez RFC3174
bir SHA-1
hash kullanarak şifreleri güvenli düşündüren olduğunuzda. Biz sadece şifreleri güvenli yapmak istiyorum.
Ben zaman zaman girdileri geçmesi ve tutarlı bir görünüme sahip bu yüzden onları düzenli ve hissediyorum ve bu listeyi taramak kolay olacaktır. Şablona basit bir "- kısa açıklama - FRİKİKLERİNDEN ve ekstra bilgi - talimatlar liste başlığını" takip çekinmeyin. Daha sonra onları bulmak kolay yüzden ben de aşağıda kurşun listeden girişlere bağlamanız gerekir.
Procedural note: aşağıdaki konulardan one and only one almak ve açık ve kesin bir cevap LÜTFEN. Bir yanıt içine bir bilgi demet reçel kalkmayın. Sadece diğer kaynaklara link vermeyin - kesim ve telif hakkı veriyorsa atıf ile yapıştırın, aksi halde (bu kişi bir görevi öğrenmek için bu sayfayı terk yapmayın olduğunu) öğrenmek ve kendi sözleriyle açıklar. Açıklamanız çok farklı olduğunu ve toplum daha farklı bir açıklama ile servis edilir düşünüyorum sürece, ya da düzenlemek, varolan cevabı konusunda yorum yapın.
PHP
Validate user input
Guard your file system
Guard your sessions
Guard against XSS vulnerabilities
Guard against invalid POST
s
Guard against CRSF
Stop using $_REQUEST
Stop using register_globals
MySQL
Avoid SQL injection
Use mysql_real_escape_string
SQL
enjeksiyon a> karşı koruma sağlamak için
Keep in mind that the above list is only a starter, and that many of the above topics will likely become sub-headers and are too broad to write on. Try to distill something smaller like "Stop using register_globals
" rather than, say, trying to write an answer on XSS as a whole. Over time I hope everyone can add many more things.