Güvenli olmayan uygulamalar, kullanıcıları ve sistemleri çeşitli zararlara maruz bırakabilir. Kötü niyetli bir tarafın, güvenlik açıklarını veya güvenlik özelliklerinin eksikliğini kendi avantajına kullanarak zarara neden olmasına saldırı denir. Bu kılavuzda, uygulamanızın güvenliğini sağlarken nelere dikkat etmeniz gerektiğini öğrenmeniz için farklı saldırı türlerine göz atacağız.
Etkin saldırılar ve pasif saldırılar
Saldırılar etkin ve pasif olmak üzere iki farklı türe ayrılabilir.
Etkin saldırılar
Etkin saldırıda saldırgan,uygulamaya doğrudan girmeye çalışır. Bu, hassas verilere erişmek için sahte kimlik kullanmaktan (maskeleme saldırısı) uygulamanızı yanıt vermeyecek hale getirmek için sunucunuzu çok fazla trafikle doldurmaya (hizmet reddi saldırısı) kadar çeşitli şekillerde yapılabilir.
Aktarım sırasındaki verilere de aktif saldırılar yapılabilir. Bir saldırgan, uygulama verileriniz kullanıcının tarayıcısından önce değiştirilerek sitede değiştirilmiş bilgiler gösterebilir veya kullanıcıyı istenmeyen bir hedefe yönlendirebilir. Buna bazen mesajların değiştirilmesi denir.

Pasif saldırı
Pasif saldırıda saldırgan, uygulamadan bilgi toplamaya veya öğrenmeye çalışır ancak uygulamanın kendisini etkilemez.

Birisinin arkadaşlarınız ve ailenizle yaptığınız sohbetlere kulak misafiri olduğunu, kişisel hayatınız, arkadaşlarınız ve nerelerde takıldığınız hakkında bilgi topladığını hayal edin. Aynı şey web trafiğiniz için de yapılabilir. Saldırganlar, tarayıcı ile sunucu arasındaki verileri yakalayarak kullanıcı adlarını ve şifrelerini, kullanıcıların tarama geçmişini ve paylaşılan verileri toplayabilir.
Saldırılara karşı savunma
Saldırganlar, uygulamanıza doğrudan zarar verebilir veya siz ya da kullanıcılarınız fark etmeden sitenizde kötü amaçlı işlemler gerçekleştirebilir. Saldırılar algılamak ve bunlara karşı koruma sağlamak için mekanizmalara ihtiyacınız vardır.
Maalesef uygulamanızı% 100 güvenli hale getirecek tek bir çözüm yoktur. Uygulamada, saldırıyı önlemek veya daha da geciktirmek için katmanlar halinde birçok güvenlik özelliği ve tekniği kullanılır (buna derin savunma denir). Uygulamanızda form varsa girişleri tarayıcıda, ardından sunucuda ve son olarak veritabanında kontrol edebilirsiniz. Ayrıca, aktarılan verileri güvence altına almak için HTTPS'yi de kullanırsınız.
Son adım
Birçok saldırı, sunucunuza hiç dokunmadan gerçekleşebileceğinden, saldırı olup olmadığını tespit etmek bazen zordur. İyi haber şu ki web tarayıcılarında yerleşik güçlü güvenlik özellikleri bulunur. Daha fazla bilgi edinmek için "Tarayıcının saldırıları nasıl azalttığı" başlıklı sonraki konuyu inceleyin.