CVE-2020-1938 Ghostcat Güvenlik Açığı Nedir ?
Ghostcat, bazı durumlarda uzaktan kod yürütme izni veren Apache Tomcat sürümleri 6.x, 7.x, 8.x ve 9.x'te bulunan bir güvenlik açığıdır. Apache Tomcat, varsayılan olarak etkinleştirilmiş ve 8009 portunda tüm adresler üzerinde dinleyen AJP bağlayıcısını içerir. Bu bağlantı, HTTP gibi bir bağlantıdan daha fazla güvenle işlenir ve bir saldırganın güvenilmeyen bir kullanıcı için tasarlanmamış eylemleri gerçekleştirmesine izin verebilir.
Ghostcat, bir saldırganın web uygulamasının herhangi bir yerinden, WEB-INF ve META-INF dizinleri dahil olmak üzere ServletContext.getResourceAsStream() üzerinden ulaşılabilen herhangi bir konumdan keyfi dosyalar almasına ve aynı zamanda saldırganın web uygulamasındaki herhangi bir dosyayı JSP olarak işlemesine olanak tanır.
Uzaktan kod yürütme varsayılan olarak mümkün değildir. Bir saldırgan, etkilenen bir Tomcat sürümünde çalışan bir uygulama dosyası yükleme açığı içeriyorsa, bu açığı Ghostcat ile birleştirerek uzaktan kod yürütme elde edebilir. Ancak saldırgan, yüklenen dosyaları belge köküne kaydetme ve hedefin ağı dışından doğrudan AJP bağlantı noktasına ulaşabilme yetisine sahip olmalıdır.
Ghostcat'ı ciddi bir güvenlik açığı yapan nedir ?
İnternet üzerindeki ulaşılabilir sunucuların 1 milyondan fazlası Apache Tomcat çalıştırmaktadır. Bu güvenlik açığı, son 13 yıl içinde piyasaya sürülen tüm Apache Tomcat sürümlerinde bulunmaktadır (sürümler 6.x/7.x/8.x/9.x).
Ghostcat ayrıca Tomcat'ın varsayılan yapılandırmasını etkiler ve birçok sunucu internet üzerinden doğrudan saldırılara karşı savunmasız olabilir. Apache Tomcat'ın AJP bağlayıcısı, tüm Tomcat sunucularında varsayılan olarak etkinleştirilmiştir ve sunucunun 8009 portunda dinler.
Halka açık saldırıları kolaylaştıran halka açık sızıntıların bulunması, kötü niyetli aktörlerin saldırılarını başlatmasını kolaylaştırır:
Ghostcat için bir çözüm bulunuyor mu?
Ghostcat güvenlik açığı için Black Duck Güvenlik Danışmanlığı şu geçici çözümü önermektedir:
AJP bağlayıcı hizmeti, $CATALINA_HOME/conf/server.xml dosyasından ilgili satırı yorumlayarak veya kaldırarak devre dışı bırakılabilir ve ardından Tomcat yeniden başlatılabilir.
Eğer bir yükseltme mümkün değilse, gerekliSecret özelliği, AJP protokolü kimlik doğrulama kimlik bilgilerini ayarlamak için aşağıdaki gibi yapılandırılabilir:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" address="TOMCAT_IP_ADRESINIZ" secret="TOMCAT_AJP_SECRET"/>
Konu Kaynaklarım : synopsys
İnternet üzerindeki ulaşılabilir sunucuların 1 milyondan fazlası Apache Tomcat çalıştırmaktadır. Bu güvenlik açığı, son 13 yıl içinde piyasaya sürülen tüm Apache Tomcat sürümlerinde bulunmaktadır (sürümler 6.x/7.x/8.x/9.x).
Ghostcat ayrıca Tomcat'ın varsayılan yapılandırmasını etkiler ve birçok sunucu internet üzerinden doğrudan saldırılara karşı savunmasız olabilir. Apache Tomcat'ın AJP bağlayıcısı, tüm Tomcat sunucularında varsayılan olarak etkinleştirilmiştir ve sunucunun 8009 portunda dinler.
Halka açık saldırıları kolaylaştıran halka açık sızıntıların bulunması, kötü niyetli aktörlerin saldırılarını başlatmasını kolaylaştırır:
GitHub - laolisafe/CVE-2020-1938: CVE-2020-1938漏洞复现
CVE-2020-1938漏洞复现. Contribute to laolisafe/CVE-2020-1938 development by creating an account on GitHub.
github.com
GitHub - xindongzhuaizhuai/CVE-2020-1938
Contribute to xindongzhuaizhuai/CVE-2020-1938 development by creating an account on GitHub.
github.com
GitHub - YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi: Tomcat-Ajp协议文件读取漏洞
Tomcat-Ajp协议文件读取漏洞. Contribute to YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi development by creating an account on GitHub.
github.com
GitHub - nibiwodong/CNVD-2020-10487-Tomcat-ajp-POC: CNVD-2020-10487(CVE-2020-1938), tomcat ajp 文件读取漏洞poc
CNVD-2020-10487(CVE-2020-1938), tomcat ajp 文件读取漏洞poc - GitHub - nibiwodong/CNVD-2020-10487-Tomcat-ajp-POC: CNVD-2020-10487(CVE-2020-1938), tomcat ajp 文件读取漏洞poc
github.com
Ghostcat için bir çözüm bulunuyor mu?
Ghostcat güvenlik açığı için Black Duck Güvenlik Danışmanlığı şu geçici çözümü önermektedir:
AJP bağlayıcı hizmeti, $CATALINA_HOME/conf/server.xml dosyasından ilgili satırı yorumlayarak veya kaldırarak devre dışı bırakılabilir ve ardından Tomcat yeniden başlatılabilir.
Eğer bir yükseltme mümkün değilse, gerekliSecret özelliği, AJP protokolü kimlik doğrulama kimlik bilgilerini ayarlamak için aşağıdaki gibi yapılandırılabilir:
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" address="TOMCAT_IP_ADRESINIZ" secret="TOMCAT_AJP_SECRET"/>
Konu Kaynaklarım : synopsys