Onderzoekers van het Chinese bedrijf Chaitin Tech hebben () in , een open implementatie van Java Servlet-technologieƫn, JavaServer Pages, Java Expression Language en Java WebSocket. De kwetsbaarheid is de codenaam Ghostcat toegewezen en heeft een kritieke risico-niveau (9.8 CVSS). Het probleem stelt in de standaardconfiguratie in staat om via een verzoek op netwerkpoort 8009 de inhoud van eventuele bestanden uit de webapplicatie-directory te lezen, inclusief configuratiebestanden en de bronteksten van de applicatie.
De kwetsbaarheid maakt het ook mogelijk om andere bestanden in de applicatiecode te importeren, wat het uitvoeren van code op de server mogelijk maakt als de applicatie het uploaden van bestanden naar de server toestaat (bijvoorbeeld kan een aanvaller een JSP-script als afbeelding uploaden via een afbeelding uploadformulier). Een aanval kan worden uitgevoerd als er een verzoek naar de netwerkpoort met de AJP-handler kan worden verzonden. Voorlopige gegevens tonen aan dat er in het netwerk De kwetsbaarheid is aanwezig in het AJP-protocol, en
is niet veroorzaakt Apache Jserv ProtocolAJP biedt een ingebouwde functie voor toegang tot bestanden op de server, die ook kan worden gebruikt om bestanden die niet voor openbaarmaking zijn bedoeld te verkrijgen. Er wordt verondersteld dat toegang tot AJP alleen open is voor vertrouwde servers, maar in werkelijkheid werd in de standaardconfiguratie van Tomcat de handler op alle netwerkinterfaces gestart en werden verzoeken zonder authenticatie geaccepteerd. Toegang is mogelijk tot alle bestanden van de webapplicatie, inclusief de inhoud van WEB-INF, META-INF en andere directories die kunnen worden opgevraagd via ServletContext.getResourceAsStream(). AJP staat ook toe om elk bestand in de toegestane directories van de webapplicatie als JSP-script te gebruiken.
Het probleem doet zich voor vanaf de 13 jaar geleden uitgebrachte serie Tomcat 6.x. Naast Tomcat zelf is het probleem
Het probleem doet zich voor sinds de release van de 13 jaar oude Tomcat 6.x tak. Naast Tomcat is er ook een probleem en de producten die het gebruikt, zoals Red Hat JBoss Web Server (JWS), JBoss Enterprise Application Platform (EAP), evenals zelfstandige webapplicaties die gebruikmaken van . Een vergelijkbare kwetsbaarheid (CVE-2020-1745) in de webserver , dat wordt toegepast in de Wildfly-applicatieserver. In JBoss en Wildfly is het AJP-protocol standaard alleen ingeschakeld in standalone-full-ha.xml, standalone-ha.xml en ha/full-ha profielen in domain.xml. In Spring Boot is de ondersteuning voor AJP standaard uitgeschakeld. Momenteel zijn door verschillende groepen meer dan een handvol werkende voorbeelden van exploits voorbereid (
,
,
,
,
,
,
,
,
,
,
).
De kwetsbaarheid is verholpen in de Tomcat-releases , en (ondersteuning van de 6.x tak ). De updates in de distributies kunnen worden gevolgd op de volgende pagina's: , , , , , . Als een tijdelijke beveiligingsmaatregel kan de Tomcat AJP Connector-service worden uitgeschakeld (de luisterende socket aan localhost binden of de regel met Connector port = "8009" uitcommentariƫren), indien niet nodig, of geauthenticeerde toegang middels de attributen "secret" en "address" als de service gebruikt wordt voor interactie met andere servers en proxies op basis van mod_jk en mod_proxy_ajp (mod_cluster ondersteunt geen authenticatie).
Bron: opennet.ru
