|
|
2021-12-11 tarihinde yayınlandı 21:06:29
|
|
|
|

Son iki gündür, "Apache Log4j2 uzaktan kod çalıştırma zafi" tarafından arkadaşlar arasında silindi; bunun başlıca nedeni bileşendeki Java JNDI enjeksiyon açığıydı: program, kullanıcının girdiği verileri loga yazdığında, saldırgan Apache Log4j2'de uzaktan kod çalıştırma açığını tetiklemek için özel bir istek oluşturur ve böylece bu açığı hedef sunucuda rastgele kod çalıştırmak için kullanır.
Etki kapsamı
Apache Log4j 2.x <= 2.14.1
JNDI (Java Adlandırma ve Dizin Arayüzü), Java tarafından sağlanan bir Java adlandırma ve dizin arayüzüdür. JNDI'nin API'sini çağırarak, uygulamalar kaynakları ve diğer program nesnelerini bulabilir. JNDI, Java EE'nin önemli bir parçasıdır; sadece DataSource'u (JDBC veri kaynağı) içermediği, JNDI'nin mevcut dizinlere ve hizmetlere erişebileceği belirtilmelidir; örneğin JDBC, LDAP, RMI, DNS, NIS, CORBA, bunlar Baidu Ansiklopedisi'nden alınmıştır. İnternette zafiyetlerin nasıl düzeltileceğine dair birçok makale ve güvenlik açığı ekran görüntüleri var, ancak projenin bu açığı nasıl test edileceği hakkında çok az şey var.Java, kodu test etmek için Log4j2 kullanıyorŞöyle:
Basitçe söylemek gerekirse, Log4j2 RMI veya LDAP protokolü aracılığıyla aşağıdaki adrese erişir ve protokolün içeriğine göre kötü niyetli bir şekilde oluşturulmuş kodu çalıştırabilir.
Zayıflığın varlığı neredeyse her zaman İnternet'te bir Windows hesap makinesi açılarak kanıtlanır ve kod şöyledir:
Log4J2, saldırganın sunucusuna erişmek için RMI veya LDAP protokolleri kullandığı ve hem RMI hem de LDAP protokollerinin TCP tabanlı olduğu için, bunu doğrudan yapabiliyoruz.NET kullanarak bir TCP portunda dinlemek, log4j2'ye yazdırılan bir çağrı .NET dinleme portuna erişirse, bu bir güvenlik açığı olabileceğini kanıtlar, yoksa güvenli olduğunu kanıtlar.。
.NET çok küçük test programları üretir6kb, kod şöyledir:
log4j bileşenini kullanmayı deneyin2.14.0Versiyon basılmıştır ve render şu şekildedir:
log4j bileşenini şu şekilde yükseltmeyi deneyin.2.15.0Versiyon tekrar uygulandığında, etkisi şu şekildedir:
Sürüm yükseltildikten sonra, baskı günlüğü çağrıldıktan sonra,Java programı artık harici porta erişmiyor。
İlgilenen arkadaşlar, aşağıdaki bağlantıya bakarak bu zayıflığı yeniden üretebilir ve hesaplayıcıyı çağırabilirsiniz.
Bağlantı girişi görünür.
Bağlantı girişi görünür.
Son olarak, test prosedürünü ekleyin:
测试程序.rar
(2.66 KB, İndirme sayısı: 1)
|
Önceki:[Gerçek dövüş]. NET/C# Bir SQLite veritabanı oluşturun ve basitçe ekleyin, silin, değiştirinÖnümüzdeki:CentOS system deployment nacos tutorial
|