Reported by Mustafa ULU

Mart 2008’de rapor ettiğim bu güvenlik açığı Ekim 2009’da giderildi.

SA-CONTRIB-2009-081 – Abuse – Cross Site Scripting

The Abuse module enables users to flag nodes and comments as offensive, bringing them to the attention of the site maintainer for review. The module suffers from a Cross Site Scripting (Cross Site Scripting) vulnerability. Such an attack may lead to a malicious user gaining full administrative access. Okumaya devam et Reported by Mustafa ULU

Java Day 2009’dan haber veren yok mu?

Bugün bunu yaptım ama şunu yapmayı unuttum tarzı yazılarla dolu olan blogküre gerçekten blog yazarlığından habersiz görünüyor.

Sun Microsystems 25 Haziran günü İstanbul’da Java Day 2009 organizasyonunu düzenledi. Blog yazarlarımız bu etkinliği günler öncesinden haber verdiler fakat kendileri etkinliğe katılmayı unuttular. Yukarıda alıntıladığım, Bildirgeç’te yayımlanan şu yazının giriş cümlesinin ne kadar doğru olduğunu bir kere daha anımsadım.

Blogküre‘de Java Day aramasında çıkan sonuçlardan sadece ikisi etkinlik sonrasında yazılmış. Onlar da blog değil portal tarzı sitelerden geliyor. Bir tanesi kaliteli içeriğe sahip. 3 tane röportaj yayımlamışlar; [1], [2], [3].

Bir tane de FriendFeed canlı yayını bulabildim.

Drupal 7 kullanıcı parolalarını veritabanında nasıl tutuyor

Drupal 7 kullanıcı parolalarını saklamak için yeni bir yöntem kullanıyor. Bu yöntem önceki Drupal sürümlerine göre daha güvenli olan ve yazılımlar arası kullanıcı taşınabilirliği sağlayan phpass algoritmasına dayanıyor.

Artık aynı algoritmayı uygulayan Drupal, WordPress, bbPress, phpBB ve Gallery yazılımları arasında kullanıcı hesapları parola yenilemeye gerek kalmadan taşınabilecek.

phpass algoritmasının uygulaması Drupal dağıtımındaki password.inc dosyasından alıp aşağıya eklediğim 5 satır kod içerisinde kolaylıkla anlaşılabilir.


$hash = md5($salt . $password, TRUE);
do {
  $hash = md5($hash . $password, TRUE);
} while (--$count);
$output =  $setting . _password_base64_encode($hash, 16);

Uygulama bildiğimiz “parola” + “rastgele karakterler öbeği” yöntemini temel alıyor. Parola’ya önce rastgele karakterlerden oluşan bir kelime ekleniyor. Oluşan karakter dizisi bilinen algoritmalardan biriyle (MD5, SHA1) karmaşıklaştırılıyor (hash). Daha sonra bu işlem belirli bir miktar tekrarlanıyor. En sonunda ortaya çıkan karmaşıklaştırılmış ürüne ilk belirlenen rastgele karakterler ve işlemin tekrarlanma değeri ekleniyor. Böylece kullanılan rastgele karakterler ve tekrarlanma sayısının ileride tekrar kullanılabilmesi sağlanıyor. Bilgisayarların ileride daha hızlı olacağı ve bu yöntemi aşabileceği göz önünde bulundurularak tekrarlanma miktarının her yeni Drupal sürümünde arttırılması öngörülüyor.

Biltronik proje yarışmasına katılmadığım için pişmanım

Az önce Biltronik proje yarışmasında dereceye giren projelere baktım. Birinci olan ve teşvik ödülü alan fikirler dışındakiler ciddiyetsiz görünüyor. Bu yarışmaya katılmadığım için çok pişmanım. Eğer Blogküre fikrimle katılmış olsaydım kesinlikle üçüncülüğü alırdım.

Drupal maceram devam ediyor

Uzun zamandır Drupal üzerinde çalışıyorum.
Çekirdek dağıtımın içerisinde gelen eklentileri inceledim. drupal.org/handbooks adresindeki kitapları kısmen okudum. FeedAPI eklentisi üzerinde biraz çalıştım. Webcomic eklentisini Drupal 5.x sürümü için güncelledim.
Artık blogkure.net için çalışmaya başlayabilirim.

WordPress.com hesabınız güvenli

WordPress.com günlüklerinin yönetim alanları SSL şifrelenmiş iletişim katmanı ile korunuyordu. 15 Aralık 2006 tarihli günlük girdisi ile bu özelliğin kaldırıldığı (!) duyurulmuştu. Bu özelliğin kalkmasından sonra umuma açık İnternet bağlantısı sunulan alanlarda WordPress.com hesabımıza giriş yapmayı bırakmıştık. Bilgi güvenliğimiz¹ için oldukça önemli olan bu özellik tamamen kaldırılmış mıydı?

Hayır, SSL katmanı WP.com’dan asla tamamen kaldırılmadı, sadece gizlendi. Eğer WP.com günlüğünüzün kullanıcı girişi sayfasına aşağıdaki gibi bir URL ile erişirseniz kullanıcı adınız ve şifreniz sanal ortamda şifrelenmiş olarak iletilecektir. (“https://” protokolüne dikkat edin.)

https://mustafaulu.wordpress.com/wp-login.php

Giriş yaptıktan sonra yönetim alanınıza da aşağıdakine benzer bir URL ile eriştiğinizde bütün yönetim faaliyetleriniz güvenli bir yöntemle iletilecektir. (“https://” protokolüne dikkat edin.)

https://mustafaulu.wordpress.com/wp-admin/

¹ İnternet’te dolaşırken bilgi güvenliğinizi önemsiyorsanız SSL kullanımına dikkat etmelisiniz. Kişisel bilgilerinizi girdiğiniz sayfalarda SSL etkinleştirilmiş olmalıdır. Aksi taktirde sizinle aynı bağlantıyı paylaşan herhangi birisi bilgilerinizi ele geçirebilir.

GoDaddy.com neden yanlış tercih?

GoDaddy.com’dan üç farklı hizmet alıyorum. Bunlar alan adı kaydı ve barındırılması, e-posta hizmeti ve paylaşımlı sunucu hizmeti. Alan adı işlemlerinde şu ana kadar ciddi bir sorun yaşamadım fakat diğer hizmetlerinde pek çok eksiklik farkettim.

Beni benden korumak anlamsız

GoDaddy.com paylaşımlı sunucu müşterilerine SSH desteği vermiyor. (Bkz http://blog.godaddyhosting.com/2008/12/02/ssh-access.aspx)

Paylaşımlı sunucu müşterilerine SSH desteği sunmamak ancak müşteriyi kendisinden korumak olarak algılanabilir. GoDaddy.com’un yapmak istediği de beni benden korumaktır.

Benim bilgilerimin güvenliği nerede?

Müşteriye ayrılan sunucu alanı tamamen ağdan erişilebilir (web accessible) durumda. (Bkz http://blog.godaddyhosting.com/2008/04/01/document-root.aspx)

Veritabanı şifrelerinin de bulunduğu ayar dosyaları Apache’nin erişemeyeceği bir dizinde tutulmalıdır. Bunun için genelde bir kullanıcıya ev dizini ve bu dizinin altında “public_html” gibi bir dizin ayrılır. Bu yapılanmada sadece “public_html” dizini Apache tarafından erişilebilir durumdadır. Önemli dosyaların bu dizinin dışında tutulması güvenliği arttıracaktır.

GoDaddy.com paylaşımlı sunucu yapılandırmasında ise sadece “public_html” dizini müşteriye sunulur. Önemli veya önemsiz bütün dosyalar bu dizin içerisinde barındırılır. Kısıtlı erişim haklarına sahip bir dizin sunmayarak kullanıcıların bilgi güvenliği tehlikeye atılıyor.

E-posta sunucularında uzaktan erişim (POP3, SMTP) desteği yok

Masaüstü programları (Thunderbird) kullanılarak GoDaddy.com’un sağladığı e-posta hesaplarına erişilemiyor.

Sonuç

Aldığım hizmetlerin süresi dolduğunda alan adları dışındakileri başka bir sağlayıcıya aktarmayı düşünüyorum. Şimdilik DreamHost’un hizmet kalitesinin oldukça yüksek olduğunu biliyorum. Eğer sizin bir öneriniz varsa duymak isterim.

İnternet sayfası tasarımında rahatsız edici tercihler

Takip ettiğim bu günlükte İnternet sayfası tasarlarken düşülen hatalarla ilgili bir yazı yazıldı.

Yazıda listelenen 10 maddeden ikisine (2. ve 10. maddelere) eklemek istediğim ayrıntılar vardı. Hemen fikirlerimi yazdım fakat yazdıklarım günlük sahibi tarafından kabul edilmedi.

Tamamen kendi görüşlerim olan bu listede yazanlara katılabilirsiniz veya kendi görüşlerinizi iletebilirsiniz, belkide bu sayede Türkiye’de web tasarımı yapan insanlara görüşleriniz ve önerilerinizle yardımcı olmuş olursunuz.

Yazarın bu cümlesini inandırıcı bulmuş¹ ² ve yorumumu yazdıktan sonra yazıyı Oyyla’ya bile göndermiştim.

İnternet günlüğü böyle yönetilmemeli. Hakaret içermeyen ve uygun üslupla yazılan misafir yorumları silinmemeli. Silinme ihtimalini göze alarak bir daha aynı sitedeki yazılara nasıl yorum yazabilirim ki?

Misafir yorumları hakkındaki fikrimden sonra ilgili yazıda geçen 2. ve 10. maddelere eklemek istediklerimi yazayım:

İkinci maddenin aslı: Siteye girişlerde kullanılan animasyonlu ön sayfalarda animasyonu geçmek için seçenek sunmamak.

Bence animasyonlu ön sayfa hazırlamak başlıca bir hata. Animasyon siteyi ilk defa ziyaret edenleri etkileyebilir fakat devamlı ziyaretçileri çileden çıkarır.

Onuncu maddenin aslı: Site içi bağlantıları yeni pencerelerde açmak.

Bana göre sadece site içi bağlantılar değil dış bağlantılar da aynı pencerede açılmalı. Yeni pencerede açma seçeneği sadece bazı özel durumlarda kullanılmalı. Örneğin; kullanıcının yapılan işin bitmesini beklemeden sayfayı terketmesi bilgi kaybına yol açacaksa o sayfadaki bağlantılar yeni pencerede açılır yapılabilir. Bu fikrimi destekleyen bir gerçek Digg‘deki dış bağlantıların aynı pencerede açılmasıdır.

Benim bu konudaki görüşlerim bunlar. Sizin de bu liste hakkında tartışmak istediğiniz şeyler varsa lütfen benim yazıma değil başta bağlantısını verdiğim yazıya yorum gönderin.

¹ Aslında durum farklı olabilir. Yazdığım yorum sadece spam filtresine takılmış olabilir. Yazarın bundan haberi bile olmayabilir. Eğer araya spam filtresi girmiş ise yazarın inandırıcılığı zarar görmemiş olur. Ben de verdiğim rahatsızlıktan dolayı özür dilerim.

²  Açıklama için aşağıdaki ilk yorumu okuyun.