Kılavuz

Android uygulama trafiğini yakalayın Wi-Fi proxy olmadan

Android için Busymate DevTools uygulaması, VPN tabanlı bir yakalama motorunu telefonun kendisinde çalıştırır. Masaüstü proxy yok, paylaşılan Wi-Fi yok, proxy ayarı yok — ve root'suz bir telefonda hangi uygulamaların gerçekten çözüleceğinin dürüst anlatımı.

Android'de bir uygulamanın HTTPS'ini okumanın klasik yolu, bir dizüstündeki proxy artı telefonun Wi-Fi ayarlarına elle girilen bir proxy kaydıdır. O ağdan ayrılana kadar işe yarar. Busymate DevTools proxy'yi denklemden çıkarır: uygulama kendini telefonun VPN'i olarak kaydeder, telefonun kurduğu her bağlantıyı görür, seçtiğiniz ana bilgisayarları cihazda ürettiği bir sertifikayla çözer ve sonucu iOS uygulamasının ve masaüstü proxy'nin kullandığı aynı panoya aktarır.

Bu kılavuzun gizlemeyeceği bir platform gerçeği var. Android 7.0'dan bu yana bir uygulama, açıkça izin vermedikçe kullanıcının yüklediği sertifikaları yok sayar. Bu, telefonun her uygulamanın trafiğini yakalayabildiği ama yalnızca kullanıcı sertifika deposuna güvenen uygulamaların şifresini çözebildiği anlamına gelir — pratikte kendi hata ayıklama derlemeleriniz, sistem tarayıcıları ve benzeri istemciler. Beşinci adım, uygulamanızı bunlardan biri yapan tek dosyalık değişikliği gösterir; gerisini sabitleme kılavuzu anlatır.

Başlamadan önce

Neye ihtiyacınız var

Bir telefon, bir hesap ve — kendi uygulamanızdan şifresi çözülmüş gövdeler istiyorsanız — yeniden derleyebileceğiniz bir hata ayıklama derlemesi.

  • Android 7.0 veya üstü çalıştıran bir Android telefon. Yakalama için root da bilgisayar da gerekmez.

  • Bir Busymate hesabı. Google ile ya da e-posta ve şifreyle oturum açın; oturum açmak telefonu panonuzla eşleştirir.

  • SSL proxy listesi için okumak istediğiniz API'nin ana bilgisayar adları. Yalnızca listelenen ana bilgisayarların şifresi çözülür.

  • Kendi uygulamanız için: telefonun ürettiği sertifikaya güvenmesi amacıyla hata ayıklama derlemesini tek dosyalık bir ağ güvenliği yapılandırmasıyla yeniden derleyebilme.

Adım adım

Sırayla ilerleyin

Altı adım. Uygulamanın yönlendirmeli kurulumu platform istemlerini ekran ekran halleder; uygulama dışındaki tek iş beşinci adımdaki hata ayıklama derlemesi değişikliğidir.

  1. 01

    Uygulamayı yükleyin ve yakalama onayını kabul edin

    Busymate DevTools'u Google Play'den yükleyin ya da listeleme bölgenizde henüz görünmüyorsa imzalı sürüm APK'sını Android açılış sayfasından yandan yükleyin. İlk açılışta uygulama, ağ trafiğini yakalamak için açık onayınızı ister. Yakalama isteğe bağlıdır ve siz açana kadar kapalı kalır — siz söylemeden arka planda hiçbir şey çalışmaz.

    Android için Busymate DevTools'ta ağ yakalama onay ekranı
  2. 02

    Oturum açın — telefon kendini eşleştirir

    Google ile ya da e-posta ve şifrenizle oturum açın. iOS'ta olduğu gibi oturum açmak eşleştirmektir: uygulama oturumu, şifreli uygulama depolamasında saklanan uzun ömürlü bir cihaz kimlik bilgisiyle değiştirir ve telefon bir an sonra panonun Devices sekmesinde Online görünür. Ana ekran cihaz adını, bir hesap rozetini, yakalama anahtarı kartını ve Ayarlar için dişlisi olan bir hazırlık kartını gösterir.

    Yakalama anahtarı ve hazırlık kartıyla Android'de Busymate DevTools ana ekranı
  3. 03

    Şifresini çözmek istediğiniz alan adlarını ekleyin

    Dişliden Ayarlar'ı açın ve SSL Proxying'e gidin. HTTPS gövdelerini okumak istediğiniz ana bilgisayarları listeleyin; geri kalan her şey uçtan uca şifreli kalır ve istek sayısıyla birlikte bir ana bilgisayar adı olarak görünür. Başa konan yıldız ve nokta bir alan adını ve tüm alt alan adlarını kapsar. Aynı bölümde şifre çözme denetimleri ve akışta hiç istemediğiniz arka plan gürültüsü için bir Ignore Hosts listesi bulunur.

    Bunu telefonda yapmak zorunda değilsiniz. Pano aynı cihaz başına listeyi düzenler ve oradaki bir değişiklik telefona canlı olarak gönderilir; böylece siz test etmeye devam ederken bir ekip arkadaşınız ana bilgisayar ekleyebilir.

  4. 04

    Yönlendirmeli kurulumu çalıştırın

    Hazırlık kartına dokunun. Yönlendirmeli kurulum üç platform istemini ekran ekran gezer: yakalama bildirimine izin verin, uygulamanın yalnızca sizin için ürettiği sertifikayı telefonun kullanıcı sertifika deposuna yükleyin ve Android'in kendi VPN bağlantı isteğini onaylayın. Her adım tamamladıkça bitti olarak işaretlenir ve üçü de geçince kart hazır olur.

    Bu sertifika cihazınıza özeldir — telefonda oluşturulur, hiçbir zaman paylaşılan bir sunucudan indirilmez — ve uygulamanın, şifresini çözmeyi seçtiğiniz her ana bilgisayar için güvenilir bir sertifika sunmasını sağlayan şey odur.

    Android için Busymate DevTools'ta yönlendirmeli yakalama kurulumu
  5. 05

    Kendi uygulamanızın kullanıcı sertifika deposuna güvenmesini sağlayın

    Bu, hiçbir Android yakalama aracının atlayamayacağı adımdır. Android 7.0'dan bu yana o düzeyi veya üstünü hedefleyen bir uygulama varsayılan olarak yalnızca sistem sertifika deposuna güvenir; bu yüzden telefon ürettiği sertifikayı sunar sunmaz uygulamanız bağlantıyı kapatır. Çözüm, yalnızca hata ayıklama derlemeleriyle sınırlı, kullanıcı deposunu sistem deposunun yanına ekleyen küçük bir ağ güvenliği yapılandırmasıdır. Android, debug-overrides bloğunu sürüm derlemelerinden tamamen çıkarır, dolayısıyla üretime sızamaz.

    Aşağıdaki dosyayı uygulamanızda oluşturun, sıradan HTTPS'in çalışmaya devam etmesi için sistem çapasını kullanıcı çapasının yanında tutun, manifest'inizdeki application etiketinden ona başvurun, sonra hata ayıklama derlemesini yeniden derleyip yükleyin. Eski ikiliyi yeniden yüklemek hiçbir işe yaramaz — güven yeni derlenen uygulamada yaşar.

    Yalnızca hata ayıklama için ağ güvenliği yapılandırması, ardından manifest başvurusu
    xml
    <!-- app/src/main/res/xml/network_security_config.xml -->
    <network-security-config>
      <debug-overrides>
        <trust-anchors>
          <certificates src="user" />
          <certificates src="system" />
        </trust-anchors>
      </debug-overrides>
    </network-security-config>
    
    <!-- AndroidManifest.xml -->
    <application
        android:networkSecurityConfig="@xml/network_security_config"
        ... >
  6. 06

    Yakalamayı açın ve inceleyin

    Yakalama anahtarını açın. Android durum çubuğunda VPN anahtar simgesini gösterir ve telefonun yaptığı her istek pano akışına ve uygulamanın kendi Network ekranına düşmeye başlar — bir durum satırı, istatistik rozetleri, kategori çipleri ve altta aramalı, ana bilgisayara göre gruplanmış bir liste. Tam ayrıntı için bir ana bilgisayara, sonra bir isteğe dokunun: hem istek hem yanıt için General, Header, Summary, Timing ve Body sekmeleri.

    Uygulamanızı açın ve bir çağrı tetikleyin. HTTPS girdileri artık opak bir tünel yerine okunabilir başlıklar ve çözülmüş bir gövde gösterir. İşiniz bitince yakalamayı kapatın — VPN düşer, sertifika ve uygulama diğerleri gibi kaldırılabilir.

    Android için Busymate DevTools'ta gerçek zamanlı Network akışı

Sorun giderme

Neler ters gidebilir

Android sorunlarının çoğu platformun sertifikalar konusunda katı olmasıdır ve akış hangisine takıldığınızı söyler.

  • Kendi uygulamanızın trafiği hâlâ şifreli görünüyor

    Ağ güvenliği yapılandırması etkili olmadı. Ekledikten sonra hata ayıklama derlemesini yeniden derleyip yüklediğinizi, manifest'in dosyayı gösterdiğini ve sertifikanın kullanıcı deposunda olduğunu doğrulayın. Yapılandırma yalnızca hata ayıklama kaynak kümesindeyse manifest özniteliği de hata ayıklama manifest'inde olmalıdır.

  • Sizin derlemediğiniz bir mağaza uygulaması opak kalıyor

    Root'suz bir telefonda beklenen durum: o uygulama kullanıcı sertifikalarına hiç izin vermedi, bu yüzden telefon bağlantıyı yalnızca meta veri olarak kaydeder. Şifresini çözmek, sertifikanın sistem deposuna girebildiği root'lu bir cihaz gerektirir — telefon çiftliğinin kullandığı katman — ve bu bile kendi sertifikasını sabitleyen bir uygulamayı açamaz.

  • Android'in VPN istemi sürekli geri geliyor

    Başka bir VPN uygulaması etkin ya da önceki onay sistem VPN ayarlarında iptal edilmiş. Aynı anda yalnızca bir VPN çalışabilir; diğerinin bağlantısını kesin ve istemi yönlendirmeli kurulumdan yeniden onaylayın.

  • Yakalama bildirimi hiç görünmedi

    Bildirim izni ilk istemde reddedildi. Sistem uygulama ayarlarından Busymate DevTools için yeniden etkinleştirin; yönlendirmeli kurulum bunu yeniden denetler ve adımı bitti olarak işaretler.

  • Bir ana bilgisayar listede ama yol düzeyindeki kural tetiklenmiyor

    Yola göre eşleşen kurallar ana bilgisayarın şifresinin çözülmüş olmasını gerektirir; şifreli geçen bir ana bilgisayarda yalnızca ana bilgisayar adı görünür. Önce ana bilgisayarı SSL proxy listesine ekleyin, sonra kuralı yeniden denetleyin.

SSS

Sık sorulan sorular

Root gerekli mi?

Yakalama için değil; kendi hata ayıklama derlemelerinizin ya da kullanıcı deposuna güvenen istemcilerin şifresini çözmek için de değil. Root yalnızca sertifikayı sistem deposuna taşımak için gerekir; böylece sizin derlemediğiniz uygulamalar ona güvenir.

Bu, arka planda bir proxy mi?

Hayır. Uygulama telefonun VPN'i olarak kayıtlıdır, bu yüzden herhangi bir proxy ayarına dokunmadan Wi-Fi ve mobil veri üzerinden her uygulamanın trafiğini görür. Tarayıcılar ve arka uçlar için ayrı bir masaüstü proxy vardır ama bu kılavuz onu hiç kullanmaz.

Listemde olmayan uygulamalara ne olur?

Tam olarak eskisi gibi çalışmaya devam ederler. Bağlantıları yalnızca ana bilgisayar ve zamanlama olarak kaydedilir, asla şifresi çözülmez ve Ignore Hosts en gürültülü olanları akıştan tamamen çıkarabilir.

Uygulamanızın trafiği, telefonda okunur

Uygulamayı yükleyin, yönlendirmeli kurulumu çalıştırın, tek dosyalık hata ayıklama yapılandırmasını ekleyin ve uygulamanızın isteklerinin şifresi çözülmüş olarak düşüşünü izleyin.

Ask your mate