El archivo contiene vulnerabilidades (apto para principiantes)

1. Descripción general de la vulnerabilidad

La vulnerabilidad de inclusión de archivos significa que el servidor usa variables para incluir archivos y usa estas variables llamando dinámicamente a las URL. Si los archivos incluidos no se filtran de manera efectiva, un atacante puede aprovechar esta vulnerabilidad para ejecutar archivos o códigos maliciosos, lo que genera vulnerabilidades de inclusión de archivos.
Tomemos un ejemplo simple:
supongamos que hay un archivo PHP index.php que contiene el siguiente código:

<?php
$page = $_GET['page'];
include($page . '.php');
?>

En este código, $_GET['page'] obtiene los parámetros en la URL y luego los pasa a la función de inclusión como el valor de la variable $page. Si un atacante puede controlar el valor de $_GET['page'] y establecerlo en la ruta de un archivo malicioso, el archivo malicioso se incluirá y ejecutará.

Por ejemplo, un atacante podría pasar un archivo malicioso evil.php a través de la URL http://example.com/index.php?page=evil, que luego se incluiría y ejecutaría, generando una vulnerabilidad de seguridad.

2. Funciones comunes de inclusión de archivos

  1. include() : incluye y ejecuta el código del archivo especificado. Si el archivo no existe o contiene un error, se emitirá una advertencia para continuar ejecutando el script.

  2. require() : similar a la función include(), pero si el archivo no existe o se produce un error de inclusión, se genera un error fatal y se detiene el script.

  3. include_once() : similar a la función include(), pero solo incluye el archivo especificado una vez para evitar incluir el mismo archivo repetidamente.

  4. require_once() : similar a la función require(), pero solo incluye el archivo especificado una vez para evitar incluir el mismo archivo repetidamente.

  5. fopen() : abre un archivo o URL

Evitar :Al utilizar estas funciones, debe intentar evitar pasar la entrada del usuario directamente a estas funciones como nombres de archivos. En su lugar, filtre y valide la entrada del usuario para evitar vulnerabilidades de inclusión de archivos.

3. El archivo contiene clasificación de vulnerabilidad

Las vulnerabilidades de inclusión de archivos se pueden dividir en dos tipos: inclusión de archivos locales e inclusión de archivos remotos.

Vulnerabilidad de inclusión de archivos locales:
cuando el archivo incluido se encuentra localmente en el servidor, si la ruta del archivo no está suficientemente verificada y filtrada, el atacante puede construir una ruta de archivo maliciosa y ejecutar código malicioso. Esta vulnerabilidad se denomina vulnerabilidad de inclusión de archivos locales.

Vulnerabilidades de inclusión remota de archivos:
las causas de las vulnerabilidades de inclusión de archivos locales y de inclusión remota de archivos son las mismas. Si las opciones enable_url_fopen y enable_url_include en el archivo de configuración PHP php.ini están habilitadas, los archivos incluidos pueden ser archivos almacenados en un servidor de terceros, formando así una vulnerabilidad de inclusión remota de archivos. Un atacante puede construir una URL maliciosa e incluir código malicioso en la página afectada para ejecutar el código de ataque.

远程文件包含条件:需要满足两个条件。php.ini 中的配置选项为

 allow_url_fopen:on   
 
 allow_url_include:on 

Si tiene algo que agregar, comuníquese con el autor de este artículo.

Este artículo está destinado únicamente a fines de aprendizaje y comunicación y no puede utilizarse con fines comerciales. Los puntos de vista, opiniones y sugerencias del artículo son únicamente del autor y no representan la posición de este sitio. El autor y este sitio no son responsables de las consecuencias que surjan del uso de las tecnologías, métodos, procesos y herramientas mencionados en este artículo. Antes de utilizar estas tecnologías, métodos, procesos y herramientas, comprenda sus responsabilidades y riesgos legales y tome las medidas de seguridad adecuadas.

Supongo que te gusta

Origin blog.csdn.net/qq309000281/article/details/130362225
Recomendado
Clasificación