Log4j

Log4j, tam adıyla "Logging for Java", Ceki Gülcü ve iki meslektaşı tarafından 1997 yılında İsviçre Rüschlikon'da IBM Araştırma Laboratuvarında kendi projelerinde bir loglama sistemine ihtiyaç duymaları üzerine yaratılmış, Java için bir loglama kütüphanesidir.  2000 yılında IBM tarafından Apache Yazılım Vakfına bağışlanmıştır. 

Apache bünyesinde Log4j'yi gönüllü olarak geliştirmeye devam eden Ceki Gülcü, 2006 yılında Apache'den ve Log4J geliştirme ekibinden ayrılmıştır.

Bireysel olarak loglayıcı kütüphaneleri geliştirmeye devam eden Gülcü, SLF4J, Reload4j ve Logback adlarında, Log4j'ye alternatif Java loglama kütüphaneleri geliştirmiştir. Bu alternatif projeler, Log4j 2 ile beraber bugün en yaygın kullanılan Java loglayıcı kütüphaneleri arasındadır.

2012 yılında Apache tarafından Log4j yeniden dizayn edildi ve önceki sürümlerdeki pek çok hatanın giderildiği, daha gelişmiş özelliklerin eklendiği Log4j 2 yayınlandı. 2015 yılında eski Log4j 1.X sürümlerinin artık desteklenmeyeceği duyuruldu ve kullanıcılara Log4j 2'ye güncellemeleri önerildi

 Log4Shell zafiyeti 

9 Aralık 2021 tarihinde, Alibaba Cloud Güvenlik Takımı tarafından yapılan araştırmada, Log4j 2.0.0 versiyonundan itibaren ileriye dönük bütün versiyonlarda, saldırganların uzaktan kod çalıştırmasını mümkün kılan bir sıfır-gün açığı keşfedildi. Güvenlik takımı bu zafiyete Log4Shell adını vermiştir. Amerikanın en büyük siber güvenlik şirketlerinden Tenable bu durumu "son 15 yılın en büyük ve en kritik güvenlik açığı" olarak tanımlamıştır. Apache, zafiyetin en yüksek CVSS tehlike derecesi olan 10 puan olduğunu açıkladı. Uzmanlara göre kötü aktörlerin bu zafiyeti kullanarak bir saldırı gerçekleştirmesi oldukça kolaydı ve yüz milyonlarca cihaz bu açıktan etkilenmişti.

Zafiyet kamuoyuna duyurulmadan 3 gün önce yayınlanan sürüm, 2.15.0-rc1 ile açık giderilmiş olsa da, vaktinde güvenli sürüme geçiş yapamayan pek çok şirket bu zafiyetten faydalanan Fidye yazılımların hedefi olmaktan kurtulamadı. Arctic Wolf Sibergüvenlik şirketinin araştırmasına göre, bu zafiyetin etkilenen işletmelere ortalama zararı 90.000$ olarak belirlendi. İlerleyen süreçte, aynı yıl yapılan detaylı tahkikatlarda, kütüphanede iki farklı kritik güvenlik açığı daha tespit edildi 

 Reload4j 
12 Ocak 2022 tarihinde, uzun yıllardır proje ekibinde olmayan, projenin ilk yaratıcısı Ceki Gülcü; desteği sonra ermiş ve 2013'ten bu yana çözülmesi gereken pek çok hata birikmiş eski versiyon olan 1.2.17 sürümünü düzeltmek amacıyla çatallayarak, Reload4j isimli yeni bir sürüm oluşturdu.

Geliştirici Ceki Gülcü, Reload4j proje sayfasında Log4Shell zafiyeti hakkında şu ifadeleri kullandı: 

 Özellikler 

 Log4j Log Katmanları 
Ceki Gülcü'ye göre bu projenin bu kadar popülerleşmesinin ana sebebi, kendi değimiyle "akıllıca bir fikir" olan katman tabanlı yapısıdır. Kullanıcı hangi katmanlar için log tutulacağını belirleyebilir. Katman büyüdükçe bilgi akışı da büyük ölçüde artar.

Aşağıdaki tabloda, soldaki sütunda katmanların isimleri, sağdaki sütunda ise basitçe her katmanın ne tür bilgiler için kullanıldığı gösterilmiştir.
KatmanAçıklamaOFFEn küçük katman, loglamayı tamamen kapatmak için kullanılır.FATALUygulamanın erken durdurulmasına sebebiyet veren büyük hataları gösterir.ERRORUygulamanın çalışması sırasında karşılaşılan diğer hatalar ve durumları da gösterir.WARNTam olarak hata denemeyecek problemleri ve uyarıları da belirtir.INFOUygulamanın çalışması sırasında gerçekleşen önemli olayları da belirtir.DEBUGUygulama akışı hakkında çok detaylı bilgi verir, hata gidermede kullanılır.TRACEEn detaylı ve kapsamlı bilgilendirme, yazılmın akışını tamamen kayıt tutar.

 Kaynakça 

 Dış Bağlantılar 

Kategori:Java kütüphaneleri
Kategori:Apache Software Foundation
Kategori:Java ile programlanmış özgür yazılımlar
Kategori:Apache lisansı kullanan yazılımlar
Kategori:Apache Software Foundation projeleri