rev-frida — скилл для Claude Code: генератор Frida-хуков
Скилл пишет скрипты Frida для динамического анализа: перехват функций, трассировка вызовов, дамп памяти. Пригодится при реверсе Android-приложений и нативных библиотек.
npx skills add P4nda0s/reverse-skills --skill rev-frida -a claude-codeЧто делает rev-frida
Скилл включается, когда вы просите написать Frida-скрипт, повесить хук на функцию в рантайме, снять аргументы или возвращаемое значение, перехватить нативный, ObjC- или Java-метод, выгрузить память или экспорты. Генерация идёт на современном API: Process.getModuleByName(), mod.getExportByName(), Interceptor.attach, NativeFunction, Memory.scan. Старый флаг --no-pause скилл не использует — процесс после загрузки скрипта возобновляется сам.
Отдельный блок посвящён таймингу загрузки нативных модулей. Скилл не считает, что нужная .so уже в памяти: сначала предлагает хук на android_dlopen_ext или dlopen с установкой хуков в onLeave, затем мгновенную проверку через Process.findModuleByName(), а опрос по таймеру оставляет как запасной вариант. Дедупликация идёт по базовому адресу модуля, а не по пути.
Хуки на .init, .init_array, конструкторы и JNI_OnLoad скилл советует не ставить вслепую. Это хрупкие точки: библиотеки делают там разовую настройку, неудачный хук роняет процесс до того, как отработает целевая логика, а ранний перехват меняет тайминг и прячет то поведение, которое вы изучаете. Прежде чем предлагать хук на этапе инициализации, скилл требует понять, зачем он нужен, и назвать конкретный модуль и функцию.
Какие задачи решает
- перехватить нативный экспорт из
libssl.soи снять аргументы вызова - трассировать Java-метод
onCreateв Android-приложении - выгрузить участок памяти и посмотреть его через
hexdump() - поймать момент загрузки целевой
.soи повесить хук после конструкторов - снять возвращаемое значение функции, не трогая её код
Примеры запросов агенту
- Напиши Frida-скрипт, который перехватит
SSL_readизlibssl.soи напечатает первые два аргумента - Нужен хук на
android.app.Activity.onCreate, выведи стек вызовов - Сделай скрипт, который дождётся загрузки
libtarget.soи повесит хук на экспортtarget_export
Как установить rev-frida
1Через Skills CLI (Vercel)
npx skills add P4nda0s/reverse-skills --skill rev-frida -a claude-code2Вручную: положить файлы
~/.claude/skills/rev-frida/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/rev-frida/
1Через Skills CLI (Vercel)
npx skills add P4nda0s/reverse-skills --skill rev-frida -a codex2Вручную: положить файлы
.agents/skills/rev-frida/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add P4nda0s/reverse-skills --skill rev-frida -a cursor2Вручную: положить файлы
.cursor/skills/rev-frida/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install P4nda0s/reverse-skills rev-frida2Вручную: положить файлы
.github/skills/rev-frida/SKILL.md1Через Skills CLI (Vercel)
npx skills add P4nda0s/reverse-skills --skill rev-frida -a gemini-cli2Командой платформы
gemini skills install https://github.com/P4nda0s/reverse-skills --path skills/rev-fridaВручную: положить файлы
.devin/skills/rev-frida/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add P4nda0s/reverse-skills --skill rev-frida -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора7
Похожие
Рядом в теме «Безопасность»
Всё по теме «Безопасность» →Вопросы о rev-frida
Как установить rev-frida в Claude Code?
Выполните npx skills add P4nda0s/reverse-skills --skill rev-frida -a claude-code. Скилл встанет в ~/.claude/skills/rev-frida/SKILL.md.
Что делает rev-frida?
Генерирует скрипты Frida для динамического анализа: перехват нативных, Java- и ObjC-методов, трассировка вызовов, захват аргументов и возвращаемых значений, дамп памяти.
Почему скилл не советует хукать конструкторы и JNI_OnLoad?
В этих точках библиотеки делают разовую настройку, и неудачный хук может уронить процесс до запуска целевой логики. Ранний перехват ещё и меняет тайминг, из-за чего нужное поведение становится незаметным.