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.

O zaman gönderdiğim e-posta

Abuse module displays flagged nodes in a moderation queue without applying filters (without calling node_view) on them.

Module version: abuse 5.x-1.x-dev at (http://drupal.org/node/123349)

Steps to reproduce:

  • Install abuse.module.
  • Enable flagging of any content type at “admin/settings/abuse” page.
  • Flag a node by using “Flag as offensive” link on “node/#nid” page.
  • Go to “admin/content/abuse” page. Under any tab one can see unfiltered node contents.
Reklam

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.

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.