Inglês | chinês

O Fridare é uma ferramenta mágica de automação para plug-in iOS Frida, Android, Linux, Windows e outras plataformas. Ele permite que os usuários alterem os nomes e portas para segurança e flexibilidade aprimoradas. Isso elimina muitos casos de detecção de jailbreak de Frida.
Usado no Windows | Documentos Android | Documentos do iOS | Documentos Frida-Tools | Guia de instalação | Changelog
Todos podem se juntar ao grupo QQ para discutir: QQ 555354813. Se este projeto for útil para você, lembre -se de adicionar estrelas ao autor e incentivá -lo!
Bem-vindo para começar a Fridare rapidamente com o novo recurso de instalação com um clique!
curl -s https://raw.githubusercontent.com/suifei/fridare/main/fridare.sh | bash -s installpatch-frida.cmd para modificar o Frida-Server no ambiente do Windowspatch-frida-tools.cmd para modificar o Frida-Tools no ambiente do Windowspatch-tools para remendar módulo Frida-toolsrender_markdown adicionada para renderizar formato simples de marcação no terminalgenerate_random_name para gerar um nome magic aleatório de Fridamove_file para manipular erros "são identificadores" quando o arquivo movelist_frida_versions função, que agora pode renderizar descrições de versão no formato de marcaçãobuild_frida , apoie a construção com arquivos de deb.patch_frida_tools e restore_frida_tools FUNÇÕESmodify_frida_tools para melhorar a confiabilidade de modificar Frida-Toolsdownload_frida_module e aumente o suporte para sistemas operacionais e arquiteturas específicosshow_main_usage e outras instruções para refletir novas funçõesparse_arguments para suportar o comando patch-tools recém-adicionadoFRIDA_NAMEmacOS , iOS , Android , Linux e Windowsupgrade adicionada: usado para atualizar automaticamente scripts Fridareupgrade para atualizar automaticamente scripts Fridarepatch adicionado para patch módulos FRIDA especificados安卓frida-server ./fridare.sh p -m frida-server -latest -os android -arch arm64 -o ./patchedpatchbuild , download e outros comandos
fridare.sh para integrar todas as funções e fornecer uma interface de linha de comando mais completabuild , ls , download , lm , setup , config e helpfrida:rpc Feature Magic Modificationcore.py e modifique magicamente o arquivo _frida.abi3.soautoinstall.sh para perceber a implantação automática do plug-in FRIDA.Makefile para simplificar o processo de construção e implantação de projetos.Configure o login sem senha SSH para ISSH
# 生成 keygen 密钥,如果已生成可以跳过
ssh-keygen -t rsa -b 4096 -C " <EMAIL> "
# 配置手机IP,如果USB连接可以不配置
issh ip set < iPhone-IP >
# 拷贝公钥到手机 /var/root ,需要 root 密码 alpine
issh scp ~ /.ssh/id_rsa.pub
# 远程服务器添加公钥到 authorized_keys 文件
issh run " mkdir -p ~/.ssh && cat /var/root/id_rsa.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh " fridare.sh - Frida 魔改脚本
│
├── 主要功能
│ ├── 构建魔改版 Frida (build)
│ │ ├── 支持指定版本或最新版本
│ │ ├── 自动生成随机5字符名称
│ │ ├── 自定义端口设置
│ │ └── 支持 arm 和 arm64 架构
│ ├── 列出可用 Frida 版本 (ls, list)
│ │ └── 从 GitHub API 获取版本信息
│ ├── 下载特定版本 Frida (download)
│ │ ├── 支持下载单个或所有模块
│ │ └── 可选的自动解压功能
│ ├── 列出可用 Frida 模块 (lm, list-modules)
│ ├── 检查并安装系统依赖 (setup)
│ │ ├── 自动检测缺失依赖
│ │ └── 使用包管理器安装依赖
│ └── 配置选项设置 (config)
│ ├── 设置 HTTP 代理
│ ├── 设置 Frida 服务器端口
│ └── 设置 Frida 魔改名称
│
├── 脚本结构
│ ├── 初始化配置 (initialize_config)
│ │ └── 读取和创建配置文件
│ ├── 参数解析 (parse_arguments)
│ │ └── 支持多种命令行选项
│ ├── 命令处理
│ │ ├── build: 构建魔改版 Frida
│ │ ├── patch: 修补指定的 Frida 模块
│ │ ├── setup: 设置环境
│ │ ├── config: 管理配置
│ │ ├── list: 列出版本
│ │ ├── download: 下载模块
│ │ └── list-modules: 列出模块
│ └── 主函数 (main)
│ └── 整合所有功能的入口点
│
├── 构建过程 (build_frida)
│ ├── 版本检查
│ │ └── 支持最新版本自动检测
│ ├── 环境准备
│ │ ├── 检查 Python 环境 (包括 Conda)
│ │ └── 检查 Golang 环境
│ ├── 下载 Frida (download_frida)
│ ├── 解包 deb 文件
│ ├── 修改文件
│ │ ├── 修改启动守护程序 (modify_launch_daemon)
│ │ │ └── 更新 plist 文件
│ │ ├── 修改 Debian 文件 (modify_debian_files)
│ │ │ ├── 更新 control 文件
│ │ │ ├── 更新 extrainst_ 文件
│ │ │ └── 更新 prerm 文件
│ │ └── 修改二进制文件 (modify_binary)
│ │ ├── 修改 frida-server
│ │ ├── 修改 frida-agent.dylib
│ │ └── 使用 hexreplace 工具
│ ├── 重新打包 deb 文件 (repackage_deb)
│ └── 修改 frida-tools (modify_frida_tools)
│ ├── 修改 Python 库文件
│ └── 更新 core.py 中的字符串
│
├── 辅助功能
│ ├── 日志输出 (log_info, log_success, log_warning, log_error)
│ │ └── 支持彩色输出
│ ├── 用户确认 (confirm_execution)
│ │ └── 可选的自动确认模式
│ ├── 依赖检查 (check_dependencies)
│ ├── 依赖安装 (install_dependencies)
│ ├── 配置管理 (set_config, unset_config, list_config)
│ └── Frida 版本和模块列表 (list_frida_versions, list_frida_modules)
│
├── 下载功能 (download_frida_module)
│ ├── 版本选择 (最新版或指定版本)
│ ├── 模块选择 (单个模块或全部模块)
│ ├── 下载过程
│ │ └── 支持 HTTP 代理
│ └── 解压处理
│ └── 可选的自动解压功能
│
└── 安全和权限
├── sudo 权限保持 (sudo_keep_alive)
└── 清理过程 (cleanup)git clone https://github.com/suifei/fridare.git
cd fridare./fridare.sh setupEste comando verificará e instalará as dependências necessárias.
./fridare.sh help O Fridare fornece vários comandos para atender às diferentes necessidades:
build : reembalar Fridals ou list : Liste as versões FRIDA disponíveisdownload : Baixe uma versão específica do Fridalm ou list-modules : Lista módulos Frida disponíveissetup : verifique e instale dependências do sistemaconfig : Defina opções de configuraçãohelp : mostre informações de ajuda./fridare.sh build -v 16.0.19 -p 8899 -yEste comando criará o FRIDA para a versão 16.0.19, definirá a porta para 8899 e confirmará automaticamente todos os prompts.
./fridare.sh ls./fridare.sh download -v 16.0.19 -m frida-server ./outputEste comando baixará o módulo Frida-Server da versão 16.0.19 para o diretório ./Output.
./fridare.sh download -latest -all ./output./fridare.sh lm./fridare.sh setupEste comando verifica e instala as dependências do sistema necessárias.
./fridare.sh config set proxy http://127.0.0.1:7890
./fridare.sh config set port 9999
./fridare.sh config set frida-name abcdeEsses comandos definem o nome Magic Proxy, Port e Frida, respectivamente.
./fridare.sh config ls./fridare.sh help buildEste comando mostrará o uso detalhado do comando de construção.
./fridare.sh build -latest -p 9999 -yEste comando será criado usando a versão mais recente do FRIDA, defina a porta como 9999 e confirmará automaticamente todos os prompts.
./fridare.sh download -latest -m frida-gadget --no-extract ./outputEste comando baixará a versão mais recente do módulo Frida-Gadget para o diretório ./Output, mas não será automaticamente descomprimido.
./fridare.sh config frida-toolsEste comando instalará ou atualizará o Frida-Tools.
scp ./dist/frida_16.3.3_iphoneos-arm_tcp.deb root@ < iPhone-IP > :/var/root/ssh root@ < iPhone-IP >
dpkg -i /var/root/frida_16.3.3_iphoneos-arm_tcp.debEsses exemplos abrangem os principais recursos e cenários de uso comuns de scripts. Pode ajudá -lo a começar rapidamente.
Para garantir a compatibilidade, instale a ferramenta Frida que corresponde à versão do servidor modificada:
pip install frida-tools==12.4.3Para usuários do Node.js:
npm install [email protected]Se o seu dispositivo for acessado via USB, você poderá se conectar ao Frida-Server local usando o seguinte comando:
frida -U -f < target-process > Se você não estiver usando o cabo USB, poderá usar o seguinte comando para se conectar ao Remote Frida-Server:
frida -H < iPhone-IP > :8899 -U
frida-trace -H < iPhone-IP > :8899 ...
frida-ps -H < iPhone-IP > :8899
frida-inject -H < iPhone-IP > :8899 ...Os princípios principais do projeto Fridare:
A idéia principal do Fridare é modificar o Frida-Server para dificultar a detecção. Isso é alcançado principalmente através dos seguintes aspectos:
Renomeie os arquivos do servidor: renomeie frida-server para um nome gerado aleatoriamente (como abcde ) para evitar a detecção simples de nomes.
Modifique a configuração de inicialização: Atualize o arquivo Plist Launchdaemons para usar o novo nome do servidor e a porta personalizada. Isso pode alterar o método de inicialização do servidor e a porta de escuta.
Modificação de arquivo binário: use a tecnologia de substituição binária para substituir a string "frida" no arquivo binário do servidor por uma string personalizada. Isso evita a detecção de Frida, digitalizando o binário.
O projeto usa a ferramenta DPKG-DEB para desempacotar e reembalar os arquivos Deb. Isso nos permite modificar o conteúdo do pacote, incluindo:
O script Fridare.sh automatiza todo o processo:
O script lida com os pacotes de arquitetura ARM e ARM64, garantindo a compatibilidade em diferentes dispositivos iOS.
Ao alterar o nome do servidor, a porta e a sequência interna, este projeto torna mais difícil detectar a existência do FRIDA por métodos convencionais. Isso é útil para usar o FRIDA em alguns aplicativos que podem detectar e bloquear proativamente o FRIDA.
Ao permitir que os usuários especifiquem versões e portas FRIDA, a ferramenta oferece grande flexibilidade para se adaptar a diferentes necessidades e ambientes.
Use o hexreplace para executar a substituição binária e modificar o arquivo binário sem recompilar o FRIDA. Esse método funciona, mas possui limitações, pois só pode substituir as seqüências de comprimentos fixos.
Envie perguntas e solicitações de puxar são bem -vindas. Para grandes mudanças, inicie um problema e discuta o que você deseja mudar.
MIT Licença
O Fridare é uma ferramenta de modificação projetada para personalizar o Frida-Server, especificamente para os dispositivos iOS com jailbroken. Ele permite que os usuários alterem os nomes e portas, aprimorando a segurança e a flexibilidade. Isso elimina muitos cenários de detecção de jailbreak para Frida. Changelog
Aqui está a versão em inglês do Changelog:
patch-tools para modificar o módulo Frida-toolsrender_markdown implementada para exibir formatação simples de marcação no terminalgenerate_random_name para criar nomes aleatórios de modificação de fridamove_file criada para manusear erros de "são identificadores" durante movimentos de arquivolist_frida_versions para renderizar descrições de versão formatada por marcaçãobuild_frida atualizada para apoiar a construção de arquivos de Deb localpatch_frida_tools e restore_frida_tools Funçõesmodify_frida_tools para modificações mais confiáveis de Frida-toolsdownload_frida_module com suporte para sistema operacional específico e arquiteturashow_main_usage e outras funções de instrução de uso para refletir novos recursosparse_arguments ajustada para acomodar o novo comando patch-toolsFRIDA_NAMEfridare.sh , integrando todas as funções e fornecendo uma interface de linha de comando mais completabuild , ls , download , lm , setup , config e helpfrida:rpc Recursos Modificaçãocore.py e modifica o arquivo _frida.abi3.soautoinstall.sh para implantação automática de plugins FRIDA.Makefile para simplificar o processo de construção e implantação do projeto.Configure login SSH sem senha para ISSH
# Generate keygen, skip if already generated
ssh-keygen -t rsa -b 4096 -C " <EMAIL> "
# Configure iPhone IP, can be skipped if using USB connection
issh ip set < iPhone-IP >
# Copy public key to /var/root on the phone, requires root password alpine
issh scp ~ /.ssh/id_rsa.pub
# Add public key to authorized_keys file on remote server
issh run " mkdir -p ~/.ssh && cat /var/root/id_rsa.pub >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys && chmod 700 ~/.ssh " fridare.sh - Frida Modification Script
│
├── Main Functions
│ ├── Build Modified Frida (build)
│ │ ├── Support for specified version or latest version
│ │ ├── Auto-generate random 5-character name
│ │ ├── Custom port setting
│ │ └── Support for arm and arm64 architectures
│ ├── List Available Frida Versions (ls, list)
│ │ └── Fetch version info from GitHub API
│ ├── Download Specific Frida Version (download)
│ │ ├── Support for downloading single or all modules
│ │ └── Optional auto-extraction feature
│ ├── List Available Frida Modules (lm, list-modules)
│ ├── Check and Install System Dependencies (setup)
│ │ ├── Auto-detect missing dependencies
│ │ └── Install dependencies using package manager
│ └── Configure Options (config)
│ ├── Set HTTP proxy
│ ├── Set Frida server port
│ └── Set Frida modification name
│
├── Script Structure
│ ├── Initialize Configuration (initialize_config)
│ │ └── Read and create configuration file
│ ├── Parse Arguments (parse_arguments)
│ │ └── Support various command-line options
│ ├── Command Processing
│ │ ├── build: Build modified Frida
│ │ ├── setup: Set up environment
│ │ ├── config: Manage configuration
│ │ ├── list: List versions
│ │ ├── download: Download modules
│ │ └── list-modules: List modules
│ └── Main Function (main)
│ └── Entry point integrating all functionalities
│
├── Build Process (build_frida)
│ ├── Version Check
│ │ └── Support for latest version auto-detection
│ ├── Environment Preparation
│ │ ├── Check Python environment (including Conda)
│ │ └── Check Golang environment
│ ├── Download Frida (download_frida)
│ ├── Unpack deb File
│ ├── Modify Files
│ │ ├── Modify Launch Daemon (modify_launch_daemon)
│ │ │ └── Update plist file
│ │ ├── Modify Debian Files (modify_debian_files)
│ │ │ ├── Update control file
│ │ │ ├── Update extrainst_ file
│ │ │ └── Update prerm file
│ │ └── Modify Binary Files (modify_binary)
│ │ ├── Modify frida-server
│ │ ├── Modify frida-agent.dylib
│ │ └── Use hexreplace tool
│ ├── Repackage deb File (repackage_deb)
│ └── Modify frida-tools (modify_frida_tools)
│ ├── Modify Python library files
│ └── Update strings in core.py
│
├── Auxiliary Functions
│ ├── Log Output (log_info, log_success, log_warning, log_error)
│ │ └── Support for colored output
│ ├── User Confirmation (confirm_execution)
│ │ └── Optional auto-confirm mode
│ ├── Dependency Check (check_dependencies)
│ ├── Dependency Installation (install_dependencies)
│ ├── Configuration Management (set_config, unset_config, list_config)
│ └── Frida Version and Module Lists (list_frida_versions, list_frida_modules)
│
├── Download Functionality (download_frida_module)
│ ├── Version Selection (latest or specified version)
│ ├── Module Selection (single module or all modules)
│ ├── Download Process
│ │ └── Support for HTTP proxy
│ └── Extraction Processing
│ └── Optional auto-extraction feature
│
└── Security and Permissions
├── Maintain sudo Privileges (sudo_keep_alive)
└── Cleanup Process (cleanup)git clone https://github.com/suifei/fridare.git
cd fridare./fridare.sh setupEste comando verificará e instalará as dependências necessárias.
./fridare.sh help O Fridare fornece vários comandos para atender às diferentes necessidades:
build : reembalar Fridals ou list : Liste as versões FRIDA disponíveisdownload : Baixe uma versão específica do Fridalm ou list-modules : Lista módulos Frida disponíveissetup : verifique e instale dependências do sistemaconfig : Defina opções de configuraçãohelp : exibir informações de ajuda./fridare.sh build -v 16.0.19 -p 8899 -yEste comando criará o FRIDA versão 16.0.19, definirá a porta como 8899 e confirmará automaticamente todos os avisos.
./fridare.sh ls./fridare.sh download -v 16.0.19 -m frida-server ./outputEste comando baixará o módulo Frida-Server da versão 16.0.19 para o diretório ./Output.
./fridare.sh download -latest -all ./output./fridare.sh lm./fridare.sh setupEste comando verificará e instalará as dependências do sistema necessárias.
./fridare.sh config set proxy http://127.0.0.1:7890
./fridare.sh config set port 9999
./fridare.sh config set frida-name abcdeEsses comandos definem o nome de modificação de proxy, porta e FRIDA, respectivamente.
./fridare.sh config ls./fridare.sh help buildEste comando exibirá uso detalhado para o comando de compilação.
./fridare.sh build -latest -p 9999 -yEste comando será construído usando a versão mais recente do FRIDA, definirá a porta como 9999 e confirmará automaticamente todos os prompts.
./fridare.sh download -latest -m frida-gadget --no-extract ./outputEste comando baixará a versão mais recente do módulo Frida-Gadget para o diretório ./Output, mas não o extraímos automaticamente.
./fridare.sh config frida-toolsEste comando instalará ou atualizará o Frida-Tools.
scp ./dist/frida_16.3.3_iphoneos-arm_tcp.deb root@ < iPhone-IP > :/var/root/ssh root@ < iPhone-IP >
dpkg -i /var/root/frida_16.3.3_iphoneos-arm_tcp.debEsses exemplos abrangem as principais funções e cenários de uso comum do script. Eles podem ajudá -lo a começar rapidamente a usá -lo.
Para garantir a compatibilidade, instale as ferramentas FRIDA que correspondam à versão modificada do servidor:
pip install frida-tools==12.4.3Para usuários do Node.js:
npm install [email protected]Se o seu dispositivo for acessado via USB, você poderá usar o seguinte comando para se conectar ao Frida-Server local:
frida -U -f < target-process > Se não estiver usando um cabo de dados USB, você pode usar os seguintes comandos para se conectar ao Remote Frida-Server:
frida -H < iPhone-IP > :8899 -U
frida-trace -H < iPhone-IP > :8899 ...
frida-ps -H < iPhone-IP > :8899
frida-inject -H < iPhone-IP > :8899 ...Princípios principais do projeto Fridare:
A idéia principal do Fridare é modificar o Frida-Server para dificultar a detecção. Isso é alcançado principalmente através dos seguintes aspectos:
Renomear o arquivo do servidor: renomeie frida-server para um nome gerado aleatoriamente (por exemplo, abcde ), que evita a detecção simples de nomes.
Modificando Configuração de inicialização: Atualize o arquivo Plist Launchdaemons para usar o novo nome do servidor e a porta personalizada. Isso muda a maneira como o servidor é iniciado e a porta que ele ouve.
Modificação de arquivo binário: use técnicas de substituição binária para substituir strings relacionados "Frida" no arquivo binário do servidor por seqüências personalizadas. Isso pode evitar a detecção de Frida, digitalizando o arquivo binário.
O projeto usa a ferramenta DPKG-DEB para descompactar e reembalar arquivos Deb. Isso nos permite modificar o conteúdo do pacote, incluindo:
O script Fridare.sh automatiza todo o processo:
O script lida com pacotes para arquiteturas ARM e ARM64, garantindo a compatibilidade em diferentes dispositivos iOS.
Ao alterar o nome do servidor, a porta e as seqüências internas, esse projeto torna mais difícil detectar a presença de Frida através de métodos convencionais. Isso é particularmente útil para usar o FRIDA em aplicativos que podem detectar e bloquear ativamente o FRIDA.
Ao permitir que os usuários especifiquem a versão e a porta do FRIDA, a ferramenta oferece grande flexibilidade para se adaptar a diferentes necessidades e ambientes.
Usando o hexreplace para executar substituições binárias, modificando arquivos binários sem recompilar o FRIDA. Embora eficaz, esse método possui limitações, pois só pode substituir as seqüências de comprimento fixo.
Questões e solicitações de puxar são bem -vindas. Para grandes mudanças, abra um problema primeiro para discutir o que você gostaria de mudar.
MIT Licença