MASTG-TECH-0136: Recuperação de Arquivos PrivacyInfo.xcprivacy
Aplicativos iOS podem incluir arquivos de manifesto de privacidade que fornecem informações sobre as práticas de privacidade do aplicativo, bem como seus componentes (ex: Frameworks, Plugins, etc.). Esses arquivos geralmente são nomeados como PrivacyInfo.xcprivacy e são usados para declarar as práticas de coleta de dados do aplicativo, incluindo quaisquer bibliotecas ou frameworks de terceiros que possam coletar dados do usuário.
Para recuperar esses arquivos, você pode usar o seguinte comando no terminal:
find . -name "PrivacyInfo.xcprivacy"
Por exemplo, supondo que você tenha um aplicativo de mídia social iOS chamado SocialApp.ipa e o tenha extraído usando Obtenção e Extração de Apps, você pode executar os seguintes comandos a partir da pasta Payload/ para encontrar todos os arquivos PrivacyInfo.xcprivacy dentro do pacote do aplicativo (truncado e reordenado para legibilidade):
find . -name "PrivacyInfo.xcprivacy"
./SocialApp.app/PrivacyInfo.xcprivacy
./SocialApp.app/FirebaseCore_Privacy.bundle/PrivacyInfo.xcprivacy
./SocialApp.app/LetterPrivacyInfo.bundle/PrivacyInfo.xcprivacy
./SocialApp.app/CoreMain.bundle/PrivacyInfo.xcprivacy
...
./SocialApp.app/PlugIns/WidgetExtension.appex/PrivacyInfo.xcprivacy
./SocialApp.app/PlugIns/WidgetExtension.appex/Deep_Privacy.bundle/PrivacyInfo.xcprivacy
...
./SocialApp.app/Extensions/SocialAppAssetExtension.appex/PrivacyInfo.xcprivacy
...
./SocialApp.app/Frameworks/OXSDK_1.framework/PrivacyInfo.xcprivacy
./SocialApp.app/Frameworks/SpotifyLogin.framework/PrivacyInfo.xcprivacy
...
Esta saída mostra como o SocialApp possui múltiplos arquivos PrivacyInfo.xcprivacy, incluindo um para o aplicativo principal (./SocialApp.app/PrivacyInfo.xcprivacy) e vários outros para seus .bundles, PlugIns, Extensions e Frameworks (e quaisquer outros .bundles aninhados).
Vamos dar uma olhada no manifesto de privacidade principal, ./SocialApp.app/PrivacyInfo.xcprivacy (truncado para legibilidade):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
<string>1C8F.1</string>
...
</array>
<key>NSPrivacyCollectedDataTypes</key>
<array>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeName</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<true/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAppFunctionality</string>
<string>NSPrivacyCollectedDataTypePurposeOther</string>
</array>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
</dict>
...
</array>
<key>NSPrivacyTracking</key>
<true/>
<key>NSPrivacyTrackingDomains</key>
<array>
<string>trk-v2.socialapp.com</string>
<string>trk-v2.socialapp.us</string>
...
</array>
</dict>
</plist>
Consulte Converter Arquivos Plist para JSON para converter este arquivo para JSON e Análise de Arquivos PrivacyInfo.xcprivacy para mais informações sobre como analisar o conteúdo dos arquivos PrivacyInfo.xcprivacy.