Vulnerabilità in Apache Tomcat chì permette di rimpiazzà u codice JSP è uttene schedarii di applicazioni web

I ricercatori di a cumpagnia chinesa Chaitin Tech anu scupertu vulnerabilità (CVE-2020-1938) à Apicultore Tomcat, una implementazione aperta di Java Servlet, JavaServer Pages, Java Expression Language è e tecnulugia Java WebSocket. A vulnerabilità hè stata attribuita u nome di codice Ghostcat è un livellu di gravità critica (9.8 CVSS). U prublema permette, in a cunfigurazione predeterminata, mandendu una dumanda nantu à u portu di a rete 8009, per leghje u cuntenutu di qualsiasi fugliale da u repertoriu di l'applicazioni web, cumpresi i schedari cù paràmetri è i codici fonte di l'applicazione.

A vulnerabilità permette ancu di impurtà altri fugliali in u codice di l'applicazione, chì permette l'esekzione di codice in u servitore se l'applicazione permette di caricate i schedari à u servitore (per esempiu, un attaccu pò carricà un script JSP disfrazatu cum'è una maghjina attraversu u furmulariu di carica di l'imaghjini). L'attaccu pò esse realizatu quandu hè pussibule di mandà una dumanda à un portu di rete cù un gestore AJP. Sicondu dati preliminari, in linea trovu più di 1.2 milioni d'ospiti chì accettanu richieste via u protocolu AJP.

A vulnerabilità esiste in u protocolu AJP, è micca chjamatu errore in l'implementazione. In più di accettà cunnessione via HTTP (portu 8080), Apache Tomcat permette di manera predeterminata l'accessu à una applicazione web via u protocolu AJP (Protokollu Apache Jserv, portu 8009), chì hè un analogu binariu di HTTP ottimizzatu per un rendimentu più altu, generalmente utilizatu quandu crea un cluster di servitori Tomcat o per accelerà l'interazzione cù Tomcat in un proxy inversu o equilibratore di carica.

AJP furnisce una funzione standard per accede à i fugliali nantu à u servitore, chì pò esse utilizatu, cumprese l'ottenimentu di schedari chì ùn sò micca sottumessi à divulgazione. L'AJP deve esse accessibile solu per i servitori di fiducia, ma in fattu, a cunfigurazione predeterminata di Tomcat curria u gestore in tutte l'interfacce di rete è accetta richieste senza autentificazione. L'accessu hè pussibule à qualsiasi schedarii di l'applicazione web, cumpresu u cuntenutu di WEB-INF, META-INF è qualsiasi altri repertorii furniti attraversu una chjama à ServletContext.getResourceAsStream(). AJP permette ancu di utilizà qualsiasi fugliale in cartulari accessibili à l'applicazione web cum'è un script JSP.

U prublema hè apparsu dapoi u ramu Tomcat 13.x liberatu 6 anni fà. In più di u prublema Tomcat stessu affetta è i prudutti chì l'utilizanu, cum'è Red Hat JBoss Web Server (JWS), JBoss Enterprise Application Platform (EAP), è ancu applicazioni web autonome chì utilizanu Stivali di primavera. Vulnerabilità simile (CVE-2020-1745) prisente in u servitore web Sottumessu, utilizatu in u servitore di l'applicazioni Wildfly. In JBoss è Wildfly, AJP hè attivatu per difettu solu in standalone-full-ha.xml, standalone-ha.xml è profili ha/full-ha in domain.xml. In Spring Boot, u supportu AJP hè disattivatu per automaticamente. Attualmente, diversi gruppi anu preparatu più di una decina di esempi di travagliu di sfruttamenti (
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11).

Vulnerabilità risolta in e versioni di Tomcat 9.0.31, 8.5.51 и 7.0.100 (mantenimentu di u ramu 6.x discontinued). Pudete seguità a dispunibilità di l'aghjurnamenti in i kit di distribuzione in queste pagine: Debian, Ubuntu, RHEL, Fedora, SUSE, FreeBSD. Cum'è una soluzione alternativa, pudete disattivà u serviziu Tomcat AJP Connector (legà un socket d'ascolta à l'host local o cummentate a linea cù u portu Connector = "8009") se ùn hè micca necessariu, o istituisce l'accessu autentificatu cù l'attributi "secret" è "indirizzu", se u serviziu hè utilizatu per interagisce cù altri servitori è proxy basati nantu à mod_jk è mod_proxy_ajp (mod_cluster ùn sustene micca l'autentificazione).

Source: opennet.ru

Add a comment