Introduccion
hola que tal bueno el dia de hoy daremos un poco de introduccion a metasploit conceptos para un futuro tutorial que estoy planeando subir buen procedamos.
Desarrollando
Cuando se encuentre con Metasploit Framework (MSF ) por primera vez , usted puede ser abrumado por su muchas interfaces , opciones , servicios públicos , variables y módulos.por ahora daremos paso a los conceptos básicos que le ayudan a dar sentido a la imagen grande. Revisaremos alguna penetración básica probando terminología y luego cubrir brevemente las distintas interfaces de usuario que Metasploit tiene para ofrecer. Metasploit sí es software libre de código abierto , con muchos colaboradores en la comunidad de seguridad , pero hay dos versiones comerciales Metasploit también están disponibles .
La primera vez que el uso de Metasploit , es importante que no se obsesione con un exploit , en su lugar se centre en las funciones Metasploit y qué comandos utilizó para realizar la hazaña posible.
Terminos que generalmente se usan en metasploit.
Exploit
Un exploit es el medio por el cual un atacante , o pen tester para el caso, toma ventaja de una falla en un sistema, una aplicación o un servicio. Un atacante utiliza un exploit para atacar a un sistema de una manera que da lugar a un resultado particular deseado que el desarrollador nunca pretendió . Exploits comunes son desbordamientos de búfer , vulnerabilidades de las aplicaciones web ( como la inyección SQL ), y errores de configuración.
Payload
Una payload es el código que queremos que el sistema se ejecute y que se va a seleccionar y entregado por el marco. Por ejemplo, un reverse shell es un payload que crea una conexión desde el equipo de destino del atacante como un símbolo del sistema(commmad prompt) de Windows , mientras que un bind shell es unpayload que «une (binds)» un símbolo del sistema(command prompt) para un puerto de escucha(listenning) en la máquina de destino, que el atacante puede conectarse. Una carga útil también podría ser algo tan simple como un par de comandos que se ejecutan en el sistema operativo de destino.
Shellcode
Shellcode es un conjunto de instrucciones utilizadas como payload cuando se produce la explotación. Shellcode normalmente se escribe en lenguaje ensamblador. En la mayoría de los casos, se proporcionará un shell de comandos o un shell Meterpreter después de la serie de instrucciones ha sido realizado por el equipo de destino , de ahí el nombre.
Module
Un módulo en el contexto es una pieza de software que puede ser utilizado por el Metasploit Framework . A veces , usted puede requerir el uso de un exploit module, un componente de software que lleva a cabo el ataque. Otras veces, un módulo auxiliar pueden ser necesarios para llevar a cabo una acción como el escaneado o la enumeración del sistema. Estos módulos intercambiables son el núcleo de lo que hace el Framework tan poderoso
Listener
Un Listener es un componente dentro de Metasploit que espera a una conexión entrante de algún tipo. Por ejemplo , después de que el equipo de destino ha sido explotada , puede llamar a la máquina de atacar a través de Internet . El listener se encarga de esa conexión , a la espera en la máquina atacante para ser contactado por el sistema de explotación.
Metasploit interfaces
msfconsole
Msfconsole es , con mucho, la parte más popular de Metasploit Framework , y por buenas razones . Es una de las herramientas más flexibles, con múltiples funciones , y bien soportada dentro del marco. Msfconsole ofrece una práctica interfaz todo- en-uno para casi todas las opciones y la configuración disponible en el Framework , es como una tienda de una sola parada para todas sus sueños de explotación. Usted puede utilizar msfconsole hacerlo todo, incluyendo el lanzamiento de un exploit , cargando módulos auxiliares , realizando la enumeración, la creación de los oyentes , o correr explotación masiva contra una red completa.
Aunque el Metasploit Framework está en constante cambio , un subconjunto de comandos se mantienen relativamente constantes. Por el dominio de los conceptos básicos de msfconsole , usted será capaz de mantenerse al día con los cambios. Para ilustrar la importancia de msfconsole de aprendizaje.
Inicializando el msfconsole
simplemente en una terminal tipeamos el comando
msfconsole
msf > help connect
Metasploit Utilidades
Después de haber cubierto tres interfaces principales de Metasploit , es el momento para cubrir unos servicios públicos. Utilidades de Metasploit son interfaces directos a características particulares del Framework que puede ser útil en situaciones específicas , especialmente en explotar el desarrollo. Vamos a cubrir algunas de las utilidades más accesible aquí.
msfpayload
El componente msfpayload de Metasploit le permite generar código shell , ejecutables , y mucho más para su uso en explotaciones fuera del Framework. Shellcode se puede generar en muchos formatos, incluyendo C , Ruby , JavaScript, e incluso Visual Basic para Aplicaciones. Cada formato de salida será de utilidad en diversas situaciones . Por ejemplo, si usted está trabajando con una prueba basada en Python de concepto , la producción del C-estyle podría ser lo mejor , y si usted está trabajando en un navegador explotar , un formato de salida de JavaScript podría ser lo mejor . Una vez que la salida deseada , puede insertar fácilmente la carga directamente en un archivo HTML para activar el exploit . Para ver qué opciones de la utilidad toma , introduzca msfpayload -h en la línea de comandos , como se muestra aquí:
root@Widrogo:/# msfpayload -h
Al igual que con msfcli , si usted se encuentra atascado en las opciones necesarias para un módulo de carga útil , añadir la letra S en la línea de comandos para obtener una lista de las variables requeridas y opcionales.
MSFencode
El código shell generado por msfpayload es completamente funcional , pero contiene varios caracteres nulos que , cuando se interpreta por muchos programas , significa el fin de una cadena, y esto hará que el código finalice antes de la terminación . En otras palabras, esos x00s y xffs pueden romper su payload ! Además , shellcode que atraviesa una red en texto plano(cleartext) es probable que sea recogido por los sistemas de detección de intrusos ( IDS) y el software antivirus. Para abordar este problema , los desarrolladores de Metasploit ofrecen msfencode , que le ayuda a evitar malos personajes y evadir los antivirus y los IDS mediante la codificación de la carga original de un modo que no incluya personajes «malos» . Introduzca msfencode -h para ver una lista de opciones msfencode .
Metasploit contiene un número de diferentes codificadores para situaciones específicas. Algunos serán de utilidad cuando se puede utilizar sólo caracteres alfanuméricos , como parte de una carga útil , como es el caso de muchas hazañas de formato de archivo u otras aplicaciones que aceptan caracteres imprimibles sólo como entrada, mientras que otros son grandes codificadores de propósito general que hacen bien en todas las situaciones .
En caso de duda , sin embargo, usted realmente no puede ir mal con el codificador x86/shikata_ga_nai el único codificador con el grado de Excelente , una medida de la fiabilidad y la estabilidad de un módulo. En el contexto de un codificador , un ranking Excelente implica que es uno de los codificadores más versátiles y puede acomodar un mayor grado de ajuste fino que otros codificadores . Para ver la lista de los codificadores disponibles , añadir -l para msfencode como se muestra a continuación. Las cargas útiles están clasificados en orden de fiabilidad.
Nasm Shell
La utilidad nasm_shell.rb puede ser útil cuando usted está tratando de hacer sentido de código ensamblador , sobre todo si , explotar durante el desarrollo, es necesario identificar los códigos de operación (las instrucciones de montaje ) para un comando de montaje dada.