hacktricks/mobile-pentesting/android-app-pentesting/react-native-application.md

63 lines
4.7 KiB
Markdown
Raw Normal View History

2022-04-28 16:01:33 +00:00
<details>
2024-02-11 01:46:25 +00:00
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
Inne sposoby wsparcia HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
2024-02-11 01:46:25 +00:00
# Analiza aplikacji React Native
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
Aby potwierdzić, czy aplikacja została zbudowana na platformie React Native, wykonaj następujące kroki:
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
1. Zmień nazwę pliku APK na rozszerzenie zip i wypakuj go do nowego folderu za pomocą polecenia `cp com.example.apk example-apk.zip` i `unzip -qq example-apk.zip -d ReactNative`.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
2. Przejdź do nowo utworzonego folderu ReactNative i znajdź folder assets. Wewnątrz tego folderu powinieneś znaleźć plik `index.android.bundle`, który zawiera kod JavaScript React w zminifikowanym formacie.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
3. Użyj polecenia `find . -print | grep -i ".bundle$"` aby wyszukać plik JavaScript.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
Aby dalszo analizować kod JavaScript, utwórz plik o nazwie `index.html` w tym samym katalogu z następującym kodem:
2024-02-03 16:02:14 +00:00
```html
<script src="./index.android.bundle"></script>
2021-11-03 10:22:49 +00:00
```
2024-02-11 01:46:25 +00:00
Możesz przesłać plik na [https://spaceraccoon.github.io/webpack-exploder/](https://spaceraccoon.github.io/webpack-exploder/) lub postępować zgodnie z poniższymi krokami:
2021-11-03 10:22:49 +00:00
2024-02-11 01:46:25 +00:00
1. Otwórz plik `index.html` w przeglądarce Google Chrome.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
2. Otwórz Pasek Narzędzi Deweloperskich, naciskając **Command+Option+J dla systemu OS X** lub **Control+Shift+J dla systemu Windows**.
2021-08-09 12:26:47 +00:00
2024-02-11 01:46:25 +00:00
3. Kliknij "Sources" w Pasku Narzędzi Deweloperskich. Powinieneś zobaczyć plik JavaScript podzielony na foldery i pliki, tworzące główny pakiet.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
Jeśli znajdziesz plik o nazwie `index.android.bundle.map`, będziesz mógł analizować kod źródłowy w formacie niezmienionym przez minifikację. Pliki map zawierają mapowanie źródła, które pozwala na odwzorowanie zminifikowanych identyfikatorów.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
Aby wyszukać poufne dane uwierzytelniające i punkty końcowe, postępuj zgodnie z poniższymi krokami:
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
1. Zidentyfikuj wrażliwe słowa kluczowe do analizy kodu JavaScript. Aplikacje React Native często korzystają z usług osób trzecich, takich jak Firebase, punkty końcowe usługi AWS S3, klucze prywatne, itp.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
2. W tym konkretnym przypadku zaobserwowano, że aplikacja korzysta z usługi Dialogflow. Wyszukaj wzorzec związany z jej konfiguracją.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
3. W trakcie procesu rozpoznawania udało się znaleźć wrażliwe dane uwierzytelniające wpisane na stałe w kodzie JavaScript.
2021-02-01 09:24:10 +00:00
2024-02-11 01:46:25 +00:00
## Referencje
2024-02-03 16:02:14 +00:00
* [https://medium.com/bugbountywriteup/lets-know-how-i-have-explored-the-buried-secrets-in-react-native-application-6236728198f7](https://medium.com/bugbountywriteup/lets-know-how-i-have-explored-the-buried-secrets-in-react-native-application-6236728198f7)
2022-04-28 16:01:33 +00:00
<details>
2024-02-11 01:46:25 +00:00
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
Inne sposoby wsparcia HackTricks:
2022-04-28 16:01:33 +00:00
2024-02-11 01:46:25 +00:00
* Jeśli chcesz zobaczyć **reklamę swojej firmy w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCYJNY**](https://github.com/sponsors/carlospolop)!
* Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com)
* Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family)
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Podziel się swoimi trikami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) **i** [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) **na GitHubie.**
2022-04-28 16:01:33 +00:00
</details>