mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-19 01:24:50 +00:00
146 lines
10 KiB
Markdown
146 lines
10 KiB
Markdown
# Lista de Verificação de Pentesting iOS
|
|
|
|
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
Use [**Trickest**](https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks) para construir e **automatizar fluxos de trabalho** facilmente com as ferramentas comunitárias mais avançadas do mundo.\
|
|
Acesse hoje:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprenda hacking AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Outras formas de apoiar o HackTricks:
|
|
|
|
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
|
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Compartilhe seus truques de hacking enviando PRs para os repositórios** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
**Try Hard Security Group**
|
|
|
|
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
|
|
|
{% embed url="https://discord.gg/tryhardsecurity" %}
|
|
|
|
***
|
|
|
|
### Preparação
|
|
|
|
* [ ] Leia [**Noções Básicas do iOS**](ios-pentesting/ios-basics.md)
|
|
* [ ] Prepare seu ambiente lendo [**Ambiente de Teste iOS**](ios-pentesting/ios-testing-environment.md)
|
|
* [ ] Leia todas as seções de [**Análise Inicial do iOS**](ios-pentesting/#initial-analysis) para aprender ações comuns para pentestear um aplicativo iOS
|
|
|
|
### Armazenamento de Dados
|
|
|
|
* [ ] Os [**arquivos Plist**](ios-pentesting/#plist) podem ser usados para armazenar informações sensíveis.
|
|
* [ ] O [**Core Data**](ios-pentesting/#core-data) (banco de dados SQLite) pode armazenar informações sensíveis.
|
|
* [ ] Os [**Bancos de Dados Yap**](ios-pentesting/#yapdatabase) (banco de dados SQLite) podem armazenar informações sensíveis.
|
|
* [ ] [**Firebase**](ios-pentesting/#firebase-real-time-databases) com configuração incorreta.
|
|
* [ ] Os [**bancos de dados Realm**](ios-pentesting/#realm-databases) podem armazenar informações sensíveis.
|
|
* [ ] Os [**bancos de dados Couchbase Lite**](ios-pentesting/#couchbase-lite-databases) podem armazenar informações sensíveis.
|
|
* [ ] Os [**cookies binários**](ios-pentesting/#cookies) podem armazenar informações sensíveis.
|
|
* [ ] Os dados de [**cache**](ios-pentesting/#cache) podem armazenar informações sensíveis.
|
|
* [ ] Os [**instantâneos automáticos**](ios-pentesting/#snapshots) podem salvar informações visuais sensíveis.
|
|
* [ ] O [**Keychain**](ios-pentesting/#keychain) é geralmente usado para armazenar informações sensíveis que podem ser deixadas ao revender o telefone.
|
|
* [ ] Em resumo, apenas **verifique se há informações sensíveis salvas pelo aplicativo no sistema de arquivos**
|
|
|
|
### Teclados
|
|
|
|
* [ ] O aplicativo permite o uso de [**teclados personalizados**](ios-pentesting/#custom-keyboards-keyboard-cache)?
|
|
* [ ] Verifique se informações sensíveis são salvas nos [**arquivos de cache dos teclados**](ios-pentesting/#custom-keyboards-keyboard-cache)
|
|
|
|
### **Logs**
|
|
|
|
* [ ] Verifique se [**informações sensíveis estão sendo registradas**](ios-pentesting/#logs)
|
|
|
|
### Backups
|
|
|
|
* [ ] Os [**backups**](ios-pentesting/#backups) podem ser usados para **acessar as informações sensíveis** salvas no sistema de arquivos (verifique o ponto inicial desta lista de verificação)
|
|
* [ ] Além disso, os [**backups**](ios-pentesting/#backups) podem ser usados para **modificar algumas configurações do aplicativo**, então **restaure** o backup no telefone e, como a **configuração modificada** é **carregada**, alguma (funcionalidade de segurança) pode ser **burlada**
|
|
|
|
### **Memória do Aplicativo**
|
|
|
|
* [ ] Verifique se há informações sensíveis dentro da [**memória do aplicativo**](ios-pentesting/#testing-memory-for-sensitive-data)
|
|
|
|
### **Criptografia Quebrada**
|
|
|
|
* [ ] Verifique se você pode encontrar [**senhas usadas para criptografia**](ios-pentesting/#broken-cryptography)
|
|
* [ ] Verifique o uso de [**algoritmos obsoletos/fracos**](ios-pentesting/#broken-cryptography) para enviar/armazenar dados sensíveis
|
|
* [ ] [**Intercepte e monitore funções de criptografia**](ios-pentesting/#broken-cryptography)
|
|
|
|
### **Autenticação Local**
|
|
|
|
* [ ] Se uma [**autenticação local**](ios-pentesting/#local-authentication) é usada no aplicativo, verifique como a autenticação está funcionando.
|
|
* [ ] Se estiver usando o [**Framework de Autenticação Local**](ios-pentesting/#local-authentication-framework), ela pode ser facilmente burlada
|
|
* [ ] Se estiver usando uma [**função que pode ser burlada dinamicamente**](ios-pentesting/#local-authentication-using-keychain), você pode criar um script frida personalizado
|
|
|
|
### Exposição de Funcionalidade Sensível por IPC
|
|
|
|
* [**Manipuladores de URI Personalizados / Deep Links / Esquemas Personalizados**](ios-pentesting/#custom-uri-handlers-deeplinks-custom-schemes)
|
|
* [ ] Verifique se o aplicativo está **registrando algum protocolo/esquema**
|
|
* [ ] Verifique se o aplicativo está **registrando para usar** algum protocolo/esquema
|
|
* [ ] Verifique se o aplicativo **espera receber algum tipo de informação sensível** do esquema personalizado que pode ser **interceptado** por outro aplicativo registrando o mesmo esquema
|
|
* [ ] Verifique se o aplicativo **não está verificando e sanitizando** a entrada dos usuários via esquema personalizado e alguma **vulnerabilidade pode ser explorada**
|
|
* [ ] Verifique se o aplicativo **expõe alguma ação sensível** que pode ser chamada de qualquer lugar via esquema personalizado
|
|
* [**Links Universais**](ios-pentesting/#universal-links)
|
|
* [ ] Verifique se o aplicativo está **registrando algum protocolo/esquema universal**
|
|
* [ ] Verifique o arquivo `apple-app-site-association`
|
|
* [ ] Verifique se o aplicativo **não está verificando e sanitizando** a entrada dos usuários via esquema personalizado e alguma **vulnerabilidade pode ser explorada**
|
|
* [ ] Verifique se o aplicativo **expõe alguma ação sensível** que pode ser chamada de qualquer lugar via esquema personalizado
|
|
* [**Compartilhamento de UIActivity**](ios-pentesting/ios-uiactivity-sharing.md)
|
|
* [ ] Verifique se o aplicativo pode receber UIActivities e se é possível explorar alguma vulnerabilidade com uma atividade especialmente criada
|
|
* [**UIPasteboard**](ios-pentesting/ios-uipasteboard.md)
|
|
* [ ] Verifique se o aplicativo está **copiando algo para a área de transferência geral**
|
|
* [ ] Verifique se o aplicativo está **usando os dados da área de transferência geral para algo**
|
|
* [ ] Monitore a área de transferência para ver se algum **dado sensível é copiado**
|
|
* [**Extensões de Aplicativos**](ios-pentesting/ios-app-extensions.md)
|
|
* [ ] O aplicativo está **usando alguma extensão**?
|
|
* [**WebViews**](ios-pentesting/ios-webviews.md)
|
|
* [ ] Verifique que tipo de webviews está sendo usado
|
|
* [ ] Verifique o status de **`javaScriptEnabled`**, **`JavaScriptCanOpenWindowsAutomatically`**, **`hasOnlySecureContent`**
|
|
* [ ] Verifique se a webview pode **acessar arquivos locais** com o protocolo **file://** **(**`allowFileAccessFromFileURLs`, `allowUniversalAccessFromFileURLs`)
|
|
* [ ] Verifique se o Javascript pode acessar **métodos nativos** (`JSContext`, `postMessage`)
|
|
### Comunicação de Rede
|
|
|
|
* [ ] Realizar um [**MitM na comunicação**](ios-pentesting/#network-communication) e procurar por vulnerabilidades web.
|
|
* [ ] Verificar se o [**hostname do certificado**](ios-pentesting/#hostname-check) é verificado.
|
|
* [ ] Verificar/Burlar o [**Certificate Pinning**](ios-pentesting/#certificate-pinning)
|
|
|
|
### **Diversos**
|
|
|
|
* [ ] Verificar os mecanismos de [**atualização/patching automático**](ios-pentesting/#hot-patching-enforced-updateing)
|
|
* [ ] Verificar a presença de [**bibliotecas de terceiros maliciosas**](ios-pentesting/#third-parties)
|
|
|
|
**Try Hard Security Group**
|
|
|
|
<figure><img src="../.gitbook/assets/telegram-cloud-document-1-5159108904864449420.jpg" alt=""><figcaption></figcaption></figure>
|
|
|
|
{% embed url="https://discord.gg/tryhardsecurity" %}
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprenda hacking na AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Outras formas de apoiar o HackTricks:
|
|
|
|
* Se você deseja ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
|
* Adquira o [**swag oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubra [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nossa coleção exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Junte-se ao** 💬 [**grupo Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo telegram**](https://t.me/peass) ou **siga-nos** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Compartilhe seus truques de hacking enviando PRs para os repositórios** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
<figure><img src="../.gitbook/assets/image (3) (1) (1) (1) (1) (1).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
\
|
|
Use [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) para construir e **automatizar fluxos de trabalho** facilmente com as ferramentas comunitárias mais avançadas do mundo.\
|
|
Tenha Acesso Hoje:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|