práctica semanal de php

Prólogo: práctica personal de Blogger (blanco puro).

1. [Concurso de primer año de SWPUCTF 2021] gift_F12 se ha resuelto

Según el tema, f12 verifica el código fuente de la página web y encuentra la respuesta de acuerdo con las indicaciones.
Insertar descripción de la imagen aquí

2. [Concurso de estudiantes de primer año SWPUCTF 2021] jicao

Según el código PHP, se puede ver que es necesario utilizar get y post.
Esta es la primera vez que veo json y lo entiendo un poco después de leer wp y buscar en Internet.
Construya json para cargar en modo de obtención y cargue id = wllmNB en modo de publicación.
Insertar descripción de la imagen aquí

3. [ZJCTF 2019] NiZhuanSiWei

Después de leer wp, el resumen es el siguiente:
involucra: inclusión de archivos, pseudoprotocolo php, deserialización.
1. Para ingresar if, debe usar el pseudoprotocolo de datos para construir la carga útil:, text=data://text/plain,welcome to the zjctfacceder a ella en forma de get e ingresar a la siguiente interfaz.
Insertar descripción de la imagen aquí
2. El archivo contiene, use el pseudoprotocolo php://filter para construir la carga útil file=php://filter/convert.base64-encode/resource=useless.phpy acceda a él en forma de get. Después de
leer con éxito la Insertar descripción de la imagen aquí
decodificación base64 de useless.php, se obtiene el siguiente código fuente:

<?php

class Flag{ //flag.php error de análisis
público de KaTeX: grupo esperado después de '_' en la posición 29: …función pública _̲_tostring(){ … this->file)){ echo file_get_contents($this->file); hacer eco “ ”; return (“¡ESTÁS TAN CERCA! ///VENGA POR FAVOR”); } } } ?>





3. Método mágico __tostring(), construir carga útil O:4:"Flag":1:{s:4:"file";s:8:"flag.php";}, verificar el código fuente de la página web para obtener la bandera.
Insertar descripción de la imagen aquí

4. [Concurso de primer año SWPUCTF 2021] no_wakeup

Según la información de texto enviada por los grandes del grupo, aprendí sobre varios métodos mágicos.
1. Hay una deserialización sin serializar al final y la función de activación se ejecutará automáticamente.
2. sha1 es irreversible, así que intente evitar el despertar.
3. Cuando el número de miembros en la lista de parámetros del objeto serializado no coincide con el número real, se omitirá la activación.
Construya una secuencia de cadenas de acuerdo con los requisitos del tema, cambie el número de miembros para que no coincidan y cárguela en el método get.
Insertar descripción de la imagen aquí

5.[Concurso de primer año SWPUCTF 2021]ez_unserialize

Ingrese al entorno, pero no puede ver el título, F12 para ver el código fuente y vea el siguiente mensaje: Intente acceder a robots.txt Acceda Insertar descripción de la imagen aquí
Insertar descripción de la imagen aquí
de acuerdo con el mensaje, vea el título, que involucra el método mágico unserilizar, __construct (), __destruir().
Similar a la pregunta 4, cree una cadena, acceda a ella en modo de obtención y obtenga la bandera.
Insertar descripción de la imagen aquí

Expansión: El uso de herramientas es realmente un problema, un poco confuso>﹏<>﹏<.

Supongo que te gusta

Origin blog.csdn.net/qq_73390155/article/details/131669871
Recomendado
Clasificación