Etapa temprana
phpstudy(php + mysql + apache)
objetivo
Cuando los programadores escriben programas, a menudo escriben algunos códigos que deben reutilizarse en un archivo separado. Cuando estos códigos deben llamarse, los archivos de códigos de llamada se incluyen en otros archivos, lo que puede mejorar la eficiencia de la programación.
Incluir función
Incluya la función de llamada en php:
include()、require()、include_once、require_once()
Función
incluir función: si el archivo no existe, reportar un error, continuar con la ejecución
1.php
<?php
echo '开始';
include '2.php';
echo '结束';
?>
2.php
<?php
echo '文件包含';
?>
1.php
<?php
echo '开始';
include '3.php';
echo '结束';
?>
3.php不存在
Requiere función: si el archivo no existe, reportar un error, no ejecutar
1.php
<?php
echo '开始';
require '2.php';
echo '结束';
?>
2.php
<?php
echo '文件包含';
?>
1.php
<?php
echo '开始';
require '3.php';
echo '结束';
?>
3.php不存在
Los otros dos son los mismos que los anteriores, pero solo se pueden incluir una vez
Tipos de
Cuando se utiliza la función de inclusión de archivos, el archivo especificado puede ser un archivo local, o se puede especificar un archivo de conexión URL remota. El primero incluye archivos locales y el segundo incluye archivos remotos.
Local (LFI)
Remoto (RFI)
El archivo local contiene
index.php
<?php
echo "Hello World";
?>
1.php
<?php
if(@$_GET['page']){
include $_GET['page'];
}else{
include 'index.php';
}
?>
2.php
<?php
echo '文件包含';
?>
Determine si la página en el parámetro GET tiene un valor, si hay un valor, incluya el valor, si no, incluya index.php
http://127.0.0.1/1.php
http://127.0.0.1/1.php?page=2.php
Inclusión de archivos remotos
La función allow_url_fopen se activa en el archivo de configuración php predeterminado, y los programadores pueden especificar los archivos que se incluirán en forma de enlaces URL para llamadas de inclusión de archivos remotos.
需要说明的是,进行RFI攻击需要同时具备三个条件:
1.allow_url_fopen = On (默认开启)
2.allow_url_include = On (默认关闭)
3.被包含的变量前没有目录的限制
Generalmente establece 1 y 2 en php.ini
http://127.0.0.1/1.php?page=http://127.0.0.1/2.php
Usar
Leer archivo
http://127.0.0.1/1.php?page=E:\1\1.txt
Caballo de imagen
http://127.0.0.1/1.php?page=1.png
epílogo
El archivo de auditoría de código contiene estas cuatro funciones que se pueden buscar.
Preste atención a la cuenta pública de la seguridad del aprendizaje de Xiaobai y a varios libros en formato PDF.