Sıfırdan kahraman olmaya kadar AWS hackleme öğrenin htARTE (HackTricks AWS Red Team Expert)! HackTricks'ı desteklemenin diğer yolları: * **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın! * [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin * [**PEASS Ailesi'ni**](https://opensea.io/collection/the-peass-family) keşfedin, özel [**NFT'lerimiz**](https://opensea.io/collection/the-peass-family) koleksiyonumuz * **💬 [**Discord grubuna**](https://discord.gg/hRep4RUj7f) katılın veya [**telegram grubuna**](https://t.me/peass) katılın veya bizi **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)'da **takip edin**. * **Hacking püf noktalarınızı paylaşarak PR'lar göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.
{% embed url="https://websec.nl/" %} iOS cihazlarında uygulamalar arasında ve içinde veri paylaşımı, [`UIPasteboard`](https://developer.apple.com/documentation/uikit/uipasteboard) mekanizması aracılığıyla sağlanır ve iki temel kategoriye ayrılır: - **Sistem genel panosu**: Bu, verilerin **herhangi bir uygulama ile paylaşılması** için kullanılır ve iOS 10'dan beri mevcut olan verilerin cihaz yeniden başlatmaları ve uygulama kaldırmaları boyunca kalıcı olmasını sağlar. - **Özel / Adlandırılmış panolar**: Bunlar, **bir uygulama içinde veya aynı takım kimliğini paylaşan başka bir uygulama ile veri paylaşımı** için özeldir ve oluşturan uygulama sürecinin yaşam süresinden öteye geçmeyecek şekilde tasarlanmıştır, iOS 10'da yapılan değişiklikleri takip eder. **Güvenlik düşünceleri**, panoları kullanırken önemli bir rol oynar. Örneğin: - Kullanıcıların **panoya erişim izinlerini yönetmek** için bir mekanizma yoktur. - Panonun izinsiz arka planda izlenmesi riskini azaltmak için erişim, uygulama önde iken kısıtlanmıştır (iOS 9'dan beri). - Gizlilik endişeleri nedeniyle kalıcı adlandırılmış panoların kullanımı yerine paylaşılan konteynerlerin tercih edilir. - iOS 10 ile tanıtılan **Evrensel Pano** özelliği, içeriğin genel panoyoluyla cihazlar arasında paylaşılmasına izin verir ve geliştiriciler tarafından veri süresi ve otomatik içerik transferini devre dışı bırakmak için yönetilebilir. **Hassas bilgilerin yanlışlıkla** genel panoya kaydedilmediğinden emin olmak önemlidir. Ayrıca, uygulamaların genel panodaki verilerin yanlış amaçlar için kullanılmasını önlemek için tasarlanması ve geliştiricilerin hassas bilgilerin panoya kopyalanmasını önlemek için önlemler alması teşvik edilir. ### Statik Analiz Statik analiz için kaynak kodu veya ikili dosyada arama yapın: - **Sistem genel panosu** kullanımını belirlemek için `generalPasteboard`'u arayın. - **Özel panolar** oluşturmak için `pasteboardWithName:create:` ve `pasteboardWithUniqueName`'i arayın. Kalıcılığın etkin olup olmadığını doğrulayın, ancak bu yöntem artık kullanımdan kaldırılmıştır. ### Dinamik Analiz Dinamik analiz, belirli yöntemleri kancalama veya izleme işlemi içerir: - Sistem genel kullanım için `generalPasteboard`'u izleyin. - Özel uygulamalar için `pasteboardWithName:create:` ve `pasteboardWithUniqueName`'i izleyin. - Kalıcılık ayarlarını kontrol etmek için kullanılan artık kullanılmayan `setPersistent:` yöntem çağrılarını izleyin. İzlenmesi gereken temel detaylar şunlardır: - **Pano adları** ve **içerikleri** (örneğin, dizeler, URL'ler, resimler kontrol edilir). - Standart ve özel veri türü kontrollerinden yararlanarak mevcut **öğe sayısı** ve **veri türleri**. - `setItems:options:` yöntemini inceleyerek **süre ve yalnızca yerel seçeneklerini** kontrol edin. Bir izleme aracı kullanımı örneği **objection'ın pano izleyicisi**dir, bu araç genelPasteboard'u her 5 saniyede bir değişiklikleri izler ve yeni verileri çıktılar. İşte, objection'ın yaklaşımından esinlenerek her 5 saniyede bir panodan değişiklikleri okuyan ve kaydeden basit bir JavaScript betiği örneği: ```javascript const UIPasteboard = ObjC.classes.UIPasteboard; const Pasteboard = UIPasteboard.generalPasteboard(); var items = ""; var count = Pasteboard.changeCount().toString(); setInterval(function () { const currentCount = Pasteboard.changeCount().toString(); const currentItems = Pasteboard.items().toString(); if (currentCount === count) { return; } items = currentItems; count = currentCount; console.log('[* Pasteboard changed] count: ' + count + ' hasStrings: ' + Pasteboard.hasStrings().toString() + ' hasURLs: ' + Pasteboard.hasURLs().toString() + ' hasImages: ' + Pasteboard.hasImages().toString()); console.log(items); }, 1000 * 5); ``` ## Referanslar * [https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction#testing-object-persistence-mstg-platform-8](https://mobile-security.gitbook.io/mobile-security-testing-guide/ios-testing-guide/0x06h-testing-platform-interaction#testing-object-persistence-mstg-platform-8) * [https://hackmd.io/@robihamanto/owasp-robi](https://hackmd.io/@robihamanto/owasp-robi) * [https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0073/](https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0073/)
{% embed url="https://websec.nl/" %}
Sıfırdan kahraman oluncaya kadar AWS hackleme öğrenin htARTE (HackTricks AWS Red Team Expert)! HackTricks'ı desteklemenin diğer yolları: * **Şirketinizi HackTricks'te reklamını görmek istiyorsanız** veya **HackTricks'i PDF olarak indirmek istiyorsanız** [**ABONELİK PLANLARI**](https://github.com/sponsors/carlospolop)'na göz atın! * [**Resmi PEASS & HackTricks ürünlerini**](https://peass.creator-spring.com) edinin * [**The PEASS Family**](https://opensea.io/collection/the-peass-family) koleksiyonumuzu keşfedin, özel [**NFT'lerimizle**](https://opensea.io/collection/the-peass-family) tanışın * **💬 [Discord grubumuza](https://discord.gg/hRep4RUj7f) katılın veya [telegram grubumuza](https://t.me/peass) katılın veya bizi Twitter'da** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)** takip edin.** * **Hacking püf noktalarınızı paylaşarak PR'ler göndererek** [**HackTricks**](https://github.com/carlospolop/hacktricks) ve [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github depolarına katkıda bulunun.