Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
fivem-backdoor-scanner — Encontre backdoors em recursos FiveM antes de iniciá-los: loaders ocultos, load() remoto, payloads ofuscados, tokens vazados. CLI, etapa de CI, biblioteca. | Kitploit
Ferramentas/GitHubGitHub/rpscripts/fivem-backdoor-scanner
Ferramentas DefensivasAnálise EstáticaScanners de VulnerabilidadesAnálise de CódigoScripting e AutomaçãoAnálise de MalwareDevSecOpsDetecção de SegredosSegurança da Cadeia de Suprimentos

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
GitHubrpscripts/fivem-backdoor-scanner

fivem-backdoor-scanner

Encontre backdoors em recursos FiveM antes de iniciá-los: loaders ocultos, load() remoto, payloads ofuscados, tokens vazados. CLI, etapa de CI, biblioteca.

Ver RepositórioSite
136há 3 diasAinda não revisado
Compartilhar

Scanner de Backdoors para FiveM

Verifica recursos do FiveM em busca de backdoors antes de você iniciá-los. Ele lê arquivos .lua e .js, analisa o Lua e procura os padrões que os backdoors conhecidos do FiveM utilizam: um loader escondido atrás de milhares de espaços, código baixado via HTTP e passado para load(), payloads ofuscados, leituras da sua chave de licença ou senha do RCON, e tokens deixados nos arquivos. Ele também sinaliza executáveis e caminhos inseguros em um pacote.

Nada é executado e nada é enviado. As mesmas regras da versão gratuita no navegador em RPScripts, que também aceita um ZIP ou uma pasta de servidor inteira por arrastar e soltar.

Uso

Node.js 18 ou mais recente. Não é necessária instalação:

npx github:rpScripts/fivem-backdoor-scanner ./resources

Escaneie um único recurso, várias pastas, um ZIP (até 300 MB) ou obtenha JSON para suas próprias ferramentas:

npx github:rpScripts/fivem-backdoor-scanner ./resources/[shops]/my_shop ./resources/[jobs]
npx github:rpScripts/fivem-backdoor-scanner ./downloaded-pack.zip
npx github:rpScripts/fivem-backdoor-scanner ./resources --json > report.json

Código de saída 0 = nada encontrado, 1 = achados, 2 = uso incorreto, 3 = não foi possível executar uma verificação (caminho ausente, ZIP que não é legível ou com mais de 300 MB). Isso o torna utilizável como uma etapa de CI:

# .github/workflows/backdoor-scan.yml
on: [push, pull_request]
jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with: { node-version: 20 }
      - run: npx --yes github:rpScripts/fivem-backdoor-scanner ./resources

O que ele verifica

CódigoSeveridadeEncontra
LAB-SEC-107errorCódigo empurrado para fora da visualização após 400+ espaços ou tabulações (o truque de loader de uma família de backdoors conhecida)
LAB-SEC-101warningload() / loadstring() sobre o corpo de uma resposta HTTP
LAB-SEC-102warningload() sobre texto decodificado em tempo de execução (string.char, bytes escapados, decodificadores base64/hex)
LAB-SEC-103warningDados ofuscados: strings longas de bytes escapados, base64/hex com 400+ caracteres, listas longas de string.char
LAB-SEC-104warningLê sv_licenseKey, rcon_password, sv_tebexSecret ou a string do MySQL em um arquivo que envia HTTP
LAB-SEC-105warningRequisições HTTP para um IP público bruto ou para um endereço decodificado em tempo de execução
LAB-SEC-106warningos.execute, io.popen, gravações fora do próprio resource, SaveResourceFile em outros resources
LAB-SEC-108warningUm token de bot do Discord com formato real, webhook do Discord, chave de licença Cfx ou token do GitHub nos arquivos
LAB-PKG-004warning.exe, .dll, .bat, .cmd, .ps1, .sh, .vbs, .jar, .scr em uma pasta ou arquivo compactado (.dll é esperado ao lado de um *.net.dll, um resource C#)
LAB-PKG-005warningEntrada de arquivo compactado com .., um caminho absoluto ou uma letra de unidade: extraí-la pode gravar fora da pasta de destino

Avisos são padrões, não provas: um logger de webhook pode legitimamente chamar um IP bruto. Leia a linha reportada e decida. Um erro (LAB-SEC-107) significa tratar o pacote como comprometido. Cada achado carrega severity, confidence, method, um texto de correção e referências; os textos estão em rules/catalog.json, as versões em rules/CHANGELOG.md. Os códigos de regra nunca mudam de significado.

Veredictos

  • hidden: código oculto encontrado.
  • suspicious: pelo menos um aviso.
  • partial: nada encontrado, mas alguns arquivos não puderam ser verificados por completo (pastas .fxap criptografadas por escrow, Lua compilado, Lua que não foi possível analisar, JavaScript onde apenas as verificações de texto são executadas, arquivos acima de 2 MB, arquivos compactados dentro do upload).
  • clean: todo arquivo Lua foi analisado e verificado, nada encontrado.

Achados sempre prevalecem sobre a cobertura. Um resultado limpo cobre apenas esses padrões. Ele não prova que um resource é seguro.

Limites

  • Código protegido por escrow só pode ser lido pelo FXServer, então nenhum scanner pode verificá-lo.
  • As verificações de Lua precisam de uma análise sintática. A sintaxe CfxLua (+=, ?., <const>, hashes com backtick, /* */) é suportada.
  • JavaScript recebe as verificações de código oculto e de credenciais, não as regras de Lua.
  • Arquivos compactados dentro de um ZIP (.zip, .rar, .7z) são listados, não descompactados. Apenas .zip é lido.
  • 2 MB por arquivo e 120 MB de código no total. Entradas de ZIP cujo cabeçalho, tamanho ou CRC divergem do diretório central, ou que um extrator gravaria sob outro nome, são reportadas como ilegíveis, nunca como limpas.
  • node_modules e .git são ignorados em uma verificação de pasta. Pastas stream são verificadas.

Uso como biblioteca

import { scanFiles, scanPath, securityRules } from "fivem-backdoor-scanner";

const one = securityRules("server.lua", source); // { findings, parsed }
const report = await scanPath("./resources"); // folder, ZIP or file
const inMemory = scanFiles({ "server.lua": source });
console.log(report.verdict, report.findings);

Contribuindo

Encontrou um backdoor que o scanner não detecta, ou um falso positivo em um recurso bem conhecido? Abra uma issue com o padrão (nunca um payload ativo ou um token); consulte CONTRIBUTING.md. Para relatar uma família sem publicá-la, consulte SECURITY.md.

git clone https://github.com/rpScripts/fivem-backdoor-scanner.git
cd fivem-backdoor-scanner && npm ci && npm test

Mantido por RPScripts. Licenciado sob MIT. O software é fornecido "como está", sem garantia de qualquer tipo.

Baixar ferramenta