Bilmek istediğin her şeye ulaş

Php dili ile hazırladığım web sitemi kendime ait bir yüksek güvenlikli sunucuda yayınlamak istiyorum. Bunu nasıl yapabilirim?

Pek ilgi alanıma girmez fakat; güvenli sunucu linux'tan geçer, izinler iyi ayarlanmalı. Gerisi PHP kodunuza bakar. SQL Injection yemediğiniz sürece çok büyük bir güvenlik açığı yok demektir. Kullanıcının veri girebileceği tüm dataları bir güvenlik fonksyonundan geçirin (Post ve Get gibi diziler). COokie kullanmayın, zira cookieler düzenlenebiliyor bu da güvenlik açığına neden oluyor, yerine session kullanın - zaten kullanımı aynı diyebilirim.
Yanlışım varsa düzeltin...
  • Paylaş
Session kullanıyorum genelde sql injectiondan korunmak içinde java tabanlı uygulamalar kullanıyorum sorun sunucu yapmakta ona taklıdım...
  • Paylaş
2

Berkay Kuvancı, "sql injection java tabanlı uygulamalar kullanıyorum" bu konu hakkında biraz bilgi verebilirmisiniz ?

Codemaster, yani sql injection turu saldırılardan korunmak için;
Örneğin:
tc kimlik numarası almam gereken bir kutucuk için 11 karaktrden oluşma ve sadece rakamlardan ibaret olması koşulu ile diğer sayfaya geçmesine izin veriyorum. (java tabanlı uygulama orda yanlış olmuş) bunun için javascript türü yazılımlar kullanıyorum.

Javascript de düzenlenebilir sonuçta sunucu tabanlı çalışmıyor, firebug gibi basit bir uygulama ile js engeli aşılabilir
  • Paylaş
Kendinize ait sunucuya ftp üzerinden girin sonra yayınlayın bunun için masaüstü-bilgisarım-bilgisayarım bölümündeki adres satırına aynen şöyle ftp://google.com yazın girin ama linux bir sunucuysa daha net bir çözüm alırsınız...
  • Paylaş
İnputları ajax kontrolünden geçirebilirsiniz; ama jquery ile kontrol ettikten sonra ajax ile çalıştıracağınız dosyaya post edin, döenen değere göre işlem yapın.

Tam istediğiniz cevap olmamış olabilir; ama eğer çok önemli bir projeyse bir sistem uzmanı vs. danışın derim.

  • Paylaş
Güvenlik uçtan, uca sağlanabilecek bir kavramdır. Sadece sunucu veya yazılım ile güvenlik olmaz. Öncelikle korumak istediğin yapının değerini bir hesapla, daha sonra bunu korumak için ne kadar maliyete katlandığını bir çıkar. Örn: 1. 000 TL'lik bir yazılımı 400TL güvenlik yatırımı yaparak koruyorsan ciddi bir problem var demektir. Güvenlik konusu çok geniş bu nedenle o kısmı şimdi detaylandırmam çok zor.

Özetle; Back-End ve Front-End web server mantığını bir araştırmanı tavsiye ederim. Ön kısımdaki reverse proxy şeklinde çalışıp, maskeleme yapabilir. Back-end'de çalışanda sadece kendi gateway'indeki private IP'lere hizmet verecek şekilde ayarlayabilirsin. Bu şekilde yapıyı kurduktan sonra arkadaşlarında bahsettiği gibi dosya izinlerini iyi ayarlaman, PHP uzantısını değiştirmen. PHP session name'i farklı bir isim ile değiştirmen.

Yani kısacası dışarıdan senin web server, programlama dilin veya network'ün ile ilgili bilgi verebilecek herşeyi kapatman gerek. Hata sayfalarını da unutmamalısın. O/S olarak tavsiyem Linux temelli bir şey kullanman olacaktır. Debian senin için iyi bir seçim olacaktır. Hem paketleri güncel hemde RedHat gibi complex değildir.

Bu kısımları tamamladıktan sonra, web uygulamalarında güvenlik açıkları en çok kullanıcı girdilerinden oluşur yani form'lar v. S. Aracılığı ile dışarıdan aldığın datadan kaynaklanır. Bu nedenle dışarıdan aldığın tüm datayı süzmen, kontrol etmen gerek. SQL ile iletişimde araya mutlaka profesyonel bir framework veya DAL ekle. Olmadı SQL command'ı direkt execute etme SQL statement kullan.

Server üzerindeki log'lama işlemlerine dikkat et. Düzenli olarak loglarını takip et. Eğer network güvenliği konusunda problem yaşarım diyorsan CloudFlare adlı bir firma var buradan ücretsiz veya 20$ vererek Pro hizmetlerinden faydalanabilirsin.

PHP uygulamanın kaynak kodlarını IonCube gibi bir yazılım ile şifrele ve asla orjinal dosyaları server'da tutma. Tek root hesap olsun. SSH, FTP, MySQL gibi servislerin default port'larını değiştirmeyi unutma.

Eğer Linux Debian kullanırsan aptitude ve htop paketlerini kurmayı unutma. Yönetim kısmında sana kolaylık sağlarlar, acemiliğini atana kadar senin yerine bir çok şeyi yaparlar.

Diğer bir tavsiyemde eğer evdeki IP adresin sabit ise veya ofiste secure bir network'ünüz varsa oradaki IP adresini SSH'a tanımla. Sadece senin tanımladığın IP'lerden request kabul etsin.

Daha bir sürü şey var ama bu söylediklerimi yapar ve birazda araştırıp üzerine 3-5 bir şeyde kendin eklersen gelebilecek saldırıların %85'den kurtulmuş olursun. Profesyonel hacker dediğimiz tayfada zaten kolay, kolay bu tür web siteleri ile falan uğraşmaz. Geri kalan kendini Kevin Mitnick sanan kitleyi de bunlar durdurabilir ; )

Saygılar.
  • Paylaş
Sonraki Soru
HESAP OLUŞTUR

İstatistikler

1483 Görüntülenme7 Takipçi6 Yanıt