Merhaba biraz acil bir durum bu konu tüm dünya genelinde Apache Log4j kullanan servis vb benzeri tüm yapılar kolayca hack edilebiliyor. Durumun çok detayı var. Detaylara buradan erişebilirsiniz.
Apache Log4j:
https://logging.apache.org/log4j/2.x/The Hacker News: https://thehackernews.com/2021/12/extremely-critical-log4j-vulnerability.html
VMware: https://www.vmware.com/security/advisories/VMSA-2021-0028.html
VMware ürünlerinde bu durum için üsteki linki var olan VMware ürününüz için Workarounds ( geçici çözümleri ) uygulayabilirsiniz.
vCenter 7.x ve 6.x sürümleri için geçici çözüm burada. KB87081 Kaynak : VMware
Kısaca : aşağıdaki komutları yazarak vcenter ortamınızı geçici çözüm ile güvenli hale getirebilirsiniz.
Notlar : * Eğer VMware vCenter HA ( 2 vCenter yani ) yapınız var ise önce bu yapıyı iptal etmeniz gerekiyor, işlemlerden önce.
* PSC ( Platform Service Controller ) yapınız var ise kısaca vCenterve veritabanı yapınız ayrı ise aynı işlemleri yapmanız gerekiyor bilginize. hem vCenter hemde PSC appliance makinelerinizde yani.
vMON Service
1 - java-wrapper-vmon dosyasını yedekleyerek başlayın.
cp -rfp /usr/lib/vmware-vmon/java-wrapper-vmon /usr/lib/vmware-vmon/java-wrapper-vmon.bak
2 - java-wrapper-vmon dosyasını bir text editor ile açın örnek : vi
vi /usr/lib/vmware-vmon/java-wrapper-vmon
Burada versiyon vCenter için çok önemli :
vCenter 7.0 Update 3, 3a
vCenter 7.0 Update 2, 2a, 2b, 2c, 2d
3 - Aşağıdaki satırları alanları vi editör açtığınız dosya içine ekleyin.
Bu satırı bulun :
exec $java_start_bin $jvm_dynargs $security_dynargs $original_args
Bu satırlar ile değiştirin :
log4j_arg="-Dlog4j2.formatMsgNoLookups=true"
exec $java_start_bin $jvm_dynargs $log4j_arg $security_dynargs $original_args
Yine versiyonunuza göre çok çok önemli doğru değişimi sağlayın. 3. adımdaki gibi.
vCenter 7.0 GA, 7.0.0a, 7.0.0b, 7.0.0c, 7.0.0d
vCenter 7.0 Update 1, U1a, U1c, U1d
Bu satırı bulun :
exec $java_start_bin $jvm_dynargs "$@"
Bu satırlar ile değiştirin :
log4j_arg="-Dlog4j2.formatMsgNoLookups=true"
exec $java_start_bin $jvm_dynargs $log4j_arg "$@"
4- vCenter Servislerini restar edin.
service-control --stop --all
service-control --start --all
Not : Eğer servsislerini değişimden sonra başlamaz ise dosya erişim yetkilerinden emin olun. İşte yeki komutları şöyle:
chown root:cis /usr/lib/vmware-vmon/java-wrapper-vmon
chmod 754 /usr/lib/vmware-vmon/java-wrapper-vmon
Update Manager Service
1 - start.ini dosyasını yedekleyerek başlıyoruz.
cp -rfp /usr/lib/vmware-updatemgr/bin/jetty/start.ini /usr/lib/vmware-updatemgr/bin/jetty/start.ini.bak
2 - start.ini dosyasını güncelliyoruz
Bu komutu girip dosyanın son satırına
vi /usr/lib/vmware-updatemgr/bin/jetty/start.ini
sayfanın son satırın altına bunları ekliyoruz
-Dlog4j2.formatMsgNoLookups=true
3- Update Manager Service restart ediyoruz.
service-control --restart vmware-updatemgr
Analytics Service
1 - log4j-core-2.8.2.jar dosyasını yedekliyoruz.
cp -rfp /usr/lib/vmware/common-jars/log4j-core-2.8.2.jar /usr/lib/vmware/common-jars/log4j-core-2.8.2.jar.bak
2 - Bu jawa sınıfını disable etmek için aşaığıdaki komut kullanıyoruz
zip -q -d /usr/lib/vmware/common-jars/log4j-core-2.8.2.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
3 - Analytics service restar ediyoruz.
service-control --restart vmware-analytics
DBCC Utility
1 - log4j-core-2.8.2.jar dosyasını yedekliyoruz
cp /usr/lib/vmware-dbcc/lib/log4j-core-2.8.2.jar /usr/lib/vmware-dbcc/lib/log4j-core-2.8.2.jar.bak
2 - Bu java sınıfını disable etmek için aşaığıdaki komut kullanıyoruz
zip -q -d /usr/lib/vmware-dbcc/lib/log4j-core-2.8.2.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
Not: Bu komuttan sonra yapılacak birşey yok mesajı alırsanız "zip error: Nothing to do!". bu adımı geçiniz ve restart etmenize gerek yok.
Yaptıklarımızı kontol edelim :
Tüm bölümler tamamlandıktan sonra, başarılı bir şekilde uygulanıp uygulanmadıklarını doğrulamak için aşağıdaki adımları kullanın.
1 - vMon hizmetlerinin yeni -Dlog4j2.formatMsgNoLookps=true parametresiyle başlatılıp başlatılmadığını doğrulayın:
ps auxww | grep formatMsgNoLookups
İşlemlerin -Dlog4j2.formatMsgNoLookps=true içerip içermediğini kontrol edin
2 - Verify the Update Manager değişikliklerinin aşağıdaki iki komutun çıktısında "System Properties" altında gösterildiğini doğrulayın:
cd /usr/lib/vmware-updatemgr/bin/jetty/
java -jar start.jar --list-config
System Properties:
------------------
log4j2.formatMsgNoLookups = true (/usr/lib/vmware-updatemgr/bin/jetty/start.ini)
3 - Analytics Service değişikliklerini doğrulayın:
grep -i jndilookup /usr/lib/vmware/common-jars/log4j-core-2.8.2.jar | wc -l
Bu komut size 0 döndürmelidir.
4 - DBCC Utility değişikliklerini doğrulayın:
grep -i jndilookup /usr/lib/vmware-dbcc/lib/log4j-core-2.8.2.jar | wc -l
Bu komut size 0 döndürmelidir.
Yukarıda yazdıklarım sadece VMware sitesinden alınan ve geçici çözüm olarak sunulmuştur. Her zaman size tavsiyem bavkup yazılımınız ile vCenter ortamınızı yedeklemeniz.
vCenter 6.x için bu linkten faydalanbilirsiniz. Yine yeniliyorum bu geçici çözümdür.
Kolay gelsin.
Hiç yorum yok:
Yorum Gönder
Yorumunuz için teşekkürler.