Web sitemin ne kadar güvenli?

5 Cevap php

Bir başlangıç ​​web geliştiricisi olarak, ben çek üzerinden tüm kullanıcı girdileri temizlemek için elimden geleni ve ne değildir. Ancak, bugün, benim web sitesi hacklenmiş (Ben istek üzerine kendi web sitesi paylaşacağım) ve gerçekten bunu nasıl yaptın benim merak yapıldı öğrendim. Ben tekrar birlikte benim web sitesi alma sürecinde yaşıyorum. Ben bu şeyleri önlemek için ne yapmalıyım? Ben konuşmak ve benim web sitesi ne kadar güvenli olduğunu sormalısınız insanlar var mı? Ben güvende web siteme tutmak için ne yapabilirim? PHP ve MySQL web siteme yazdım.

Update: Finally restored the back ups. I use $_GET["name"] in my script, and I'm guessing that's how they got into my website. First, they were able to put an index.html/index.php file in EACH and every folder on my server. Anyone know how I can counter this?

Update: Bu aslında benim kesmek var sitesi, henüz ev sahibi değildi. SSH şifre kırık ve her klasörde yeni bir dizin dosyası kuruldu.

5 Cevap

Bu son derece geniş bir soru, bu yüzden alacağınız cevaplar eşit geniştir.

Güvenlik için web sitenizi test etmek için, yapabileceğin penetration testing. Sizin için yapacak şirket var. Ayrıca Google Skipfish bakmak olabilir.

Eğer web sitenizin güvenli tutmak için ne yapabilirim? Şunları yapabilirsiniz:

  • Dezenfekte ve tüm girdilerini doğrulamak - ayrıca kurabiye, bunlar istemci tarafından gönderilen her şey gibi tahrif edilebilir.
  • Son güvenlik yamaları ile OS ve up-to-date çerçeveler tutun. Eğer bir CMS kullanıyorsanız, hem de bu up-to-date olmak emin olun.
  • Önce bunu kodlamak html sürece, geri kullanıcı tarafından gönderilen metin göndermek asla.
  • Uzak SQL enjeksiyon saldırıları tutmak için parametreli SQL sorguları kullanın.
  • Genel olarak, Code defensively.

Her şeyi kapsamaz da, OWASP bakarak düşünebilirsiniz. Onların Top ten 2010 için son zamanlarda piyasaya ve makul bir genel bakış ortak güvenlik açıkları verir olmuştur.

Kontrol etmek için iki büyük şeyler vardır SQL injection ve remote code execution.

Bazı güvenilmeyen kaynak (örneğin, entire freaking world!) girdi alır ve bir SQL sorgusu olarak kullandığınızda SQL injection olur. Düzeltme sorguları ve güncellemeleri kurmak için dizge ikame kullanarak durdurmak için, ve parameterized sorgular / güncellemeleri titizlikle sadık olmaktır. O yanlış almak çok daha kolay olduğundan alıntı büyü kullanarak, bu ile uğraşan bir çok aşağı bir yaklaşım olduğunu unutmayın; Için denetlemek kolay basit bir yoludur "always every sorgu parameterize". (Evet, gerçekten burada tüm kodu denetlemek gerekir. Bunun için üzgünüm.)

Eğer web sitesi bir istemci web sunucusu yazamıyor bir dizinde web sitesinde önceden yüklenmiş değil PHP çalıştırmak için web sitesi sormak için izin vermek için herhangi bir mekanizmaya sahip olduğunda Remote code execution olduğunu. Bir kurnaz kraker bir rootkit ya da diğer hain içerik indirmek için web sunucusu sorabilirsiniz, çünkü evet, uygundur, ama ultra tehlikeli. Biz bir iş bizim ana web sunucusu ile çok, bu yüzden şimdi uzak PHP kod yürütme (ya da, aslında, olmayan bir başka herhangi bir bağlantı açılması ile (uzaktan kaydı ile) kesinlikle salt okunur dosya sistemi üzerinde çalıştırmak almak için kullanılır -beyaz listelenen sunucu) kesinlikle yasaktır. Bu işe alma tutmak çeşitli harici web tasarım danışmanlık müthiş sinir bozucu, ama onlar, güvenli bir sistem çalıştıran bütün iş de çok sık çok profesyonel değiliz çünkü bu, ve bu saldırıların bütün bu sınıf kilitli olduğu anlamına gelmez .

Sitenizde exactly bir saldırı olmasa da (dikkat etmek başka bir şey, XSS olduğunu. Size doğru veritabanı çıkan güvenilmeyen içeriği alıntı başarısız olduğunda bu izin, olur hain içerik aslında per se. gibi şeyler alma ucunda olmaktan sitenizi savunmak önemlidir hack olmadan sitenizden kadar hizmet verilecek, ancak ilk bu kadar daha ciddi tehditleri çözmek için var Sitenizde herhangi bir daha toksik bir zombi olmadığını.)

SQL enjeksiyonu önlemek. Iyi parolalar kullanın. (_GET Ve _POST php vars gibi) ve her zaman kullanıcı girişi kontrol edin.

Driis iyi bir cevap verilmiştir. Ben sadece saklı yordamlar bu kullanımı da çok yararlı olabilir eklemek istiyorum.