2.4 KiB
Raw Blame History

{{#include ../../banners/hacktricks-training.md}}

React Native Uygulama Analizi

Uygulamanın React Native çerçevesinde mi oluşturulduğunu doğrulamak için şu adımları izleyin:

  1. APK dosyasını zip uzantısıyla yeniden adlandırın ve cp com.example.apk example-apk.zip ve unzip -qq example-apk.zip -d ReactNative komutunu kullanarak yeni bir klasöre çıkarın.

  2. Yeni oluşturulan ReactNative klasörüne gidin ve assets klasörünü bulun. Bu klasörün içinde, minify edilmiş formatta React JavaScript içeren index.android.bundle dosyasını bulmalısınız.

  3. JavaScript dosyasını aramak için find . -print | grep -i ".bundle$" komutunu kullanın.

JavaScript kodunu daha fazla analiz etmek için, aynı dizinde index.html adında bir dosya oluşturun ve aşağıdaki kodu ekleyin:

<script src="./index.android.bundle"></script>

Dosyayı https://spaceraccoon.github.io/webpack-exploder/ adresine yükleyebilir veya şu adımları izleyebilirsiniz:

  1. index.html dosyasını Google Chrome'da açın.

  2. OS X için Command+Option+J veya Windows için Control+Shift+J tuşlarına basarak Geliştirici Araçları'nıın.

  3. Geliştirici Araçları'nda "Sources" sekmesine tıklayın. Ana paketi oluşturan klasörler ve dosyalar halinde bölünmüş bir JavaScript dosyası görmelisiniz.

Eğer index.android.bundle.map adında bir dosya bulursanız, kaynak kodunu unminified formatında analiz edebilirsiniz. Harita dosyaları, minified tanımlayıcıları eşleştirmenizi sağlayan kaynak eşleştirmesi içerir.

Hassas kimlik bilgileri ve uç noktaları aramak için şu adımları izleyin:

  1. JavaScript kodunu analiz etmek için hassas anahtar kelimeleri belirleyin. React Native uygulamaları genellikle Firebase, AWS S3 hizmet uç noktaları, özel anahtarlar gibi üçüncü taraf hizmetler kullanır.

  2. Bu özel durumda, uygulamanın Dialogflow hizmetini kullandığı gözlemlendi. Yapılandırmasıyla ilgili bir desen arayın.

  3. Recon süreci sırasında JavaScript kodunda hassas hard-coded kimlik bilgileri bulunduğu için şanslıydık.

References

{{#include ../../banners/hacktricks-training.md}}