Yazar |
|
dotnetonur
Dersaadet
Kayıt: 21.11.2007 |
|
http://forums.asp.net/
http://forum.yetanotherforum.net/
Birisi ASP.NET in resmi forumu, diğeri de .NET teknolojileri ile geliştirilmiş diğer açık kaynak kodlu bir forum. Açıkçası phpBB kadar hızlı değiller ve bu yüzden .NET teknolojilerini ne kadar övsem ve kullansam da forum kuracağım zaman phpBB`den şaşmıyorum :)
phpBB, performans açısından iyi olsa da açık kaynak kodlu bir sistem üzerine inşa edilmesi (Linux-Apache Server-PHP) ve kendisinin de açık kaynak kodlu olması nedeniyle, vulnerabilities bakımından bol bir script olmakta.
Uzun süredir Bug Research`den uzak kaldım ama en son bildiğim kadarıyla en çok exploit edilen scriptlerden birisi phpBB`dir.
Ortam sanal olsa da, islenen suc gercektir...
|
|
Yazar |
|
dotnetonur
Dersaadet
Kayıt: 21.11.2007 |
|
Evet, yanılmamışım..
2004-12-25 tarihinden itibaren 2007-11-17 tarihine kadar phpBB scripti ve eklentilerinde 100 civarı bug bulunmuş..
Sizce açık kaynak kodlu web programlama dillerinin en yaygını olan PHP ile kodlanmış tek bir scriptte bile bu kadar çok açık çıkıyorsa, sizce bu dilin inşasında ki eksiklik mi yoksa PHP kodlama yapan programcıların eksikliği midir ? Ki şuan bahsettiğimiz script, en iyi PHP forumlardan biridir ve bir ekip tarafından kodlanmaktadır...
Ortam sanal olsa da, islenen suc gercektir...
|
|
Yazar |
|
burakkanmaz
Gaziantep
Kayıt: 02.10.2006 |
|
dotnetonur yazdi | Sizce açık kaynak kodlu web programlama dillerinin en yaygını olan PHP ile kodlanmış tek bir scriptte bile bu kadar çok açık çıkıyorsa, sizce bu dilin inşasında ki eksiklik mi yoksa PHP kodlama yapan programcıların eksikliği midir ? Ki şuan bahsettiğimiz script, en iyi PHP forumlardan biridir ve bir ekip tarafından kodlanmaktadır... |
Bana göre bu açık sistemin büyüklüğü ile doğru orantılıdır. Bugün aynı forumu .NET te yapsak yine birçok açığı olacaktır. Ve bunun scripti kodlayanların eksiği olarak düşünüyorum. Sonuçta bizim açık diye tabir ettiğimiz olaylar (örn:SQL Injection,Exploit vs. gibi yaygın açıklar) hep programlama eksiği yüzünden olmakta. PHP sana SQL kullanma özelliği veriyor ama sen kodlarken farklı şekilde sql kod girişini düşünemiyorsun. Bu açık bence PHP nin değil kodlayan kişi(ler)in hatasındandır.
Şu anda olasılık çalışıyorkene bu konuya olasılık açısından bakarsak, büyük sistemler yazılmış her dilin 100+ açık oluşturma olasılığının açık oluşturmama olasılığına oranının olasılığı Başım döndü ya olasılıklarla
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
php , değişken tanımı olmaması nedeniyle veritabanı uygulamaları geliştirmek için en sağlam dillerden biridir. dinamik olarak nesne üretebilir. cache ve templating yapabilir.
N/A
|
|
Yazar |
|
dotnetonur
Dersaadet
Kayıt: 21.11.2007 |
|
burakkanmaz yazdi | dotnetonur yazdi | Sizce açık kaynak kodlu web programlama dillerinin en yaygını olan PHP ile kodlanmış tek bir scriptte bile bu kadar çok açık çıkıyorsa, sizce bu dilin inşasında ki eksiklik mi yoksa PHP kodlama yapan programcıların eksikliği midir ? Ki şuan bahsettiğimiz script, en iyi PHP forumlardan biridir ve bir ekip tarafından kodlanmaktadır... |
Bana göre bu açık sistemin büyüklüğü ile doğru orantılıdır. Bugün aynı forumu .NET te yapsak yine birçok açığı olacaktır. Ve bunun scripti kodlayanların eksiği olarak düşünüyorum. Sonuçta bizim açık diye tabir ettiğimiz olaylar (örn:SQL Injection,Exploit vs. gibi yaygın açıklar) hep programlama eksiği yüzünden olmakta. PHP sana SQL kullanma özelliği veriyor ama sen kodlarken farklı şekilde sql kod girişini düşünemiyorsun. Bu açık bence PHP nin değil kodlayan kişi(ler)in hatasındandır.
Şu anda olasılık çalışıyorkene bu konuya olasılık açısından bakarsak, büyük sistemler yazılmış her dilin 100+ açık oluşturma olasılığının açık oluşturmama olasılığına oranının olasılığı Başım döndü ya olasılıklarla |
Ama en çok açık, PHP ile yazılan sistemlerde meydana gelmektedir :)
.NET ile yazılan sistemlerde exploit edilebilecek derecede önemli bir açık olmadı bugüne kadar.
orhan`ın dediği gibi belki PHP dediği özellikler bakımından üstün bir dil olabilir ama aşırı derecede güvenlik açığına da sebeb verebilmektedir. Yani PHP ile güvenli bir sistem yazmak zordur...
Ortam sanal olsa da, islenen suc gercektir...
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
dotnetonur yazdi |
Ama en çok açık, PHP ile yazılan sistemlerde meydana gelmektedir :)
.NET ile yazılan sistemelerde exploit edilebilecek derecede önemli bir açık olmadı bugüne kadar.
orhan`ın dediği gibi belki PHP dediği özellikler bakımından üstün bir dil olabilir ama aşırı derecede güvenlik açığına da sebeb verebilmektedir. Yani PHP ile güvenli bir sistem yazmak zordur... |
açıkların php ile alakası yok ki. sen sistemi güvenli kılmak için gerekli önlemleri almak zorundasın.
N/A
|
|
Yazar |
|
dotnetonur
Dersaadet
Kayıt: 21.11.2007 |
|
orhan yazdi | dotnetonur yazdi |
Ama en çok açık, PHP ile yazılan sistemlerde meydana gelmektedir :)
.NET ile yazılan sistemelerde exploit edilebilecek derecede önemli bir açık olmadı bugüne kadar.
orhan`ın dediği gibi belki PHP dediği özellikler bakımından üstün bir dil olabilir ama aşırı derecede güvenlik açığına da sebeb verebilmektedir. Yani PHP ile güvenli bir sistem yazmak zordur... |
açıkların php ile alakası yok ki. sen sistemi güvenli kılmak için gerekli önlemleri almak zorundasın. |
Açıkların PHP ile alakası var aslında :)
PHP programlama dilinin sistematiği nedeniyle, güvenlik önlemi almak zorlaşıyor. Her bir saldırı türünü önlemek için ayrı ayrı fonksiyonlar yazıp sayfaya include etmek zorunda kalıyorsunuz.
Hadi diyelim, XSS, SQL Injection gibi bilinen saldırı türlerine, hazır fonksiyonlarla önlem aldınız. Ama yine PHP nin oluşturulmasında yapılan hatalar nedeniyle ortaya çıkan RFI-LFI açıkları daha 2 sene önceye kadar Türkiye bilinmiyordu bile. Sağolsun bir hack sitesindeki DJR nickli şahıs, açığın nasıl kullanılacağını ve kapatılacağını öğretti de yavaş yavaş ona da önlem almaya başladı coderlar.
Ama .NET`te hiçbir güvenlik önlemi almadan sayfadaki bir textbox`dan veritabanına veri girme işlemi yapacağınızı farz edelim. Eğer textbox`a <script>alert("xss")</script> gibi bir ifade girmeye kalkarsanız, otomatik olarak uyarı verip zararlı kod algıladığını ve bunu veritabanına ekleyemeyeceğini söyleyecektir.
Ya da .JSP ile yaptığınız iucoders sitesinde parametreleri filtrelemediğiniz zaman, sayfanın kodlarının bir kısmını dahi görebilirsiniz. :)
Ortam sanal olsa da, islenen suc gercektir...
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
dotnetonur yazdi |
Açıkların PHP ile alakası var aslında :)
PHP programlama dilinin sistematiği nedeniyle, güvenlik önlemi almak zorlaşıyor. Her bir saldırı türünü önlemek için ayrı ayrı fonksiyonlar yazıp sayfaya include etmek zorunda kalıyorsunuz.
|
Güvenlik kavramı developer tarafından düşünülmeli. Ben x sayfasına 123xy değerlerini sokmak istiyorsam z geliyorsa z yi engelleme işlemini framework yapmamalı.
|
Hadi diyelim, XSS, SQL Injection gibi bilinen saldırı türlerine, hazır fonksiyonlarla önlem aldınız. Ama yine PHP nin oluşturulmasında yapılan hatalar nedeniyle ortaya çıkan RFI-LFI açıkları daha 2 sene önceye kadar Türkiye bilinmiyordu bile. Sağolsun bir hack sitesindeki DJR nickli şahıs, açığın nasıl kullanılacağını ve kapatılacağını öğretti de yavaş yavaş ona da önlem almaya başladı coderlar.
|
Bir geliştirici olarak kullanıcıya sunduğun içerikten sen sorumlusun ve bu sorumluluk ile bu işi yapman gerekiyor. Ayrıca php de bildiğim kadarıyla fonksiyonlar tek dosyadan kapatılabiliyor. Ayrıca apache'nin bahsettiğin saldırı türleri için mod_ ları var. bunları enable etmen yeterli.
|
Ama .NET`te hiçbir güvenlik önlemi almadan sayfadaki bir textbox`dan veritabanına veri girme işlemi yapacağınızı farz edelim. Eğer textbox`a <script>alert("xss")</script> gibi bir ifade girmeye kalkarsanız, otomatik olarak uyarı verip zararlı kod algıladığını ve bunu veritabanına ekleyemeyeceğini söyleyecektir.
Ya da .JSP ile yaptığınız iucoders sitesinde parametreleri filtrelemediğiniz zaman, sayfanın kodlarının bir kısmını dahi görebilirsiniz. :) |
Şu senaryo bahsettiğin durum da geçersiz. Ben <>'' alanlarını kullanıyorum bunlar gerekli. Bu durumda bahsettiğin şeyler geçersiz.
JSP de gosterilecek hatayı filtreleyebilirsin. 1 Sayfada array olan dizinin length ini kontrol etmedim. Siteyi zorda bırakan bir açık değil. Ayrıca bu site flood yemez. Sitenin bir çok bölümünde MD5 token ring kullanıyoruz. Kodun buyuk bir kısmı da compile edilmiş class tır.
N/A
|
|
Yazar |
|
dotnetonur
Dersaadet
Kayıt: 21.11.2007 |
|
| Güvenlik kavramı developer tarafından düşünülmeli. Ben x sayfasına 123xy değerlerini sokmak istiyorsam z geliyorsa z yi engelleme işlemini framework yapmamalı. |
Tabi ki tamamen yapay zekaya dayalı bir saldırı önleme sistemini bünyesinde barındırması gerekmiyor frameworkun. Ama frameworku geliştirenler de birer developer ve güvenlik kavramını onlar da düşünmek zorundalar. Sağlam düşünülmeden yapılan bir sisteme, her hafta yama yapmaktansa analiz ve proje yönetiminin dikkatli yapılıp yapılandırılmış bir sistemi release etmek, hem prestij için hem de developerlar için daha mantıklı değil mi ?
| Bir geliştirici olarak kullanıcıya sunduğun içerikten sen sorumlusun ve bu sorumluluk ile bu işi yapman gerekiyor. Ayrıca php de bildiğim kadarıyla fonksiyonlar tek dosyadan kapatılabiliyor. Ayrıca apache'nin bahsettiğin saldırı türleri için mod_ ları var. bunları enable etmen yeterli. |
İşte benim de konuyu getirmek istediğim nokta buydu. Acaba kaç developer bu sorumluluğun farkında ? Ya da daha ütopik bir deyişle, kaç dil geliştirici developerların bu sorumsuzluğunun farkındalığıyla geliştirme sürecini tekrardan yapılandırıyor ?
Ben, bugların tek bir dosyadan fixleneceğini bilsem bile, hangi bugun nasıl oluştuğunu, nelere mal olacağını bilmedikten sonra, fixleme olayının nasıl yapacağımı bilmemin bana ne faydası var ?
| Şu senaryo bahsettiğin durum da geçersiz. Ben <>'' alanlarını kullanıyorum bunlar gerekli. Bu durumda bahsettiğin şeyler geçersiz.
JSP de gosterilecek hatayı filtreleyebilirsin. 1 Sayfada array olan dizinin length ini kontrol etmedim. Siteyi zorda bırakan bir açık değil. Ayrıca bu site flood yemez. Sitenin bir çok bölümünde MD5 token ring kullanıyoruz. Kodun buyuk bir kısmı da compile edilmiş class tır. |
Aslında bu da bizim değil, bugüne kadar text editorlere uygulanan güvenlik senaryolarının yanlışlığındandır.
Piyasadaki tüm text editorler, izin verilmeyen tagların çalışmaması mantığıyla hareket ettiğinden dolayı, ne kadar da replace etseniz de bir şekilde fonksiyonu aşabiliyorsunuz. (Bkz: Web Wiz Son Versiyon Text Editoru) Ama text editorlerin hiç biri sadece izin verilen taglari çalıştırma mantığına dayanmıyor ? iddia ediyorum böyle bir text editor olsa, onu temizleyen fonksiyonu sitenin input alan her tarafında kullanabilir ve URL veya İnput alanlarından gelen saldırıların hepsini engelleyebilirsiniz...
Ortam sanal olsa da, islenen suc gercektir...
|
|
Yazar |
|
einsteine
istanbul
Kayıt: 29.10.2007 |
|
tartışmalardan da görüldüğü gibi microsoft kazandı .. asp.net in bayağı bi avantajı var asp ye göre ve php ye göre ....
|
|
Yazar |
|
tarikkranda
Kayıt: 07.01.2006 |
|
ASP.NET in PHB den yavas oldugunu da nerden çıkarıyorsunuz ya da büyük forumları yönetemeyeceğini. Üşenmesem 1000 tane forum örneği gösterirdim ama zamanım yok şu anda. Performans için her türlü imkan sunulmuş, güvenlik için se ASp.NET yapısı itibari ile birçok güvenlik açığının önüne geçecek şekilde tasarlanmıştır, sizin ayrıca kodlama yapmanıza gerek yoktur, her çıkan yeni versiyonu ile bu özelliği geliştirilmektedir. Diger platformlarla da çok güzel işler çıkarılabiliyor elbette. Yazılımcının yeteneğine kalmış birşey. Bence ASP.NET her 3 unden de avantajlıdır ve tasarlanamayacak sistem, kaldıramayacağı yük yoktur, kisisel fikrim.
|
|
Yazar |
|
einsteine
istanbul
Kayıt: 29.10.2007 |
|
bize birazda .net in işleyişi hakkında bilgi verebilrmisniz...yani nerede yapılıuyor asp gibi front page gibi yerlerdemi yapılyor...
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
dotnetonur yazdi |
Tabi ki tamamen yapay zekaya dayalı bir saldırı önleme sistemini bünyesinde barındırması gerekmiyor frameworkun. Ama frameworku geliştirenler de birer developer ve güvenlik kavramını onlar da düşünmek zorundalar. Sağlam düşünülmeden yapılan bir sisteme, her hafta yama yapmaktansa analiz ve proje yönetiminin dikkatli yapılıp yapılandırılmış bir sistemi release etmek, hem prestij için hem de developerlar için daha mantıklı değil mi ?
|
Burada senin farkın ortaya cıkacak zaten. Amele developer ile kaliteli developer arasında bri fark olmalı. Tabi bu arada birşeyi soylemeyi unuttuk. asp, php vs.. dillerde html encode / decode açılıp kapatılabiliyor. :)) Ekstra bir filtreye gerek yok.
|
İşte benim de konuyu getirmek istediğim nokta buydu. Acaba kaç developer bu sorumluluğun farkında ? Ya da daha ütopik bir deyişle, kaç dil geliştirici developerların bu sorumsuzluğunun farkındalığıyla geliştirme sürecini tekrardan yapılandırıyor ?
|
Burada iki farklı yaklaşım ortaya çıkıyor. Bunları bilmek zorunda mıyız? Farzedelim windows işletim sistemi için driver yazıyorsun. Yazdığın driverdaki bir açık sistemi kullanılmaz hale getirdi.
|
Aslında bu da bizim değil, bugüne kadar text editorlere uygulanan güvenlik senaryolarının yanlışlığındandır.
|
Text editorlerde sınır olmaz. Bir ofis dökümanını gösterecek kadar zengin olabilir. Filtreni kendin yazman lazım. tahribat.com da TinyMCE var ve filtre çok sağlam.
N/A
|
|
Yazar |
|
orhan
istanbul
admin
Kayıt: 17.11.2005 |
|
php java ve .net in birbirinden üstün oldukları alanlar vardır mutlaka ama şu daha iyidir demek anlamsız olur.
N/A
|
|
Yazar |
|
onur
Two Story Town
Kayıt: 14.01.2006 |
|
orhan yazdi | php java ve .net in birbirinden üstün oldukları alanlar vardır mutlaka ama şu daha iyidir demek anlamsız olur. |
bence de dili kullanan kisiye gore degisir.Ustunluk konusunda Orhan'a katiliyorum.
.net -> hepsiburada.com
php -> facebook
jsp -> bircok bankanin internet subesi,iucoders
bu orneklere baktigim teknoloji tercihinin o kadar da onemli olmadigini yaptigin isi layigiyla yapmanin onemli oldugunu anliyorum ben.
|
|
|
|
-
Del.icio.us
-
Digg
-
Facebook
-
Furl
-
Google
-
Blink
-
Simpy
-
Spurl
-
Y! MyWeb
|
|
| | | | | | | | | | | |