Profesor: Bien, ahora que tenemos Veil cargado,
puede ver que nos muestra los comandos principales que
puede usar con Veil.
Entonces, el primer comando es, puede hacer salir para salir,
puede hacer información para obtener información sobre una herramienta específica, puede
hacer una lista, para enumerar las herramientas disponibles.
Puede actualizar, actualizar
Veil, y esto es muy,
muy importante porque siempre desea estar
actualizado cuando se trata de omitir los programas
antivirus, y luego puede usar una herramienta.
Ahora, comencemos a usar Veil
Evasion, y a medida que lo hagamos, será
muy fácil y podrás entenderlo más.
Ahora, Veil tiene dos herramientas principales y si hacemos una
lista, podrá verlas.
Entonces, tenemos el primero
que nos interesa, que se llama evasión.
Y ese es el que genera
puertas traseras indetectables para nosotros.
Y luego está el segundo, que se llama
munición, y esta herramienta genera las cargas útiles que utiliza la evasión, por
lo que puede ver esto como una herramienta auxiliar o secundaria.
Ahora, lo que quiero decir con una carga útil
es, una carga útil es la parte del código de la puerta
trasera, que hace lo
que queremos, que hace el mal si quieres decirlo.
Entonces, es
la parte del código que
nos da una conexión
inversa, es la parte del código que descarga y ejecuta
algo en la computadora de destino, es la parte
del código que nos permite lograr lo que queremos al ejecutar ese archivo.
Y esto se volverá más claro a medida que comencemos a usar Veil.
Ahora, por ahora estamos interesados en usar la evasión, así
que vamos a usar el 1, porque esa es la primera herramienta, esa es la
número uno.
Y como puede ver, ahora tenemos Veil Evasion cargada, y como
dije antes, esta solía ser una herramienta independiente que acaba
de descargar por sí sola.
Pero ahora lo tienen todo combinado.
Ahora, como puede ver, lo primero
que obtenemos cuando cargamos Veil Evasion son
los comandos que puede ejecutar en esta herramienta.
Entonces, lo primero que queremos hacer
es hacer una lista para ver todas las cargas disponibles.
Y como puede ver, tenemos 41 cargas
útiles diferentes y todas estas cargas siguen un cierto patrón de nombres.
Y pueden ver, por
ejemplo, tomemos este ejemplo aquí porque
esa es la carga que voy a usar.
Puede ver que la carga útil se divide en tres partes.
La primera parte aquí se refiere al lenguaje del programador
en el que se incluirá la carga útil.
Entonces, tenemos el código maligno, y luego el código
maligno estará envuelto en un cierto lenguaje de
programación que la computadora objetivo entiende.
Y aquí puede ver que esta carga útil usa el
lenguaje de programación go, podemos ver que este usa c, podemos
ver que estos usan cs, tenemos
python, tenemos powershell y tenemos rubí
si nos desplazamos hacia abajo.
La segunda parte de la carga útil es realmente importante.
Este es el tipo de carga útil, el tipo de código
que se ejecutará en la computadora de destino.
En este ejemplo, estamos utilizando Meterpreter,
que es una carga útil diseñada por Metasploit.
Metasploit es un gran marco para hackear y
te permite hacer muchas cosas.
Pero en esta conferencia nos estamos
centrando en crear una carga útil llamada Meterpreter, y
lo que es realmente genial de Meterpreter es que se
ejecuta en la memoria y nos
permite migrar entre los procesos del sistema, para
que podamos tener la carga útil o la puerta trasera
ejecutándose desde una normalidad proceso como Explorer, por ejemplo, y esta carga útil nos
permitirá obtener un control total sobre la computadora de destino,
por lo que
podremos navegar a través del sistema de
archivos, descargar, cargar archivos, encender el micrófono, encender
la cámara web, incluso usa esa computadora para
hackear otras computadoras, instala un registrador de teclas, literalmente
puedes hacer cualquier cosa que se te ocurra.
Y todo esto se ejecutará desde la
memoria desde un proceso normal en el sistema.
Por lo tanto, es
muy difícil de detectar y no deja muchas huellas.
Es por eso que es una carga útil realmente
genial y la usaremos mucho.
La tercera parte del nombre es
el método que se utilizará para establecer la conexión.
Entonces, y aquí podemos ver que esto se llama rev https.
Entonces, rev significa reversa, y https es el protocolo que se
usará para establecer la conexión.
Entonces podemos ver que esta
carga útil creará una conexión https inversa.
Puede ver este aquí,
por ejemplo, crea una conexión http inversa.
Y tenemos este aquí
que crea una conexión tcp inversa.
Ahora, lo que quiero decir con reversa es que la conexión vendrá
de la computadora de destino a mi propia computadora.
Por lo tanto, no me conectaré a la
computadora que quiero piratear, lo que sucederá es que una vez
que la persona haga doble clic en la puerta
trasera, la puerta trasera se conectará conmigo
desde la computadora de destino.
Lo bueno de esto es
que podré omitir los programas antivirus porque la
conexión no va a la computadora de destino, vuelve a mi
computadora, por lo que es literalmente como
si la persona de destino se
estuviera conectando a un sitio web normal .
Voy a usar un puerto que usan los sitios web que es 80
u 8080, así que de nuevo, si la persona
analiza la conexión, parecerá que literalmente
se está conectando a un sitio web normal.
Además, si la computadora de destino está oculta detrás de un
enrutador, o detrás de una red, nuevamente esto funcionará, porque la
conexión viene de la
computadora de destino hacia mí, en lugar
de que yo me conecte a la computadora de destino.
Por lo tanto, usar una conexión inversa es
realmente muy útil y creo
que esta es realmente la única forma práctica de obtener acceso a una
computadora porque hay muchas cosas que pueden impedir
que te conectes a una determinada computadora.
Ahora, este es el patrón de nomenclatura general.
Verá algunas cargas útiles como esta aquí
mismo que no sigue ese patrón de nomenclatura general.
Básicamente, lo que hacen estas cargas útiles, por ejemplo,
puede ver que esta se llama inyección de código de shell,
por lo que lo que va a hacer es crear una carga útil
que inyecte su otra carga útil.
Entonces, va a crear una carga útil normal,
y esa carga normal inyecta
una carga útil de Meterpreter, por ejemplo.
Ahora, hace esto para tratar de evitar más seguridad, pero
por lo general no evitarán más cosas de las que evitarían las cargas
útiles normales, por lo que es
por eso que generalmente solo
uso una de las cargas normales aquí.
Entonces, esto es todo, esto se trata de las cargas útiles, lo
siento, me tomé un poco de tiempo, pero quería
asegurarme de que ustedes entiendan el patrón de
nombres, quería que entendieran qué es una carga útil
y la diferencia entre un
reverse y bind, y tcp payload, de
esta manera el resto del curso se volverá
más claro para
usted y puedo usar la carga útil
que quiero sin explicar lo que es.
Ahora, en la
próxima conferencia, generaremos una carga útil y la
probaremos contra los programas antivirus.