iOS Universal Links
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Evrensel bağlantılar, kullanıcılar için kesintisiz bir yönlendirme deneyimi sunarak içeriği doğrudan uygulamada açar ve Safari yönlendirmesini atlar. Bu bağlantılar eşsiz ve güvenlidir, çünkü diğer uygulamalar tarafından talep edilemezler. Bu, web sitesinin kök dizininde bir apple-app-site-association
JSON dosyası barındırarak sağlanır ve web sitesi ile uygulama arasında doğrulanabilir bir bağlantı kurar. Uygulama yüklü değilse, Safari devralır ve kullanıcıyı web sayfasına yönlendirir, uygulamanın varlığını korur.
Penetrasyon test uzmanları için apple-app-site-association
dosyası özellikle ilgi çekicidir çünkü hassas yolları açığa çıkarabilir, bu da henüz yayımlanmamış özelliklerle ilgili yolları içerebilir.
Geliştiriciler, Xcode'un Yetenekler sekmesinde İlişkili Alanlar'ı yapılandırarak veya .entitlements
dosyasını inceleyerek Evrensel Bağlantıları etkinleştirir. Her alan applinks:
ile başlar. Örneğin, Telegram'ın yapılandırması şu şekilde görünebilir:
Daha kapsamlı bilgiler için arşivlenmiş Apple Geliştirici Dokümantasyonu'na başvurun.
Derlenmiş bir uygulama ile çalışıyorsanız, haklar bu kılavuzda açıklandığı gibi çıkarılabilir.
apple-app-site-association
dosyası, haklarda belirtilen alan adları kullanılarak sunucudan alınmalıdır. Dosyanın https://<domain>/apple-app-site-association
adresinden doğrudan HTTPS ile erişilebilir olduğundan emin olun. Apple Uygulama Site İlişkilendirme (AASA) Doğrulayıcı gibi araçlar bu süreçte yardımcı olabilir.
Uygulama, evrensel bağlantıları doğru bir şekilde yönetmek için belirli yöntemleri uygulamalıdır. Bakılması gereken ana yöntem application:continueUserActivity:restorationHandler:
yöntemidir. İşlenen URL'lerin şemasının HTTP veya HTTPS olması kritik öneme sahiptir, diğerleri desteklenmeyecektir.
Bir evrensel bağlantı bir uygulamayı açtığında, uygulamaya URL ile birlikte bir NSUserActivity
nesnesi iletilir. Bu URL'yi işlemeye başlamadan önce, güvenlik risklerini önlemek için doğrulamak ve temizlemek önemlidir. İşte süreci gösteren bir Swift örneği:
URLs dikkatlice ayrıştırılmalı ve doğrulanmalıdır, özellikle parametreler içeriyorsa, potansiyel sahtecilik veya hatalı verilerden korunmak için. Aşağıda gösterildiği gibi, bu amaç için NSURLComponents
API'si faydalıdır:
Through özenli yapılandırma ve doğrulama, geliştiriciler evrensel bağlantıların kullanıcı deneyimini artırmasını sağlarken güvenlik ve gizlilik standartlarını koruyabilirler.
GetUniversal.link: Uygulamanızın Evrensel Bağlantılarını ve AASA dosyasını test etmeyi ve yönetmeyi basitleştirmeye yardımcı olur. AASA dosyası bütünlüğünü doğrulamak için alan adınızı girin veya bağlantı davranışını kolayca test etmek için özel kontrol panelini kullanın. Bu araç ayrıca Apple'ın AASA dosyanızı bir sonraki ne zaman dizine alacağını belirlemenize yardımcı olur.
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)