Xposed Framework'ü kullanarak Android uygulaması (APK) imza doğrulamasını kolayca devre dışı bırakabilirsiniz, ancak çoğu durumda bunu yapmamalısınız.
Bir sistem uygulamasını değiştirmeyi ve yeniden yüklemeyi denediyseniz, muhtemelen şu veya bu şekilde uygulama imza kontrolleriyle karşılaşmışsınızdır. Devam etmeden önce orijinal uygulamayı kaldırdınız ya da eski uygulamayı kaldırmadan yüklenmesini sağlamak için değiştirilen APK'nıza başka bir paket adı verdiniz. Her iki durumda da, ilk etapta kurulmasını sağlamak için uygulamayı kendiniz yeniden imzalamanız gerekiyordu.
Uygulama imza kontrollerini geçici olarak devre dışı bırakarak tüm bu davranışları aşabilirsiniz. Ancak bu makaledeki mecazi et ve patates konusuna girmeden ve size bunu nasıl yapacağınızı anlatmadan önce, Uygulama imza kontrolleri, ne yaptıkları ve neden imza kontrolleri yaptığınız hakkında biraz konuşmamız çok önemli. meli Asla vakaların büyük çoğunluğunda bunları kaldırın.
Android İmza Doğrulama Temelleri
Varsayılan olarak, Android işletim sistemi gerektirir
Tümü Kurulabilmesi için imzalanması gereken uygulamalar. En temel anlamda bu, uygulama imzasının bir uygulamanın yazarını tanımlamak için kullanıldığı anlamına gelir (yani. meşruiyetini doğrulayın) ve aynı imzaya sahip uygulamalar arasında güven ilişkileri kurun. İlkinde, geçerli bir imzaya sahip bir uygulamanın beklenen geliştiricilerden geldiğine (makul bir dereceye kadar) emin olursunuz. İkincisi sayesinde aynı özel anahtarla imzalanan uygulamalar aynı süreçte çalışabilir ve özel verileri paylaşabilir. Daha sonra bir uygulama güncellemesi yüklediğinizde, Android işletim sistemi aşağıdakilerden emin olmak için bu imzayı kontrol eder: A) APK'nın yüklenmediğinden emin olmak için imzalanmasından bu yana geçen sürede tahrif edilmişse ve B) uygulamanın sertifikası şu anda kurulu olanın sertifikasıyla eşleşiyorsa versiyon.Peki tüm bunlar beni gerçek dünyada nasıl etkiliyor? Aslında çok basit. Google Play Store'un dışından bir APK edinirseniz ve bunu mevcut yüklü uygulamanızın güncellemesi olarak yüklemeye çalışırsanız (şunu okuyun: paket adı aynıysa, işletim sistemi uygulamanın sertifikasını doğrulamaya çalışarak uygulamanın aynı başlangıçtan geldiğinden emin olmayı deneyecektir. geliştiriciler. Sertifika eşleşirse uygulama kurulumu planlandığı gibi ilerleyecek, uygulamanız mevcut verilerini koruyacak ve her şey yolunda gidecek. İmza geçerli değilse (APK'nın tahrif edildiğini gösterir) veya sertifika orijinal uygulamanınkiyle eşleşmiyorsa yükleme başarısız olur. Daha önce de belirtildiği gibi, uygulama sertifikası yalnızca önceki sürümü imzalamak için kullanılan özel anahtarla imzalanmışsa eşleşecektir. Başka bir deyişle, bir uygulamayı yalnızca APK'nın imzasıyla eşleşen geçerli bir imzaya sahipse yükleyebilirsiniz. Bir güncellemeyi yalnızca sertifikası önceki sürümde bulunan sertifikayla eşleşiyorsa yükleyebilirsiniz. uygulamanın.
[Bu yoğun makalede mizahi bir yana, özel bir uygulama imzalama anahtarının kaybolduğu veya ele geçirildiği çok genel bir örnek var. Elbette, paket adını değiştiren bir güncelleme alan Google'ın kendi Authenticator uygulamasından bahsediyorum. com.google.android.apps.authenticator ile com.google.android.apps.authenticator2 yaklaşık iki yıl önce yapılan bir güncellemede. Bu değişiklik nedeniyle, sonraki tüm Authenticator uygulaması güncellemeleri yalnızca yeni paket adı altında (yeni özel imzalama anahtarı tarafından oluşturulan yeni imzayla) yayınlanabildi.]
İmza Doğrulamasını Neden (Geçici Olarak) Devre Dışı Bırakmak İsteyebilirsiniz?
Şimdi uygulama imza doğrulamasını geçici olarak devre dışı bırakmak isteyebileceğimiz olası bir senaryoya göz atalım. Bu makalenin başında da belirtildiği gibi, mevcut sistem uygulamalarını değiştirirken imza doğrulaması biraz baş ağrısı olabilir. Bir sistem uygulamasının değiştirilmiş bir sürümünü yüklerseniz uygulamayı geçerli ve eşleşen bir sertifikayla imzalayamazsınız. Bu gibi durumlarda normalde önce mevcut uygulamayı kaldırmak, ardından değiştirilen sürümü normal şekilde yüklemek istersiniz. İmza doğrulamayı da devre dışı bırakabilirsiniz, ancak imza doğrulamayı etkin bırakmak ve yeni sürümün yüklenebilmesi için eski sürümü kaldırmak daha iyi (ve daha güvenlidir). Ancak değiştirmeye çalıştığınız uygulamanın kaybetmeyi tercih etmeyeceğiniz verileri olması durumunda bu biraz sorun haline gelebilir. Kök erişimini kullanarak verileri manuel olarak korumanın ve onu yeni sürüme aktarmanın kesinlikle yolları vardır. ancak kullanıcılar imza doğrulamayı geçici olarak devre dışı bırakıp ardından kontrollere devam etmeyi de isteyebilirler daha sonrasında. Alternatif olarak XDA Kıdemli Üyesinin belirttiği gibi mcbyte_it Yorumlarda bu, uygulama geliştirmede de yararlı olabilir.
Nasıl Yapılır?
Şimdiye kadar imza doğrulamayı devre dışı bırakmak hemen hemen her sorun için korkunç bir çözümdü. Bunun nedeni, bunu yaparken aslında Android'in yerleşik korumasını ortadan kaldırmanızdır. Uygulamalarınızın kurcalanmadığından ve güncellemelerinin orijinalden geldiğinden emin olun geliştiriciler. Ancak artık Xposed Framework'ün büyüsü sayesinde, imza doğrulamayı geçici olarak devre dışı bırakabilir ve değiştirilen uygulamanızı yüklemeyi bitirdikten sonra yeniden etkinleştirebilirsiniz. Böyle bir Xposed Modülü tam olarak bunu yapabilen şey yakın zamanda XDA Kıdemli Üyesi tarafından yayınlandı pillerve Xposed'ı çalıştırabilen tüm cihazlar için planlandığı gibi çalışır. Bu şekilde, düzgün şekilde imzalanmamış, değiştirilmiş bir uygulama güncellemesini yüklemek istediğinizde, modülü etkinleştirin, yeniden başlatın, değiştirilmiş uygulama güncellemesini yükleyin, modülü devre dışı bırakın, yeniden başlatın ve keyfinize bakın yol.
Artık imza doğrulamayı geçici olarak nasıl devre dışı bırakacağınızı bildiğinize göre, imza doğrulamanın ne kadar önemli olduğunu tekrarlamak önemlidir. devre dışı bırakmak için çok çok iyi bir nedeniniz olmadığı sürece imza doğrulamayı her zaman etkin bırakmaktır BT. Bu nedenle, böyle bir aracı gerçekten yalnızca kendi oluşturduğunuz uygulama güncellemelerini uygulamak için ve ne zaman kullanmalısınız? Önce eski uygulamayı kaldırmak yerine bunu yapmanızı gerektiren hafifletici nedenler vardır.
Güvende olun ve bunu akıllıca kullanın.