Primeiras Interações com iOS
Ferramentas para interagir com iOS
Existem várias ferramentas para interagir com o iOS, este é um tópico bem genérico na verdade. O que quero aqui é demonstrar como fazer as interações mais fundamentais, que são necessárias por exemplo em um processo de resolução de problemas: quando por exemplo o USB não estiver funcionando direito ou algo do gênero. Para além disso é possível interagir com o dispositivo via SSH, pela rede mesmo.
Setup SSH
É bem simples, primeiro pesquise no seu package manager (Cydia, Sileo ou Zebra) pelo pacote "open-ssh". Logo em seguida instale-o (no meu caso pediu para que eu configurasse uma senha) e pronto, agora basta ir nas configurações de rede, descobrir seu IP e acessar o shell do dispositivo via SSH. Se não pedir para configurar uma senha logo de cara, é provável que já exista um usuário e senha padrão.
libimobiledevice
O libimobiledevice é uma biblioteca de softwares cross-platform com várias ferramentas que tem o objetivo de se comunicar com serviços no iOS usando protocolos nativos. Apenas utilizar a biblioteca para se comunicar com o iOS não requer jailbreak.
Para instalá-la verifique a documentação oficial aqui.
Quanto as ferramentas de linha de comando, vou listar as que me chamaram mais a atenção ou que usei com mais frequência, todas as demais estão disponíveis na documentação oficial:
| Ferramenta | Descrição |
|---|---|
| idevicebackup2 | Cria ou restaura backups de dispositivos com iOS 4 ou superior |
| idevicecrashreport | Recupera reportes de crash do dispositivo |
| ideviceinfo | Exibe informações sobre o dispositivo conectado |
| idevicename | Exibe ou configura o nome do dispositivo |
| idevicesyslog | Encaminhar o syslog de um dispositivo conectado |
| ideviceinstaller | Gerencia, instala e desinstala aplicativos |
Veja algumas das formas de usar esses utilitários de linha de comando abaixo:
Clique nas abas
- idevicesyslog
- idevicecrashreport
- ideviceinfo
Transmita os logs do sistema em tempo real para monitoramento ou depuração do comportamento do app:
idevicesyslog
Baixe relatórios de crash para uma análise detalhada de falhas do app.
Baixar uma cópia de todos os relatórios de crash:
idevicecrashreport --keep ~/Reports/
Esse comando busca informações detalhadas sobre o dispositivo iOS, como detalhes de hardware e a versão do iOS.
ideviceinfo
- ideviceinstaller
- idevicebackup2
Gerencie apps no dispositivo iOS usando os seguintes comandos.
Listar apps instalados:
ideviceinstaller --list-apps
Instalar um app, a partir de um IPA:
ideviceinstaller --install ./DVIA-v2.ipa
Desinstalar um app:
ideviceinstaller --uninstall com.highaltitudehacks.DVIAswiftv2
Use essa ferramenta para fazer backup ou restaurar o seu dispositivo iOS.
Criar um backup completo, com criptografia ativada:
idevicebackup2 encryption on "[SENHA]"
idevicebackup2 backup --full ~/Backups/
NOTA: fazer backup de um dispositivo Corellium não é suportado, mas restaurar um backup nele é.
Restaurar um backup:
idevicebackup2 restore \
--system \
--settings \
--password "[SENHA]" \
~/Backups/
Ver informações do backup:
idevicebackup2 info ~/Backups/