Pas php.net · Pas la NVD · Pas la CISA

Suivi des vulnérabilités PHP

Note d’information non officielle sur les vulnérabilités de sécurité PHP

English简体中文日本語DeutschFrançaisNederlandsEspañol

Alerte de sécurité

PHP2Shell : mettez PHP à jour. C’est le seul correctif complet.

CVE-2026-109618 et CVE-2026-109619 sont des failles critiques de PHP lui-même, permettant une exécution de code à distance sans authentification. Le projet PHP a publié des correctifs le 21 octobre 2026 pour les branches maintenues 8.2 à 8.5. Redémarrez PHP après la mise à jour. Un pare-feu ne la remplace pas.

Étapes de correction

Sécurité PHP expliquée · défensif

Inclusion de fichiers PHP (LFI/RFI) : de quoi s’agit-il et comment corriger

include et require exécutent le fichier qu’on leur donne. Si une partie du chemin vient de la requête, c’est le visiteur qui décide de ce qui s’exécute.

Dernière mise à jour

De quoi s’agit-il

L’inclusion locale (LFI) fait pointer include ou require vers des fichiers déjà présents, comme une configuration ou des journaux ; combinée à un envoi de fichier ou à une ligne de journal, elle peut devenir une exécution de code. L’inclusion distante (RFI) charge du code depuis un autre serveur et ne fonctionne que si allow_url_include est activé, désactivé par défaut selon php.net. MITRE la classe en CWE-98.

Comment le détecter

Comment le corriger

Vérifications en lecture seule et modèles sûrs

# Find include/require with a variable path (read-only)
grep -rnE "(include|require)(_once)?\s*\(?\s*\$" --include=*.php . | grep -v /vendor/
php -i | grep -E "allow_url_include|allow_url_fopen|open_basedir"

; php.ini hardening
allow_url_include = Off
open_basedir = /var/www/example:/tmp

// Map user choices to fixed files instead of building paths
$pages = ['home' => 'home.php', 'about' => 'about.php'];
require __DIR__ . '/pages/' . ($pages[$_GET['p'] ?? 'home'] ?? 'home.php');

basename() rend-il un include sûr ?

Il retire les répertoires mais laisse choisir n’importe quel fichier de ce répertoire. Une liste blanche explicite est plus sûre.

La RFI est-elle encore un risque en PHP moderne ?

Seulement si allow_url_include a été activé. La LFI reste courante car elle ne demande aucun réglage particulier.

Autres classes de vulnérabilités PHP

Sources

Les liens externes quittent ce site. Nous n’hébergeons aucun code d’exploitation.

  1. CWE-98: PHP Remote File Inclusion — MITRE CWE
  2. Testing for Local File Inclusion — OWASP Web Security Testing Guide
  3. Filesystem runtime configuration (allow_url_fopen, allow_url_include) — PHP Manual
  4. Core php.ini directives (open_basedir, expose_php) — PHP Manual