
Offensive Lua.
Offensive Lua es una colección completa de scripts de seguridad ofensiva y red team escritos en Lua con FFI (Foreign Function Interface). Estos scripts aprovechan el poder y la flexibilidad de LuaJIT en Microsoft Windows para realizar operaciones avanzadas de pruebas de penetración y red team.
Lua es una elección excepcional para el scripting ofensivo y de post-explotación gracias a varias ventajas estratégicas:
El intérprete OffensiveLuaEmbedded.exe ofrece capacidades avanzadas de depuración y ejecución esenciales para operaciones de red team y el desarrollo de seguridad ofensiva. Estas funciones permiten a los operadores analizar el comportamiento de los scripts, optimizar el rendimiento, solucionar problemas en entornos hostiles y desarrollar técnicas de evasión:
¿Por qué usar la depuración avanzada?
Offensive LuaJIT Debugger
Usage: OffensiveLuaEmbedded.exe [options] <script.lua> [args...]
Options:
--interactive, -i Enable interactive debugging mode.
--dump-bytecode, -d Create .lbin bytecode file with hexdump.
--trace, -t Trace every executed line.
--count, -c Track instruction samples.
--memory, -m Print memory summary after execution.
--vm, -v Instrument VM with timing and diagnostics.
--version Show version information.
--help, -h Show this help message.
Por ejemplo, para leer todas las credenciales de tu contexto de ejecución actual en Microsoft Password Vault, ejecuta:
.\OffensiveLuaEmbedded.exe vaultdump.lua
Esto demuestra el poder de Offensive Lua: con un solo comando, puedes volcar el almacén de credenciales de Windows y extraer contraseñas, tokens y datos de autenticación almacenados. El script aprovecha las API de Windows a través de FFI para acceder al Almacén de contraseñas que las aplicaciones usan para guardar de forma segura las credenciales de los usuarios.
Un proyecto de ejemplo de Visual Studio 2022 que puede usarse para incrustar LuaJIT en un binario con el fin de ejecutar scripts. Necesitarás hacer checkout de los submódulos de git para obtener la última rama de LuaJIT.
Importante: Lee los comentarios a lo largo del código fuente para comprender los matices de la incrustación y los errores que debes evitar. Los comentarios contienen detalles de implementación críticos y mejores prácticas para una incrustación exitosa de LuaJIT.
Puedes obtener más información sobre Hacker House y Offensive Lua en nuestro sitio web:
Estos archivos están disponibles bajo la licencia BSD de 3 cláusulas.
| Archivo | Descripción |
|---|
| bin2hex.lua | Convierte un binario a hex para binrun.lua |
| binrun.lua | Escribe un hex de EXE en una ubicación aleatoria y lo ejecuta |
| bindshell.lua | Enlaza una shell en el puerto TCP 5000 |
| ComputerDefaultsUACBypass.lua | Omite las restricciones de UAC mediante ms-settings |
| console.lua | Ejemplo de aplicación de consola |
| downloadexec.lua | Descarga y ejecuta sobre HTTP |
| downloadexec_UACbypass.lua | Descarga, omite UAC y ejecuta sobre HTTP |
| efspotato.lua | efspotato incompleto |
| eventcode.lua | Ejemplo de manejador de eventos de Windows |
| filewrite.lua | Escribe un archivo |
| howami.lua | Siempre whoami.exe, nunca howami.lua |
| keyboard_capture.lua | Captura la entrada del teclado y las pulsaciones de teclas |
| listprocess.lua | Lista los procesos en ejecución |
| memorysearch.lua | Busca contraseñas en la memoria |
| memorysearch_stringdump.lua | Vuelca cadenas desde la memoria del proceso |
| messagebox.lua | Ejemplo de MessageBox |
| microphone_capture.lua | Captura el audio del micrófono |
| OffensiveLuaEmbedded.exe | Intérprete LuaJIT incrustado con funciones de depuración |
| regread.lua | Lee del Registro |
| regwrite.lua | Escribe en el Registro |
| regwritedel.lua | Escribe y elimina del Registro |
| rickroll.lua | Abre un navegador en una URL |
| runcmd.lua | Ejecuta un comando con popen |
| runcmd2.lua | Ejecuta un comando con os.execute |
| runswhide.lua | Ejecuta un comando mediante CreateProcess con SW_HIDE |
| screenshot.lua | Captura una captura de pantalla del escritorio |
| screenshot_withhiddenwindows.lua | Captura una captura de pantalla incluyendo ventanas ocultas |
| uac_bypass_bluetooth_win10.lua | Omite UAC mediante Bluetooth en Windows10 |
| vaultdump.lua | Vuelca el Administrador de credenciales de Windows y el Almacén de contraseñas |
| webcam_picture_directshow.lua | Captura una foto de la webcam usando DirectShow |
| webcam_picture_simple.lua | Captura una foto de la webcam usando un método simple |
| webcam_video_directshow.lua | Graba video de la webcam usando DirectShow |
| webcam_video_simple.lua | Graba video de la webcam usando un método simple |