mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-30 08:30:57 +00:00
78 lines
5.7 KiB
Markdown
78 lines
5.7 KiB
Markdown
# iOS UIActivity-deling
|
|
|
|
<details>
|
|
|
|
<summary><strong>Leer AWS-hacking van nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Ander maniere om HackTricks te ondersteun:
|
|
|
|
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
|
* Kry die [**amptelike PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
|
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Deel jou hacking-truuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
|
|
|
|
</details>
|
|
|
|
# Vereenvoudigde UIActivity-deling
|
|
|
|
Vanaf iOS 6 is derde-party-toepassings in staat gestel om **data te deel**, soos teks, URL's of afbeeldings, deur gebruik te maak van meganismes soos AirDrop, soos uiteengesit in Apple se [Inter-App Communication-gids](https://developer.apple.com/library/archive/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Inter-AppCommunication/Inter-AppCommunication.html#//apple_ref/doc/uid/TP40007072-CH6-SW3). Hierdie funksie manifesteer deur middel van 'n stelselwye _deelaktiwiteitsblad_ wat na vore kom wanneer die "Deel" knoppie geaktiveer word.
|
|
|
|
'n Omvattende opsomming van al die ingeboude deelopsies is beskikbaar by [UIActivity.ActivityType](https://developer.apple.com/documentation/uikit/uiactivity/activitytype). Ontwikkelaars kan opsioneel spesifieke deelopsies uitsluit as hulle dit ongeskik ag vir hul toepassing.
|
|
|
|
## **Hoe om Data te Deel**
|
|
|
|
Aandag moet gegee word aan:
|
|
|
|
- Die aard van die gedeelde data.
|
|
- Die insluiting van aangepaste aktiwiteite.
|
|
- Die uitsluiting van sekere aktiwiteitstipes.
|
|
|
|
Deling word fasiliteer deur die instansiasie van 'n `UIActivityViewController`, waarin die items wat bedoel is om gedeel te word, oorgedra word. Dit word bereik deur die volgende te roep:
|
|
```bash
|
|
$ rabin2 -zq Telegram\ X.app/Telegram\ X | grep -i activityItems
|
|
0x1000df034 45 44 initWithActivityItems:applicationActivities:
|
|
```
|
|
Ontwikkelaars moet die `UIActivityViewController` noukeurig ondersoek vir die aktiwiteite en aangepaste aktiwiteite waarmee dit geïnisialiseer is, sowel as enige gespesifiseerde `excludedActivityTypes`.
|
|
|
|
## **Hoe om Data te Ontvang**
|
|
|
|
Die volgende aspekte is van kritieke belang wanneer data ontvang word:
|
|
|
|
- Die verklaring van **aangepaste dokumenttipes**.
|
|
- Die spesifikasie van **dokumenttipes wat die app kan oopmaak**.
|
|
- Die verifikasie van die **integriteit van die ontvangste data**.
|
|
|
|
Sonder toegang tot die bronkode kan 'n persoon steeds die `Info.plist` ondersoek vir sleutels soos `UTExportedTypeDeclarations`, `UTImportedTypeDeclarations`, en `CFBundleDocumentTypes` om te verstaan watter tipes dokumente 'n app kan hanteer en verklaar.
|
|
|
|
'n Bondige gids oor hierdie sleutels is beskikbaar op [Stackoverflow](https://stackoverflow.com/questions/21937978/what-are-utimportedtypedeclarations-and-utexportedtypedeclarations-used-for-on-i), wat die belangrikheid beklemtoon van die definieer en invoer van UTIs vir stelselwye herkenning en die assosiasie van dokumenttipes met jou app vir integrasie in die "Open met" dialoog.
|
|
|
|
## Dinamiese Toetsbenadering
|
|
|
|
Om **aktiwiteite te toets** wat gestuur word, kan 'n persoon:
|
|
|
|
- Inhaak op die `init(activityItems:applicationActivities:)` metode om die items en aktiwiteite wat gedeel word, vas te vang.
|
|
- Uitgeslote aktiwiteite identifiseer deur die `excludedActivityTypes` eienskap te onderskep.
|
|
|
|
Vir die **ontvang van items**, behels dit:
|
|
|
|
- Om 'n lêer met die app te deel vanaf 'n ander bron (bv. AirDrop, e-pos) wat die "Open met..." dialoog uitlok.
|
|
- Om `application:openURL:options:` te onderskep, tesame met ander metodes wat geïdentifiseer is tydens statiese analise, om die app se reaksie waar te neem.
|
|
- Om gebrekkige lêers of fuzzing-tegnieke te gebruik om die robuustheid van die app te evalueer.
|
|
|
|
## Verwysings
|
|
* [https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction](https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction)
|
|
|
|
<details>
|
|
|
|
<summary><strong>Leer AWS-hacking vanaf nul tot held met</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Ander maniere om HackTricks te ondersteun:
|
|
|
|
* As jy wil sien dat jou **maatskappy geadverteer word in HackTricks** of **HackTricks aflaai in PDF-formaat**, kyk na die [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
|
* Kry die [**amptelike PEASS & HackTricks-uitrusting**](https://peass.creator-spring.com)
|
|
* Ontdek [**The PEASS Family**](https://opensea.io/collection/the-peass-family), ons versameling eksklusiewe [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Sluit aan by die** 💬 [**Discord-groep**](https://discord.gg/hRep4RUj7f) of die [**telegram-groep**](https://t.me/peass) of **volg** ons op **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Deel jou hacktruuks deur PR's in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github-opslag.
|
|
|
|
</details>
|