El archivo BugKu-web8 contiene

No escribas, solo escribe explicaciones detalladas para principiantes.

Código de revisión

 <?php
    include "flag.php";
    $a = @$_REQUEST['hello'];
    eval( "var_dump($a);");
    show_source(__FILE__);
?>

incluir ""

Los archivos incluidos son la clave para resolver problemas, lagunas

Declaraciones de inclusión y
solicitud de PHP Mediante declaraciones de inclusión o solicitud, puede insertar el contenido de un archivo PHP en otro archivo PHP (antes de que el servidor lo ejecute).

Las declaraciones include y require son las mismas, excepto por el manejo de errores:

require generará un error fatal (E_COMPILE_ERROR) y detendrá el script,
incluya solo la generación de advertencias (E_WARNING), y el script continuará.
Por lo tanto, si desea continuar con la ejecución y enviar los resultados al usuario, incluso si falta el archivo incluido , use incluir. De lo contrario, en frameworks, CMS o programación de aplicaciones PHP complejas, utilice siempre require para hacer referencia a archivos clave para el flujo de ejecución. Esto ayuda a mejorar la seguridad y la integridad de la aplicación en caso de pérdida accidental de un archivo crítico.

Incluir archivos ahorra mucho trabajo. Esto significa que puede crear encabezados, pies de página o archivos de menú estándar para todas las páginas. Luego, cuando sea necesario actualizar el encabezado, solo necesita actualizar este archivo de inclusión de encabezado.

Enlace: incluye uso variable

$ _REQUEST

PHP $ _REQUEST se utiliza para recopilar datos enviados por formularios HTML.
$ _REQUEST en php puede obtener los datos enviados por el método POST y el método GET Desventaja: la velocidad es relativamente lenta.

<?php
              $fn=$_REQUEST["fname"];
              $ln=$_REQUEST["lname"];
              echo $fn.$ln;
              ?>

Inserte la descripción de la imagen aquí

PS

@ Proteja el mensaje de error. Cuando hay @, incluso si hay un error en la conexión, no informará un error.
Evite que otros adivinen la estructura de su base de datos en función del mensaje de error para realizar ataques de piratería como ataques de inyección

$ a significa variable a

? :
Función de conexión:
http://www.xxx.com/Show.asp?id=77&nameid=2905210001&page=1

Borrar caché:
http://www.xxxxx.com/index.html
http://www.xxxxx.com/index.html?test123123 Las
dos URL abren la misma página, pero hay un signo de interrogación en la parte posterior que indica que el caché no se llama El contenido se considera una nueva dirección y se vuelve a leer.

eval ()

La función eval () se usa para ejecutar una expresión de cadena y devolver el valor de la expresión.
La función de la función eval es hablar de una cadena como código php para su ejecución.

a = 1
b = 2
eval("a + b")
>>>3

En otras palabras, aquí se ejecutará
var_dump ($ a)

var_dump ()

declaración de salida de php

show_source ( ARCHIVO );

Muestre este php en forma de resaltado de código

Comprensión de principiante, corrija

print_r ()

print_r: Imprime tipos compuestos como objetos de matriz, etc., e imprime información fácil de entender sobre las variables.

bandera

? hola = $ a); print_r (archivo ("./ flag.php"));

Supongo que te gusta

Origin blog.csdn.net/m0_51641607/article/details/114680018
Recomendado
Clasificación