Communitygithub.com

Análise de Segurança de iOS com Objection

Use esta skill para realizar avaliações de segurança em tempo de execução de aplicativos iOS, incluindo inspeção de keychain, sistema de arquivos, desvio de proteções e análise de comportamento.

O que é Análise de Segurança de iOS com Objection?

Esta skill fornece um guia completo para usar o Objection, uma ferramenta de exploração móvel baseada no Frida, em testes de segurança autorizados de aplicativos iOS. Ela é útil para engenheiros de segurança e desenvolvedores que precisam inspecionar armazenamento de dados (keychain, NSUserDefaults, SQLite), avaliar a segurança de rede (bypass de SSL pinning), analisar autenticação e autorização (hooking de métodos Objective-C), verificar proteções binárias (desabilitar jailbreak detection, busca por strings sensíveis na memória) e revisar interações com a plataforma (URL schemes, pasteboard). A skill suporta dispositivos com jailbreak (via Frida server) e sem jailbreak (usando Frida Gadget injetado no IPA). O workflow é prático e baseado em comandos REPL do Objection, com exemplos de código e considerações sobre armadilhas comuns, como detecção de Frida e escopo de acesso ao keychain.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mukul975/Anthropic-Cybersecurity-Skills/tree/main/skills/analyzing-ios-app-security-with-objection

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que Análise de Segurança de iOS com Objection faz?

Quando Usar

Use esta skill quando:

  • Realizando avaliações de segurança em tempo de execução de aplicativos iOS durante testes de penetração autorizados
  • Inspecionando keychain, sistema de arquivos e memória do iOS em busca de exposição de dados sensíveis
  • Desviando de controles de segurança do lado do cliente (SSL pinning, detecção de jailbreak) durante testes de segurança
  • Avaliando o comportamento do aplicativo iOS em tempo de execução sem acesso ao código-fonte

Não use esta skill em dispositivos de produção sem autorização explícita – Objection modifica o comportamento em tempo de execução do aplicativo e pode acionar monitoramento de segurança.

Pré-requisitos

  • Python 3.10+ com pip
  • Objection instalado: pip install objection
  • Frida instalado: pip install frida-tools
  • Dispositivo iOS alvo (com jailbreak e servidor Frida, ou sem jailbreak com IPA repackaged)
  • Para sem jailbreak: objection patchipa para injetar o Frida gadget no IPA
  • macOS recomendado para testes iOS (Xcode, ideviceinstaller)
  • Conexão USB com o dispositivo alvo ou servidor Frida em rede

Fluxo de Trabalho

Passo 1: Preparar o Ambiente de Teste

Para dispositivos com jailbreak:

# Instalar o servidor Frida no dispositivo via Cydia/Sileo
# SSH para o dispositivo e iniciar o servidor Frida
ssh root@<device_ip> "/usr/sbin/frida-server -D"

# Verificar conectividade com Frida
frida-ps -U  # Listar processos no dispositivo conectado via USB

Para dispositivos sem jailbreak (teste autorizado):

# Aplicar patch no IPA com Frida gadget
objection patchipa --source target.ipa --codesign-signature "Apple Development: [email protected]"

# Instalar o IPA com patch
ideviceinstaller -i target-patched.ipa

Passo 2: Anexar Objection ao Aplicativo Alvo

# Anexar a um aplicativo em execução pelo bundle ID
objection --gadget "com.target.app" explore

# Ou iniciar o aplicativo do zero
objection --gadget "com.target.app" explore --startup-command "ios hooking list classes"

Uma vez anexado, o Objection fornece um REPL interativo para exploração em tempo de execução.

Passo 3: Avaliar Segurança do Armazenamento de Dados (MASVS-STORAGE)

# Despejar itens do iOS Keychain acessíveis ao aplicativo
ios keychain dump

# Listar arquivos no sandbox do aplicativo
ios plist cat Info.plist
env  # Mostrar caminhos do ambiente do aplicativo

# Inspecionar NSUserDefaults em busca de dados sensíveis
ios nsuserdefaults get

# Listar bancos de dados SQLite
sqlite connect app_data.db
sqlite execute query "SELECT * FROM credentials"

# Verificar dados sensíveis na área de transferência
ios pasteboard monitor

Passo 4: Avaliar Segurança de Rede (MASVS-NETWORK)

# Desabilitar fixação de certificados SSL/TLS
ios sslpinning disable

# Verificar se o bypass foi bem-sucedido observando o tráfego no Burp Suite
# Monitorar chamadas de métodos de classes relacionadas à rede
ios hooking watch class NSURLSession
ios hooking watch class NSURLConnection

Passo 5: Inspecionar Autenticação e Autorização (MASVS-AUTH)

# Listar todas as classes Objective-C
ios hooking list classes

# Pesquisar classes relacionadas a autenticação
ios hooking search classes Auth
ios hooking search classes Login
ios hooking search classes Token

# Hook em métodos de autenticação para observar parâmetros
ios hooking watch method "+[AuthManager validateToken:]" --dump-args --dump-return

# Monitorar chamadas de autenticação biométrica
ios hooking watch class LAContext

Passo 6: Avaliar Proteções Binárias (MASVS-RESILIENCE)

# Verificar implementação de detecção de jailbreak
ios jailbreak disable

# Simular bypass de detecção de jailbreak
ios jailbreak simulate

# Listar frameworks e bibliotecas carregados
memory list modules

# Pesquisar strings sensíveis na memória
memory search "password" --string
memory search "api_key" --string
memory search "Bearer" --string

# Despejar regiões específicas de memória
memory dump all dump_output/

Passo 7: Revisar Interação com a Plataforma (MASVS-PLATFORM)

# Listar esquemas de URL registrados pelo aplicativo
ios info binary
ios bundles list_frameworks

# Hook em manipuladores de esquemas de URL
ios hooking watch method "-[AppDelegate application:openURL:options:]" --dump-args

# Monitorar acesso à área de transferência
ios pasteboard monitor

# Verificar restrições de teclado personalizado
ios hooking search classes UITextField

Conceitos-chave

TermoDefinição
ObjectionKit de ferramentas de exploração móvel em tempo de execução construído sobre o Frida que fornece scripts pré-construídos para tarefas comuns de teste de segurança
Frida GadgetBiblioteca compartilhada injetada no processo do aplicativo para permitir instrumentação com Frida sem jailbreak
KeychainSistema de armazenamento seguro de credenciais do iOS; Objection pode despejar itens acessíveis ao grupo de acesso ao keychain do aplicativo alvo
Bypass de SSL PinningModificação em tempo de execução da lógica de validação de certificados para permitir a interceptação de tráfego HTTPS por proxy
Hooking de MétodosInterceptação de chamadas de métodos Objective-C/Swift em tempo de execução para observar argumentos, valores de retorno e modificar comportamento

Ferramentas e Sistemas

  • Objection: Kit de ferramentas de exploração de segurança móvel de alto nível baseado em Frida com comandos pré-construídos
  • Frida: Framework de instrumentação dinâmica que permite injeção de JavaScript em processos nativos de aplicativos
  • Frida-tools: Utilitários de linha de comando para Frida, incluindo frida-ps, frida-trace e frida-discover
  • ideviceinstaller: Ferramenta multiplataforma para instalar/gerenciar aplicativos iOS via USB
  • Burp Suite: Proxy HTTP para interceptar tráfego após o bypass de SSL pinning

Armadilhas Comuns

  • O aplicativo trava ao anexar: Alguns aplicativos implementam detecção de Frida. Use --startup-command para hook em verificações anti-Frida no início do ciclo de vida do aplicativo.
  • Escopo de acesso ao Keychain: O Objection só pode despejar itens do keychain dentro do grupo de acesso do aplicativo. Itens do keychain do sistema exigem ferramentas separadas de nível de jailbreak.
  • Mangling de nomes Swift: Nomes de métodos Swift são modificados em tempo de execução. Use ios hooking list classes com grep para encontrar nomes demangled.
  • Alterações não persistentes: Todas as modificações do Objection são apenas em tempo de execução e são redefinidas ao reiniciar o aplicativo. Documente as descobertas imediatamente.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

abusing-dpapi-for-credential-access

Extract and decrypt Windows DPAPI-protected secrets (Credential Manager, browser logins/cookies, Wi-Fi credentials, KeePass keys) online or offline using SharpDPAPI, SharpChrome, Mimikatz, or Impacket

abusing-shadow-credentials-for-privesc

Take over Active Directory accounts by writing attacker-controlled public keys to msDS-KeyCredentialLink (Shadow Credentials) with pyWhisker, Whisker, or Certipy, then authenticate via PKINIT to recover the target

achieving-cmmc-level-2-compliance

>-

acquiring-disk-image-with-dd-and-dcfldd

Create forensically sound bit-for-bit disk images with dd or dcfldd on a Linux forensic workstation, preserving evidence integrity through hash verification (MD5/SHA) during acquisition. Use when imaging a suspect drive, USB device, or memory card for investigation, preserving volatile disk evidence during incident response, or producing a verified copy for legal or law-enforcement proceedings before any destructive analysis.

analyzing-active-directory-acl-abuse

Detect dangerous ACL misconfigurations in Active Directory using ldap3

analyzing-android-malware-with-apktool

Perform static analysis of Android APK malware using apktool for resource decompilation, jadx for Java source recovery, and androguard for manifest inspection, dangerous permission-combination detection, and identification of obfuscated code, dynamic code loading, and reflection-based API calls. Use to statically triage a suspicious APK without executing it or to build mobile malware detection rules.

analyzing-api-gateway-access-logs

Parses API Gateway access logs (AWS API Gateway, Kong, Nginx) to detect

analyzing-apt-group-with-mitre-navigator

Query ATT&CK data with attackcti, mitreattack-python, and stix2, then build MITRE ATT&CK Navigator layers and multi-layer heatmap overlays mapping one or more APT groups

analyzing-azure-activity-logs-for-threats

Queries Azure Monitor activity logs and sign-in logs via azure-monitor-query

analyzing-bootkit-and-rootkit-samples

Analyzes bootkit and advanced rootkit malware infecting the Master

analyzing-browser-forensics-with-hindsight

Parse Chromium-based browser databases with Hindsight to extract and correlate browsing history, downloads, cookies, cached content, autofill data, saved passwords, and extensions from Chrome, Edge, Brave, Opera, and Vivaldi into a unified timeline (XLSX, JSON, or SQLite output). Use during incident response, insider-threat investigations, or criminal cases when you need to reconstruct a user

analyzing-campaign-attribution-evidence

Systematically evaluate cyber-campaign evidence to attribute an operation to a threat actor, using the Diamond Model and Analysis of Competing Hypotheses (ACH) to weigh infrastructure overlaps, TTP consistency, malware code similarity, and timing/language artifacts into confidence-weighted attribution assessments. Use when an incident investigation needs a defensible attribution confidence level.

analyzing-certificate-transparency-for-phishing

Monitor Certificate Transparency logs using crt.sh and Certstream to

analyzing-cloud-storage-access-patterns

Detect abnormal access in AWS S3, GCS, and Azure Blob Storage by analyzing CloudTrail Data Events, GCS audit logs, and Azure Storage Analytics for after-hours bulk downloads, new-IP access, and API-call spikes (e.g. GetObject) via statistical baselines and time-series anomaly detection. Use when investigating suspected cloud data exfiltration or building related detection rules.

analyzing-cobalt-strike-beacon-configuration

Extract and analyze Cobalt Strike beacon configuration from PE files

analyzing-cobaltstrike-malleable-c2-profiles

Parse and analyze Cobalt Strike Malleable C2 profiles with dissect.cobaltstrike (profiles and beacon-payload configs) and pyMalleableC2 (AST parsing) to extract HTTP/DNS transforms, URIs, headers, sleep/jitter, and injection behavior, then generate network detection signatures. Use when reverse-engineering a captured malleable profile or building detections against Cobalt Strike Beacon traffic.

analyzing-command-and-control-communication

Analyzes malware C2 communication over HTTP, HTTPS, DNS, and custom

analyzing-cyber-kill-chain

Analyzes intrusion activity against the Lockheed Martin Cyber Kill Chain

analyzing-disk-image-with-autopsy

Perform comprehensive forensic analysis of raw (dd), E01, or AFF disk images with Autopsy and The Sleuth Kit, recovering deleted files, examining metadata and embedded artifacts, keyword searching, and building investigation timelines with visual reports. Use for structured analysis of a forensic disk image or when stakeholders need visual reports from evidence.

analyzing-dns-logs-for-exfiltration

Analyzes DNS query logs to detect data exfiltration via DNS tunneling,

Habilidades Relacionadas