Maison >développement back-end >Problème PHP >Qu'est-ce que le pseudo-protocole PHP ?
Pseudo-protocole PHP
Tout d'abord, nous devons comprendre les fonctions d'inclusion de fichiers que nous pouvons rencontrer dans CTF :
1、include
2、require
3、include_once
4、require_once
5、highlight_file
6、show_source
7. readfile
10.
file_get_contents
fopen
Le pseudo-protocole PHP est en fait le protocole et le protocole d'encapsulation pris en charge (12 types) file
a fichier : // — Accédez au système de fichiers local b http:/. / — Accéder aux URL HTTP(s)
c. ftp:// — Accéder aux URL FTP(s)
d php:// — accéder à chaque flux d'entrée/sortie (E/S streams)
e. zlib:// — flux compressé
f data:// — data (RFC 2397)
g. modèle de chemin de fichier
h. phar:// — Archive PHP
i ssh2:// — Secure Shell 2
j. >
k. ogg:// — streaming audio l. expect:// — gérer les flux interactifs Si une troncature est nécessaire1. Aucune troncature n'est requise
<?php include($_GET['file']) ?>Besoin de tronquer ( La troncature %00 peut être utilisée pour les tests dans la version PHP
<?php include($_GET['file'].'.php') ?>file ://protocol
file:// protocol peut également être utilisé normalement en cas de double off. allow_url_fopen : off/on
allow_url_include : off/on
file:// est utilisé pour accéder au local système de fichiers, couramment utilisé dans CTF pour lire les fichiers locaux.Utilisation : file://Le chemin absolu et le nom du fichier.
Exemple : http://127.0.0.1/cmd.php?file=file://D:/soft/phpStudy/WWW/phpcode.txt
php://protocol
Conditions d'utilisation du protocole php:// :1 Il n'est pas nécessaire d'activer allow_url_fopen
.
2. php://input, php://stdin, php://memory et php://temp doivent activer allow_url_include.
php://filter est utilisé pour lire le code source et peut être utilisé normalement dans des conditions de double offallow_url_fopen : off/on (conditions d'utilisation)
allow_url_include : off/on
Ex : http://127.0.0.1/cmd.php?file=php://filter/ read =convert.base64-encode/resource=index.php
php://input Un flux en lecture seule qui peut accéder aux données brutes demandées et exécuter les données dans la demande de publication sous forme de code PHP .allow_url_fopen : off/on
allow_url_include : on
Ex : http://127.0.0.1 /cmd.php?file=php://input [POST DATA] 68f65f4e9f9c92d5e53a482c5b172708
Le contenu ci-dessus est à titre de référence uniquement !Tutoriel recommandé : Tutoriel vidéo PHP
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!