Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
php-exploit_cve-2022-31630 — Exploit de preuve de concept pour CVE-2022-31630, une vulnérabilité de lecture hors limites dans l'extension GD de PHP. Montre un crash et une divulgation de mémoire dans les versions de PHP affectées. Inclut un laboratoire basé sur Docker pour des tests sécurisés. | Kitploit
Outils/GitHubGitHub/sepkascurty-cpu/php-exploit_cve-2022-31630
Analyse des VulnérabilitésExploitationApprentissage et ÉducationExploitation de BinairesLabs et Pratique
GitHubsepkascurty-cpu/php-exploit_cve-2022-31630

php-exploit_cve-2022-31630

Exploit de preuve de concept pour CVE-2022-31630, une vulnérabilité de lecture hors limites dans l'extension GD de PHP. Montre un crash et une divulgation de mémoire dans les versions de PHP affectées. Inclut un laboratoire basé sur Docker pour des tests sécurisés.

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Voir le dépôt
1il y a 5 moisPas encore vérifié

#CVE-2022-31630 – Preuve de Concept Exploit

Avertissement : Ce code est créé uniquement à des fins éducatives et de test dans un environnement de laboratoire isolé. L'utiliser sur d'autres systèmes sans autorisation est illégal et irresponsable.


📌 Description

CVE-2022-31630 est une vulnérabilité de lecture hors limites (Out-of-Bounds Read) dans l'extension GD de PHP, plus précisément dans la fonction imageloadfont(). Cette vulnérabilité permet à un attaquant qui contrôle le fichier de police chargé par une application PHP de lire des données en dehors des limites du tampon alloué. Les impacts possibles sont :

· Denial of Service (crash) – l'application cesse de répondre. · Information Disclosure – des données sensibles de la mémoire peuvent être lues (par exemple clés, jetons ou fragments de données).

Versions PHP concernées

· PHP 7.4.x avant 7.4.33 · PHP 8.0.x avant 8.0.25 · PHP 8.1.x avant 8.1.12

PHP 7.4.33 est la première version à recevoir un correctif pour cette CVE. Ce dépôt fournit une Preuve de Concept (PoC) pour montrer la différence de comportement entre une version vulnérable (≤ 7.4.32) et une version corrigée (≥ 7.4.33).


🔍 Détails techniques

La vulnérabilité provient d'un manque de validation des entrées lors de la lecture d'un fichier de police GD (format .gdf). Le fichier de police a la structure d'en-tête suivante :

Décalage (octet)Taille (octets)Description
02Magic number (0x01BE)
22Nombre de caractères (nchars)
42Largeur du caractère (width) (en pixels)
62Hauteur du caractère (height)
82Nombre d'octets par caractère (char_offset)

Si la valeur de width est rendue très grande (par exemple 65535), le calcul de la taille du tampon pour stocker le bitmap du caractère devient erroné. En conséquence, le tampon alloué est trop petit. Lorsque la fonction imagechar() lit ensuite un caractère de cette police, elle accède à la mémoire hors des limites du tampon – c'est ce qu'on appelle une lecture hors limites (Out-of-Bounds Read).


🧪 Prérequis de test

· Docker (pour exécuter un environnement isolé) · PHP version 7.4.32 ou 7.4.33 (utiliser les images Docker php:7.4.32-cli / php:7.4.33-cli) · Extension GD (sera installée à l'intérieur du conteneur)


🚀 Comment utiliser la PoC

  1. Clonez ce dépôt
root@kitploit:~
git clone https://github.com/sepkascurty-cpu/php-exploit_cve-2022-31630.git
cd exploit_cve-2022-31630
  1. Exécutez le conteneur avec la version PHP souhaitée

Pour tester la version vulnérable (7.4.32) :

root@kitploit:~
docker run -it --rm -v $(pwd):/app php:7.4.32-cli bash

Pour tester la version corrigée (7.4.33) :

root@kitploit:~
docker run -it --rm -v $(pwd):/app php:7.4.33-cli bash
  1. À l'intérieur du conteneur, installez l'extension GD
root@kitploit:~
cd /app
apt-get update
apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libpng-dev
docker-php-ext-configure gd --with-freetype --with-jpeg
docker-php-ext-install gd
  1. Exécutez l'exploit
root@kitploit:~
php exploit_cve-2022-31630.php

📊 Exemple de sortie

Version PHPRésultat attendu
7.4.32 (vulnérable)Le programme plante avec une erreur de segmentation (Segmentation Fault) ou une fuite mémoire (données fictives visibles depuis la mémoire).
7.4.33 (corrigée)Exécution terminée normalement, le fichier image output.png est sauvegardé, pas de plantage.

🛡️ Atténuation

· Mettez à jour PHP vers la version la plus récente contenant le correctif : · PHP 7.4.33 ou ultérieur · PHP 8.0.25 ou ultérieur · PHP 8.1.12 ou ultérieur · Si vous ne pouvez pas mettre à jour immédiatement, désactivez l'extension GD ou la fonction imageloadfont() si elle n'est pas vraiment nécessaire. · Appliquez le principe du moindre privilège sur l'application pour minimiser l'impact en cas de fuite mémoire.


📚 Références

· CVE-2022-31630 sur NVD · Commit du correctif dans php-src · Annonces de version PHP


⚠️ Avertissement

Ce dépôt est fourni à des fins éducatives et de recherche en sécurité. L'auteur décline toute responsabilité en cas d'utilisation abusive de ce code. Assurez-vous de ne tester que dans un environnement que vous possédez ou pour lequel vous avez obtenu une autorisation écrite.


Créé pour la communauté de cybersécurité indonésienne.

Télécharger l’outil