Quiero comenzar a aprender sobre bases de datos desde la perspectiva de un evaluador de penetración y me gustaría saber qué cosas serán útiles a largo plazo.
¿También conoces algún buen libro para poner en marcha mi experiencia con bases de datos?
Quiero comenzar a aprender sobre bases de datos desde la perspectiva de un evaluador de penetración y me gustaría saber qué cosas serán útiles a largo plazo.
¿También conoces algún buen libro para poner en marcha mi experiencia con bases de datos?
Esta pregunta es muy amplia. En general, necesita saber cómo están configuradas todas las diferentes tecnologías y cuáles son sus puntos débiles (consulte google).
"Bases de datos" es un término amplio. Hay muchos tipos de bases de datos que utilizan diferentes idiomas:
Al realizar un pentesting, puede concentrarse en el servicio proporcionado por la propia base de datos:
conexiones concurrentes
o puede intentar llegar a la base de datos a través de un programa que se conecta a ella (por ejemplo, inyección LDAP / SQL).
Los medios también pueden ser diferentes: es posible que desee volcar el contenido de la base de datos o intente hacer que la base de datos emita un comando (si se ejecuta como SISTEMA / raíz, puede obtener acceso al servidor subyacente a la etapa) más ataques).
Hay toneladas de libros diferentes en bases de datos. En general, siempre miro todo lo que O'Reilly tiene para ofrecer. Tienen un proceso de revisión y admisión bastante riguroso. Sugiero comenzar con SQL y LDAP, ya que los verás más en forma salvaje que cualquier otro protocolo.
Dependiendo de lo que necesite, la base de datos en sí misma podría ser un buen primer paso para infiltrarse o exfiltrar el resto del sistema operativo. Aprende los comandos que te permiten acceder al sistema de archivos (por ejemplo, LOAD DATA INFILE)
El uso de datos de bases de datos puede ser muy efectivo para la enumeración de cuentas. A menudo, los nombres de las bases de datos, los nombres de los usuarios y el nombre de la tabla coinciden con los nombres de los usuarios del sistema.
Las contraseñas son mi contenido favorito de las bases de datos. Las personas tienden a reutilizar las contraseñas, por lo que puede usarlas en las cuentas de usuario del sistema, las cuentas de correo electrónico, etc. Otra cosa sobre las contraseñas en las bases de datos, generalmente se almacenan utilizando hashes pésimos, como el hash de MySQL anterior o el hash basado en DES de oracle son todos muy rápidamente craqueables.
También, puede encontrar más información sobre el sistema con SHOW VARIABLES
MySQL ejemplo que le muestra rutas para varios motores de almacenamiento, plataforma en la que se está ejecutando, ya sea 32 / 64bit, la versión exacta de la base de datos, dónde se encuentran las claves o certificados criptográficos, qué otras IP son las que el demonio está escuchando. .
Entonces, por lo general, tendrá algún tipo de mecanismo de subshell, o al menos capacidad para ejecutar scripts SQL desde el sistema de archivos. Eso es más DB < - > sistema de archivos de comunicación, que puede ser útil.
Lea otras preguntas en las etiquetas penetration-test professional-education databases