SponsorGiriş yapGönder
Blog

macOS 27.2.1, curl'ün eMudhra'ya güvenmesini durduruyor. Mac uygulamanızda nelere bakmak gerekir

Yazan: Justinas Rolando, MacPip'in yapımcısı

Kısa cevap

9 Kasım 2026 tarihinde Apple, macOS 27.2.1'i ve eski Mac'ler için 26.7.3 ile 15.8.3'ü yayımladı. Sekiz güvenlik düzeltmesinin yanı sıra eMudhra sertifika ihlalinin bıraktığı bir boşluğu kapatıyorlar: 19 Ekim tarihinden beri Safari, Mail ve Apple'ın ağ ve güvenlik çerçevelerini kullanan uygulamalar kötü sertifikaları (sayı: 12) zaten reddediyordu, ancak curl, git, python3 ve openssl gibi komut satırı araçları /etc/ssl/cert.pem dosyasını okuyor ve bunları kabul etmeyi sürdürüyordu. Güncellemeler, AAA Certificate Services dahil beş kök sertifikayı bu dosyadan kaldırıyor. Uygulamanız, yükleyiciniz veya güncelleme betiğiniz bu araçları kullanıyorsa ya da kendi güvenilir kök listesiyle geliyorsa, indirmelerinizi ve kendi sunucularınızı yeni sürümlerde test edin.

Çoğu Mac güncellemesini kurup unuturum. 9 Kasım tarihinde çıkan macOS 27.2.1 ise Mac uygulaması yapıyorsanız ince ayrıntılarını okumaya değer, çünkü her Mac'teki bazı araçların hangi sertifikalara güveneceğini değiştiriyor. Apple bunu eski Mac'ler için macOS Tahoe 26.7.3 ve Sequoia 15.8.3 ile birlikte yayımladı ve üçü de aynı değişikliği taşıyor.

İşte ne olduğu, kimleri etkilediği ve neyi test etmek gerektiği.

Ne oldu

Aynı güncellemeler, MacRumors'a göre Mesajlar, AirPlay ve Bluetooth'taki sekiz başka güvenlik hatasını da düzeltiyor. Apple bunlardan herhangi birinin saldırılarda kullanıldığını söylemedi.

Bir Mac uygulaması geliştiricisi neden önemsemeli

Uygulamanız URLSession ile internete bağlanan sıradan bir Swift uygulamasıysa, büyük olasılıkla Ekim'de kapsanmıştı. Apple'ın sayfası, ağ ve güvenlik çerçevelerini kullanan uygulamalardan söz ediyor ve Michael Tsai'nin alıntıladığı Howard Oakley, Apple'ın standart API'leri üzerine kurulu uygulamaların macOS güven deposunu kullandığını söylüyor.

Kapsanmayan uygulamalar, birçok bağımsız geliştiricinin yayımladığı türden:

Yani Ekim düzeltmesi uygulamanıza ulaşmamış olabilir, uygulama kendi köklerini getiriyorsa Kasım düzeltmesi de ulaşmayabilir.

İkinci bir yüzü de var. AAA Certificate Services, pek çok sıradan sertifikayı imzalamış eski bir Sectigo köküdür. Apple'ın sayfası, yalnızca /etc/ssl/cert.pem kullanan araçların, zincirleri kaldırılan köklerden geçen bazı siteleri doğrulayamayabileceği konusunda uyarıyor. İndirme sunucunuz, güncelleme akışınız veya lisans API'niz bunlardan biriyse, güncellenmiş bir Mac'te curl onu reddetmeye başlayabilir.

Bu hafta neyi kontrol ederdim

Bunlar Apple'ın değil, benim kendi adımlarım.

  1. Bir Mac'i 27.2.1'e güncelleyin ve indirmeleri komut satırından test edin. Kurulum betiğinizi, cask'iniz varsa brew install komutunuzu ve indirme, appcast ve lisans adreslerinize karşı curl -I komutunu çalıştırın. Reddedilen bir sertifika yavaş bir sayfa olarak değil, hata olarak görünür.
  2. Kendi sertifika zincirinize bakın. openssl s_client -connect yourapp.com:443 -showcerts komutunu çalıştırın ve issuer satırlarını okuyun. eMudhra, emSign veya AAA Certificate Services görürseniz, barındırma sağlayıcınızdan veya sertifika satıcınızdan başka bir kökte biten bir zincir isteyin.
  3. Uygulamanızın gerçekte kullandığı güven deposunu bulun. Electron, Go, gömülü köklerle Rust, certifi'li Python ve Java kendi güven depolarını getirir. Çalışma zamanını veya kök paketini kötü sertifikaları çıkaran bir sürüme güncelleyin ve bunu sürüm notlarınıza yazın.
  4. Hazır bir destek yanıtınız olsun. Eski bir Mac'teki biri güncellemeleri yükleyemiyorsa, Apple'ın sayfasında kökleri elle kaldırma adımları var. Bir e-postaya sudo kullanan komutları yapıştırmak yerine Apple'ın sayfasına bağlantı vermek daha iyi olur.
  5. İnsanlara güncellemelerini söyleyin. Uygulamanızın kullanıcıları teknik ağırlıklıysa, bir sonraki sürümünüzde veya bültende kısa bir not hiçbir şeye mal olmaz.
  6. Dosyayı bir test Mac'inde kontrol edin. Apple'ın sayfası aşağıdaki komutu veriyor; iki önemli kök sertifika kaldırıldığında hiçbir şey yazdırmaz.
openssl crl2pkcs7 -nocrl -certfile /etc/ssl/cert.pem | openssl pkcs7 -print_certs -noout | grep -E 'emSign ECC Root CA - G3|AAA Certificate Services'

Ne yapmazdım

Bir hatadan kurtulmak için bir betikte sertifika kontrollerini kapatmazdım. Tüm bu değişikliğin karşı koruduğu tek şey bu. Kullanıcılara Mac'lerinin hacklendiğini de söylemezdim. Anahtarların kullanıldığına dair bir işaret yok ve çoğu uygulama Ekim'de zaten korunuyordu.

MacPip açısı

MacPip, bir uygulamanın hangi sertifikalara güvendiğini kontrol etmez. Kayıtlar gönderildiklerinde otomatik olarak taranır ve mavi tik yalnızca bir kişinin uygulamayı bir tarihte denediği anlamına gelir. Bir geliştirici aracı veya güvenlik ve gizlilik uygulaması yapıyorsanız, bundan etkilenen bir betiğe ya da gömülü çalışma zamanına sahip olma olasılığınız en yüksek olanlardan biri, bu yüzden bir saatinizi ayırmaya değer.

Bugün yeni: gizlilik manifestosu denetleyicisi. PrivacyInfo.xcprivacy dosyanızı yapıştırın; her veri türünü, amacı ve CA92.1 gibi her gerekli neden kodunu Apple'ın kendi listelerine göre kontrol eder. Ayrıca Apple'ın Mac'te neleri istediğini ve neleri istemediğini de söyler. Sayfada çalışır ve hiçbir şey gönderilmez. Info.plist açıklaması ve notarization açıklaması hemen yanında. Mac uygulamanız henüz MacPip'te değilse, listelemek ücretsiz.

Kaynaklar

Okumaya devam edin

Uygulamanızı gönderinYapımcılar için ücretsiz araçlar