Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
fivem-backdoor-scanner — Находите бэкдоры в ресурсах FiveM до их запуска: скрытые загрузчики, удалённый load(), обфусцированные полезные нагрузки, утёкшие токены. CLI, шаг CI, библиотека. | Kitploit
Инструменты/GitHubGitHub/rpscripts/fivem-backdoor-scanner
Оборонительные ИнструментыСтатический анализСканеры уязвимостейАнализ КодаСкриптинг и автоматизацияАнализ вредоносных программDevSecOpsОбнаружение СекретовБезопасность Цепочки Поставок

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
GitHubrpscripts/fivem-backdoor-scanner

fivem-backdoor-scanner

Находите бэкдоры в ресурсах FiveM до их запуска: скрытые загрузчики, удалённый load(), обфусцированные полезные нагрузки, утёкшие токены. CLI, шаг CI, библиотека.

РепозиторийСайт
1363 дней назадЕщё не проверено
Поделиться

Сканер бэкдоров FiveM

Проверяет ресурсы FiveM на наличие бэкдоров перед их запуском. Он читает файлы .lua и .js, разбирает Lua и ищет шаблоны, которые используют известные бэкдоры FiveM: загрузчик, скрытый за тысячами пробелов, код, загружаемый по HTTP и передаваемый в load(), обфусцированные полезные нагрузки, чтение вашего лицензионного ключа или пароля RCON, а также токены, оставленные в файлах. Он также помечает исполняемые файлы и небезопасные пути в пакете.

Ничего не выполняется и ничего не загружается. Те же правила, что и у бесплатной браузерной версии на RPScripts, которая также принимает ZIP или целую папку сервера перетаскиванием.

Использование

Node.js 18 или новее. Установка не требуется:

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

Просканируйте один ресурс, несколько папок, ZIP-архив (до 300 МБ) или получите JSON для собственных инструментов:

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

Код выхода 0 = ничего не найдено, 1 = найдены находки, 2 = неверное использование, 3 = сканирование не удалось выполнить (отсутствует путь, ZIP-файл нечитаем или превышает 300 МБ). Это делает его пригодным для использования в качестве шага 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

Что проверяется

КодУровеньЧто находит
LAB-SEC-107errorКод, вынесенный за пределы видимости после 400+ пробелов или табуляций (приём загрузчика из семейства известных бэкдоров)
LAB-SEC-101warningload() / loadstring() на теле HTTP-ответа
LAB-SEC-102warningload() на тексте, декодированном во время выполнения (string.char, экранированные байты, декодеры base64/hex)
LAB-SEC-103warningОбфусцированные данные: длинные строки экранированных байтов, base64/hex длиной 400+ символов, длинные списки string.char
LAB-SEC-104warningЧтение sv_licenseKey, rcon_password, sv_tebexSecret или строки MySQL в файле, который отправляет HTTP-запросы
LAB-SEC-105warningHTTP-запросы к публичному «сырому» IP или к адресу, декодированному во время выполнения
LAB-SEC-106warningos.execute, io.popen, запись за пределы собственного ресурса, SaveResourceFile в другие ресурсы
LAB-SEC-108warningТокен Discord-бота, Discord webhook, лицензионный ключ Cfx или токен GitHub реального формата в файлах
LAB-PKG-004warning.exe, .dll, .bat, .cmd, .ps1, .sh, .vbs, .jar, .scr в папке или архиве (.dll ожидается рядом с *.net.dll, ресурсом на C#)
LAB-PKG-005warningЗапись архива с .., абсолютным путём или буквой диска: при извлечении она может записать за пределы целевой папки

Предупреждения — это шаблоны, а не доказательство: логгер вебхуков может по-настоящему обращаться к «сырому» IP. Прочитайте указанную строку и решите сами. Ошибка (LAB-SEC-107) означает, что пакет следует считать скомпрометированным. Каждая находка содержит severity, confidence, method, текст исправления и ссылки; тексты находятся в rules/catalog.json, версии — в rules/CHANGELOG.md. Коды правил никогда не меняют смысл.

Вердикты

  • hidden: найден скрытый код.
  • suspicious: как минимум одно предупреждение.
  • partial: ничего не найдено, но некоторые файлы не удалось проверить полностью (папки .fxap, зашифрованные escrow, скомпилированный Lua, Lua, который не удалось разобрать, JavaScript, где выполняются только текстовые проверки, файлы размером более 2 МБ, архивы внутри загруженного пакета).
  • clean: каждый Lua-файл был разобран и проверен, ничего не найдено.

Находки всегда важнее покрытия. Чистый результат охватывает только эти шаблоны. Он не доказывает, что ресурс безопасен.

Ограничения

  • Код, защищённый escrow, может прочитать только FXServer, поэтому ни один сканер не может его проверить.
  • Для проверок Lua требуется разбор. Синтаксис CfxLua (+=, ?., <const>, хэши в обратных кавычках, /* */) поддерживается.
  • Для JavaScript выполняются проверки скрытого кода и учётных данных, но не правила Lua.
  • Архивы внутри ZIP (.zip, .rar, .7z) перечисляются, но не распаковываются. Читается только .zip.
  • 2 МБ на файл и 120 МБ кода в сумме. Записи ZIP, у которых заголовок, размер или CRC не совпадают с центральным каталогом, или которые экстрактор записал бы под другим именем, помечаются как нечитаемые, но никогда как чистые.
  • node_modules и .git пропускаются при сканировании папки. Папки stream сканируются.

Использование как библиотеки

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);

Участие в разработке

Нашли бэкдор, который сканер пропускает, или ложное срабатывание в известном ресурсе? Откройте issue с шаблоном (никогда не с живой полезной нагрузкой или токеном); см. CONTRIBUTING.md. Чтобы сообщить о семействе без его публикации, см. SECURITY.md.

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

Поддерживается RPScripts. Лицензия MIT. Программное обеспечение предоставляется «как есть», без каких-либо гарантий.

Скачать инструмент