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

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

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

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

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

Категории

Все категории
Loading categories
FlowName — Восстановление идентификаторов JavaScript нового поколения с помощью LLM. | Kitploit
Инструменты/GitHubGitHub/123wwwa/flowname
Статический анализАнализ КодаОбратная инженерияМашинное ОбучениеОбратная Разработка с Помощью ИИБезопасность ИИ
GitHub123wwwa/flowname

FlowName

Восстановление идентификаторов JavaScript нового поколения с помощью LLM.

Репозиторий
191 день назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Сайт
Поделиться

FlowName

Попробуйте FlowName в браузере → — введите свой JavaScript, API-ключ и модель; установка не требуется.

CLI: npx --yes --package=flowname@latest flowname input.js (сначала задайте GEMINI_API_KEY).

FlowName — это Semantic Identifier Recoverer нового поколения для обфусцированного JavaScript. Используя статический анализ на основе AST для группировки логически связанных переменных в экономные LLM-запросы, FlowName устраняет галлюцинации из-за потери контекста, характерные для наивных подходов со скользящим текстовым окном.

В прямом бенчмарке против ведущего инструмента на основе символов (Humanify) на обфусцированной области видимости с 411 привязками FlowName показал:

  • ⚡ На 85% быстрее (67.1 с против 456.2 с) благодаря пакетированию запросов с учётом связей (65 против 411 вызовов API).
  • 💰 На 36% ниже стоимость токенов (87 тыс. против 137 тыс. токенов) за счёт устранения раздувания перекрывающегося контекста.
  • 🎯 Более высокая семантическая точность (155 против 37 по win-rate в оценке с учётом оригинальных имён) и на 50% больше точных совпадений с оригинальными именами, что доказывает: гарантированный контекст AST предотвращает галлюцинации LLM.

Изучите все 411 сравнений имён в HTML-отчёте. Сравнение 155 против 37 — это автоматизированное, некалиброванное суждение Jev; этот запуск на одной программе не может установить общее преимущество в качестве именования. См. заметки о бенчмарке.

Запуск

Задайте GEMINI_API_KEY (или FLOWNAME_API_KEY) в вашем окружении, затем выполните:

root@kitploit:~
npx --yes --package=flowname@latest flowname input.js

CLI записывает восстановленный код в новый каталог flowname-output-TIMESTAMP-ID/output.js. Добавьте --report, чтобы наблюдать каждый запрос и предложенное имя в живом HTML-отчёте. Для модели Gemini по умолчанию флаги не требуются; CLI не загружает .env автоматически. Требуется Node.js 22.8+.

Для браузера откройте playground, вставьте JavaScript, укажите свой API-ключ и запустите восстановление. Запросы идут напрямую из вашего браузера к выбранному провайдеру; Stop прерывает выполнение.

Где это применимо

FlowName даёт имена идентификаторам; он не распаковывает бандлы и не отменяет структурную обфускацию. Используйте webcrack для поддерживаемых шаблонов обфускации или Wakaru для поддерживаемых бандлов, а затем передайте полученный JavaScript в FlowName. Он разрешает лексические привязки, использует лёгкие связи и откат в пределах той же области видимости для группировки целей и запрашивает у LLM несколько имён за один запрос. Посмотрите, как работает группировка.

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

root@kitploit:~
npm install flowname
root@kitploit:~
import { readFile } from 'node:fs/promises';
import { recoverNames, createProvider } from 'flowname';

const sourceCode = await readFile('./input.js', 'utf8');
const provider = createProvider({
  provider: 'gemini',
  model: 'gemini-3.5-flash-lite',
  apiKey: process.env.GEMINI_API_KEY,
});
const result = await recoverNames(sourceCode, { provider });
console.log(result.code);

См. руководство по использованию для опций, отчётов CLI и полного примера библиотеки. Индекс документации охватывает подход, архитектуру, ограничения, предыдущие работы и сравнение с Humanify.

Лицензировано под MIT. См. примечания к выпуску.

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