mehmetduran.com - Paylaşmak Güzeldir...
Web Projelerinde Editör Güvenliği
Bu yazımda web projelerinde çok fazla kullanılan html editörler ile ilgili güvenlik sorunlarından bahsedeceğim. Editörleri kullanmamızın en büyük nedeni html kodlamalarla uğraşmamızı engellemesi ve bileşenler sayesinde dosya işlemleri gibi işlemleri kolaylıkla yapabilmemizdir. Güvenlik sorunları da dosya işlemlerini gerçekleştirme aşamasında ortaya çıkmaktadır. Örnek verecek olursak kendi bloğumda kullandığım ve birçok projede kullanılan FCK editörün dosya işlemlerini yapan bölüm. Bu editörün dosya işlemlerini gerçekleştiren bölümü (kontrol edilmediyse) herkese açık. Bu bölüme ulaşan herkes editörü kullandığımız servera istediği her türlü dosyayı yükleyebilecektir. Bunun için editör kullanırken çok dikkatli olmalıyız.

Editörleri seçerken tercih edilen noktalardan en önemlisi dosya işlemlerini yapabilmesidir. Ancak bu işlem editörü kullanacağımız proje için tehlikeli arz etmekte. Eğer dışarıdan dosya işlemlerini yapan sayfalara erişim varsa bu bölüme erişen herkes sunucumuza istediği her türlü dosyayı (resim, script, virüs, vb.) yükleyebilecektir. Bu durumda bant genişliği, virüs saldırıları, sunucu yavaşlaması, hack gibi sorunlar olacaktır. Örnek olarak kullandığım editör olan FCK editörün dosyaları içinde yer alan ve upload işlemini gerçekleştiren bölüme herkes erişebilmekte. Buraya erişmek ise projemizi büyük bir tehlikeyle karşı karşıya bırakmakta. Örnek verecek olursak FCK editörde "..../filemanager/browser/default/frmupload.html" sayfası ile upload işlemi yapılmakta. Editör yolunu tam bilen biri bu adrese girdiğinde açılan bölümden istediği dosyayı yükleyebilmektedir. Bunun dışında dosya listesini veren sayfaya ("..../filemanager/browser/default/frmresourceslist.html") girildiğinde de tüm dosyalar görüntülenecek ve bu dosyalara dışarıdan erişim müsait olacaktır.

Güvenlik Önlemleri ve Yapılacaklar

Peki bu güvenlik sorununu engellemek için yapabileceklerimize bakalım.

Öncelikle ilk yapabileceğimiz iş editör seçim işi. Eğer dosya işlemlerine ihtiyaç duymuyorsak bu işlemleri yapmayan editörleri tercih etmeliyiz. Ancak dosya işlemlerine genellikle ihtiyaç duyulduğu için bu adımı atlayabiliriz.

İkinci yöntem olarak (kullandığım yöntem) editör dosyalarına direk erişimi kısıtlamaktır. Bu yöntem ile erişim kısıtı olan herhangi bir klasör içinde editör dosyalarımızı tutabiliriz. Böylece dışarıdan dosyalara erişmeye çalışanlar sayfalara erişemeyecektir. Klasör kısıtı ise .Net projelerinde üyelik sistemi ile çok rahat bir biçimde yapılabilmektedir. Bu şekilde kendi sitemde kullandığım editör dosyalarını koruma altına aldım. Dışarıdan erişim veya sunucuma dosya yüklemek mümkün değil. Yapabilmek için admin girişi yapılması gerekiyor.

Eğer kontrol işlemi ile uğraşmak istemiyorsak editör dosyalarını koyacağımız dizini iyi seçmemiz gerekir. Örneğin klasör ismini kimsenin tahmin edemeyeceği bir terim koyabiliriz. Bu şekilde de kısmen editör dosyalarına erişimi, saldırıları kısıtlayabiliriz.

Proje ve sunucu güvenliğimiz için hazır olarak kullandığımız editör gibi bileşenleri kullanırken çok dikkatli olmalıyız. Aksi halde yukarıda belirtmiş olduğum açıklar ile biraz bilgisi olan herkes projemize zarar verebilir. Hack olmayan ancak yapacakların hack dedikleri olaylar ile karşı karşıya kalabiliriz. Bunların önüne geçmek için tüm tedbirleri almalıyız.

Bu yazımı bu açığı farkettiğim dönemde (yaklaşık 6 ay öncesi) yazmak istemiştim. Ancak fırsat bulamamam nedeniyle ve FCK editör güvenliği hakkında bir arkadaşımızın sorusu üzerine bu yazımı hazırladım. Umarım bundan sonra hem FCK kullanacaklar hem de dosya işlemini yapan herhangi bir editör kullanacaklar bu sorunları göz önüne alırlar.

İyi Çalışmalar.
Mehmet Duran 14 Haziran Pazar 2009 3 10549 5,0
Bookmark and Share
Bu Yazıyı Değerlendirin.
Konuyla İlgili Olabilecek Diğer Yazılar mvc.mehmetduran.com Yayında! Jquery ile Tab Şeklinde Menü Hazırlama Microsoft Yaz Okulu 2009 Ankara Ayağı Sona Erdi Asp.net MVC'de Kullanıcı Kontrolü (User Control) Kullanımı Asp.net MVC Areas (Tek Proje Kullanarak)
Yorumlar
Yorum Yaz
RSS Yorum Takibi
Özgür S. 15 Haziran Pazartesi 2009 03:07 #1
FCK Editor, iyi bir HTML editor olmakla birlikte, sayfanın içine Dreamweaver gömülmüş hissi veriyor ki bazen çok gereksiz... Gereği olmayan bileşenleri çıkarsanız dahi, bu sefer görünümü kötü... Bence diğer alternatifler de denenebilir. nicEditor gibi. Hem, AJAX 3.5 bileşeni olan editorün nesi var ki :) Niye kimse onu kullanmaz???
Mehmet Duran 15 Haziran Pazartesi 2009 08:45 #2
FCK editör`ün son sürümlerinde de Ajax desteği var ve görsellik bayağı geliştirilmiş. Ancak dediğim gibi güvenlik açıkları her editörde olabilir. Kullanırken dikkatli olmalıyız.
acan 13 Eylül Pazartesi 2010 14:48 #3
Ben nicedit öneriyorummm...
İsim :
Site :
Yorum :

Buradan bu yazıya ait yorumları RSS olarak takip edebilirsiniz.

Bu servis ile yazılara eklenen yorumları RSS ile takip ederek konu ile ilgili başkaları tarafından yapılan yorumları veya konuyla ilgili sorduğunuz sorulara verilen cevapları görebilirsiniz.
Hata yapmayan bir insan genellikle hiçbirşey yapmıyordur.
Bölümler
Yazılar
Arşiv
Arama
Linkler
Site İçi Arama
Son Zamanlarda Ne Yapıyorum ?
İstatistikler - Araçlar - Reklam
İstatistikler
Sayaç
Mehmet Duran | mehmetduran.com | Copyright © 2009