Horizontall Machine | Level easy

Après avoir réussi l'exploitation de sense grâce à un fichier utilisateur trouver dans le répertoire du site je me suis donc penché sur cette nouvelle machine, Après différentes recherches et de vérification il s'avère qu'il est possible de contournée l'interface web strapi en redéfinissant le mot de passe Token JWT, une vulnérabilité qui est relatée pour les versions 3.14 et 3.7, permettant ainsi d'identifier en administrateur, en utilisant une faille sur les jetons JWT qui permette de s'identifier à API.

Qu'est-ce que STRAPI ?

Strapi est un CMS headless c’est-à-dire qu’il ne permet de gérer que la partie back-end d’un projet. Pour la partie front-end, vous pouvez relier un framework front-end en utilisant une API, dont nous allons parler plus loin dans l’article.

En me penchant ensuite sur ssh j'ai remarqué que je pouvais effectuer une exécution de code grâce à un exploit du coté de Monolog de php, cela ma permis de faire une escalade de privilège en utilisant exploit et en mettant en écoute netcat.

Pour présenter Strapi, on peut donc dire que c’est un CMS (Content Management System) headless qui est Open Source et créé par une startup française. Le CMS a été développé sous NodeJs. Concernant l’origine du nom, Strapi vient de la contraction de “Bootstrap your API”.

Dans un secteur où les CMS existent en nombre et dont certains sont bien implantés, la startup française a dû se différencier et a créé le premier CMS entièrement basé sur le langage JavaScript. Leur volonté : faire en sorte que vous puissiez utiliser facilement n’importe quel framework front-end JavaScript tels que React, VueJs, Angular et bien d’autres encore avec leur CMS.

Strapi possède d’autres avantages que l’on peut citer. Par exemple, le CMS headless ne dépend pas d’un seul système de gestion de bases de données, comme cela peut être le cas pour d’autres CMS plus classiques. Vous pouvez choisir le système de gestion de base de données à utiliser sur le projet, comme MySQL, PostgreSQL ou encore MongoDB.

De plus, Strapi est un CMS idéal si vous avez besoin de diffuser vos contenus sur différents canaux. Que ce soit sur un site web, sur une application mobile ou même sur une montre connectée, vous ne serez pas restreint. Pour la suite de son développement, Strapi envisage de s’étendre aux commandes vocales. Une suite logique lorsque l’on voit les progrès que fait l’IA à ce sujet.


Qu'est-ce que monologue?

La bibliothèque Monolog permet de journaliser différentes informations lors de l'exécution de scripts PHP. Son intégration via un framework de développement tel que Symfony, CakePHP se fait de manière quasi automatique mais s'il s'agit de l'utiliser dans un script fait à la main, c'est un petit peu plus compliqué. Cette bibliothèque pouvant être utilisée dans plusieurs projets.