İdeal olarak, bir iOS uygulamasının güvenilir olmayan bir sertifikayı ne zaman kabul etmesi gerektiğine dair yalnızca iki senaryo olmalıdır.
Senaryo A: Kendinden imzalı bir sertifika kullanan bir test ortamına bağlısınız.
Senaryo B: Bir proxy HTTPS
kullanarak trafiğe MITM Proxy like Burp Suite, Fiddler, OWASP ZAP, etc.
proxy veriyorsunuz Proxy'ler, proxy'nin HTTPS
trafiği yakalayabilmesi için kendinden imzalı bir CA tarafından imzalanan bir sertifika döndürür .
Üretim ana makineleri, açık nedenlerle asla güvenilir olmayan sertifikalar kullanmamalıdır .
İOS simülatörünün test amacıyla güvenilir olmayan bir sertifikayı kabul etmesi gerekiyorsa, cihaz tarafından sağlanan yerleşik sertifika doğrulamasını devre dışı bırakmak için uygulama mantığını değiştirmemeniz şiddetle önerilir. NSURLConnection
API'lar . Uygulama bu mantık kaldırılmadan halka açıklanırsa, ortadaki adam saldırılarına açık olacaktır.
Test amacıyla güvenilir olmayan sertifikaları kabul etmenin önerilen yolu, sertifikayı imzalayan Sertifika Yetkilisi (CA) sertifikasını iOS Simulator veya iOS cihazınıza aktarmaktır. Bir iOS Simulator'ın bunu nasıl yapacağını gösteren hızlı bir blog yazısı yazdım:
ios simülatörünü kullanarak güvenilmeyen sertifikaları kabul etme