Escáner de backdoors para FiveM
Encuentra el código que un resource filtrado o modificado no debería tener: loaders ocultos tras espacios, código descargado y ejecutado por HTTP, payloads ofuscados y lecturas de tu clave de licencia. Tus archivos nunca salen de tu navegador.
Suelta el ZIP de un resource o de un servidor
Un resource, una carpeta [categoría] o toda tu carpeta resources, hasta 300 MB. Se revisa cada archivo Lua y JS.
El análisis se ejecuta en tu navegador. No se sube ningún archivo a RPScripts.
Qué revisa el escáner de backdoors
- Código tras una larga serie de espacios: un loader añadido a una línea normal, invisible en cualquier editor (en archivos Lua y JS).
- load() o loadstring() sobre el cuerpo de una respuesta HTTP: quien controle ese servidor web puede ejecutar cualquier código en el tuyo.
- load() sobre texto que solo se decodifica en tiempo de ejecución: listas string.char, bytes escapados o decodificadores base64.
- Cadenas largas ofuscadas: bytes escapados, bloques base64 o hexadecimales y listas largas de string.char.
- Lecturas de sv_licenseKey, rcon_password o sv_tebexSecret, y de la cadena de conexión de la base de datos en un archivo que también envía peticiones HTTP.
- Peticiones HTTP a direcciones IP directas o a direcciones que solo se decodifican en tiempo de ejecución.
- os.execute e io.popen, escrituras fuera del resource y SaveResourceFile hacia otros resources.
- Ejecutables (.exe, .bat, .ps1 …) y entradas de archivo que se extraerían fuera de su carpeta.
Cómo llega un backdoor a un servidor de FiveM
La mayoría de los backdoors llegan dentro de un resource: una copia filtrada o «gratis» de un script de pago o un pack de servidor que circula por Discord. El código visible funciona como se anuncia, así que nada parece raro.
La carga suele ser pequeña. Un patrón habitual empuja un loader miles de espacios a la derecha de una línea normal, donde ningún editor lo muestra; otro descarga código con PerformHttpRequest y ejecuta la respuesta con load(). En cuanto se ejecuta, puede copiarse en tus otros resources con SaveResourceFile, por eso un script infectado rara vez es el único.
Qué significa un resultado
El código oculto tras espacios es el único hallazgo sin uso legítimo. Trata esos archivos como comprometidos.
Los demás hallazgos son pistas, no veredictos. Un anticheat puede leer convars, un script de logs puede llamar a una IP directa y algunas librerías incluyen datos en base64. Lee la línea marcada y decide.
Un resultado limpio significa que no se encontró ninguno de estos patrones en los archivos que el escáner pudo leer. No puede leer código cifrado por escrow ni Lua compilado, y una técnica de ofuscación nueva puede saltarse las comprobaciones por patrones. La lista «Sin revisar» muestra exactamente qué quedó fuera.
Si el escáner encuentra un backdoor
- Detén el servidor, o al menos el resource afectado.
- Analiza toda la carpeta resources, no solo el resource sospechoso: el backdoor puede haberse copiado.
- Sustituye los resources infectados por una copia limpia del autor original en lugar de borrar líneas sueltas.
- Cambia sv_licenseKey (Cfx.re Portal), rcon_password, tu secreto de Tebex, la contraseña de tu base de datos y cualquier token de bot o webhook de Discord que haya en tus archivos.
- Revisa en server.cfg y txAdmin los admins y las líneas add_ace o add_principal que no hayas añadido tú, y en tu base de datos los grupos de admin desconocidos.
- Vuelve a analizar antes de iniciar el servidor.
Preguntas frecuentes
- ¿Se suben mis archivos?
- No. El escáner lee el ZIP o la carpeta en tu navegador y ejecuta cada comprobación allí. No se envía nada a RPScripts.
- ¿Puedo analizar todo mi servidor?
- Sí. Elige tu carpeta resources o comprímela en un ZIP (hasta 300 MB). Se revisa cada archivo Lua y JS de hasta 2 MB, con un máximo de 120 MB de código en total. Los assets en streaming como los archivos .ytd o .yft no son código y se omiten.
- ¿Puede revisar resources protegidos con escrow?
- No. El escrow de Cfx cifra los archivos protegidos y solo FXServer puede descifrarlos. El escáner revisa los archivos que un resource deja legibles y lista las carpetas con escrow en «Sin revisar».
- ¿Un resultado limpio garantiza que mi servidor es seguro?
- No. El escáner busca los patrones que usan los backdoors conocidos. No puede juzgar código cifrado o compilado, y no sustituye conseguir los resources de su autor original y mantener tus secretos en privado.
- ¿El escáner de backdoors es gratis?
- Sí. No necesita cuenta y no tiene límite de análisis.
Prueba un resource antes de instalarlo
El FiveM Script Tester ejecuta las mismas comprobaciones de seguridad sobre un resource, además de su manifest, su Lua, la API del framework y sus events, y lo ejecuta en un sandbox de CfxLua.
La guía de Cfx.re sobre seguridad del servidor explica cómo proteger tus propios events.
Más herramientas gratuitas
- Probador de scripts FiveMComprueba, simula y depura un recurso de FiveM antes de instalarlo.
- Creador y verificador de server.cfgInterfaz en inglésCrea una configuración de servidor o revisa tus ajustes actuales.
- Configurador de servidor FiveMElige framework, tipo de servidor, funciones y presupuesto: un pack adecuado o un conjunto de scripts compatibles.