Después de la penetración (3)

1. Middleware Elevación de derechos

1.mysql escalada de privilegios

Lo primero que necesitamos saber son algunas condiciones necesarias antes de aumentar la potencia

1) Debe tener una cuenta raíz y una contraseña. 2) Realice la próxima penetración verificando el número de versión de Mysql: cuando el número de versión Mysql es mayor que 5.1, debe crear un nuevo archivo de complemento en el directorio lib antes de poder exportar UDF; cuando es mayor que 5.6.34, tendrá un modo seguro: - secure-file-priv, prohíbe escribir o escribir usando el comando sql

En segundo lugar, correspondiente al primer paso, ¿cómo encontramos la cuenta raíz y la contraseña?

1) Busque posibles archivos de almacenamiento por palabras clave de archivo, por ejemplo: config, database, conf, data, db, mysql

2) Obtenga la cuenta y la contraseña descargando el archivo de la base de datos, por ejemplo: user.MYD, user.MYI

En este paso, debemos prestar atención a que la contraseña puede ser la mitad. Solo tenemos que buscar la otra mitad a continuación y luego unirlas para descifrar el texto sin formato por MD5.

En este punto, es posible que se pregunte cómo realizar el primer paso, podemos cargar un caballo de Troya en el sitio web y luego ingresar a la interfaz de ejecución de Mysql, llamar a la función de ejecución de comandos SQL para ejecutar nuestro comando cmd, o directamente modificar o descargar archivos relacionados.

 

A continuación, explicaré el avance del modo de seguridad mysql y escribiré en el shell. Por cierto, se mostrará a todos una simulación completa del proceso de aumento de potencia.

 

Después de cargar el troyano, verifique y modifique el archivo ejecutable (tenga en cuenta el número de versión)

También puede realizar funciones de ejecución de comandos SQL para realizar las operaciones que deseamos. Por ejemplo, puede ver la modificación consultando el directorio de instalación. Por favor, comprenda el comando mysql.

Luego ingrese a nuestro innovador modo seguro mysql y escriba en el enlace de shell

1) Principio del modo de seguridad: el valor de secure_file_priv después de MySQL versión 5.6.34 tiene como valor predeterminado NULL, y no puede modificarse con sentencias SQL.

2) Modificar la configuración:

Linux :

Puede encontrar [mysqld] en /etc/my.cnf, y luego agregar la opción local-infile = 0 más adelante.

ventanas :

Puede modificar el archivo mysql.ini y agregar una entrada en [mysqld]: secure_file_priv =

Luego guarde y reinicie mysql.

3) Usar a través de registros:

El registro mysql incluye principalmente: registro de errores, registro de consultas, registro lento de consultas, registro de transacciones

Idea 1: Getshell a través de variables globales (requiere permiso SUPER)

Se utilizan dos variables globales, general_log y general_log_file 

general_log  : registro de la operación sql en mysql, todas las declaraciones de consulta se registrarán aquí y está desactivado de forma predeterminada.

general_log_file  : ruta para almacenar registros de operaciones

Ejecutar sentencia SQL: set global general_log = 'ON'

Luego, escriba la dirección del shell en la dirección de almacenamiento del registro: establezca global_log_file = 'C: /phpstudy/www/shell.php'

Finalmente, ejecute la instrucción sql, MySQL registrará la instrucción ejecutada en shell.php, puede obtener shell.

Idea 2: usar el log de consulta lento getshell

Ver variables: muestra variables como '% slow_query_log%';

Habilite el registro lento de consultas: establezca global slow_query_log = 1 ;

Modifique el archivo de registro: set global slow_query_log_file = 'dC: /phpstudywww/shell.php'

Ejecute la instrucción sql y escríbala en el shell (tenga en cuenta que esta es una consulta lenta, así que únase a sleep (12), el tiempo puede ser superior a 10 segundos, por ejemplo: seleccione '<? Php phpinfo ();?> And sleep (12);)

25 artículos originales publicados · Me gustaron 14 · Visitas 5445

Supongo que te gusta

Origin blog.csdn.net/qq_40568770/article/details/89373266
Recomendado
Clasificación