# Samouczek Fridy 3
Nauka hakowania AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)! Inne sposoby wsparcia HackTricks: * Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](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 hakowania, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) na GitHubie.
**Wskazówka dotycząca nagrody za błąd**: **Zarejestruj się** na platformie **Intigriti**, premium **platformie nagród za błędy stworzonej przez hakerów, dla hakerów**! Dołącz do nas na [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) już dziś i zacznij zarabiać nagrody aż do **100 000 USD**! {% embed url="https://go.intigriti.com/hacktricks" %} *** **To jest streszczenie posta**: [https://joshspicer.com/android-frida-1](https://joshspicer.com/android-frida-1)\ **APK**: [https://github.com/OWASP/owasp-mstg/blob/master/Crackmes/Android/Level\_01/UnCrackable-Level1.apk](https://github.com/OWASP/owasp-mstg/blob/master/Crackmes/Android/Level\_01/UnCrackable-Level1.apk) ## Rozwiązanie 1 Oparte na [https://joshspicer.com/android-frida-1](https://joshspicer.com/android-frida-1) **Podłącz funkcję \_exit()**\_ i **funkcję deszyfrującą**, aby wydrukować flagę w konsoli Fridy, gdy naciśniesz przycisk weryfikacji: ```javascript Java.perform(function () { send("Starting hooks OWASP uncrackable1..."); function getString(data){ var ret = ""; for (var i=0; i < data.length; i++){ ret += "#" + data[i].toString(); } return ret } var aes_decrypt = Java.use("sg.vantagepoint.a.a"); aes_decrypt.a.overload("[B","[B").implementation = function(var_0,var_1) { send("sg.vantagepoint.a.a.a([B[B)[B doFinal(enc) // AES/ECB/PKCS7Padding"); send("Key : " + getString(var_0)); send("Encrypted : " + getString(var_1)); var ret = this.a.overload("[B","[B").call(this,var_0,var_1); send("Decrypted : " + getString(ret)); var flag = ""; for (var i=0; i < ret.length; i++){ flag += String.fromCharCode(ret[i]); } send("Decrypted flag: " + flag); return ret; //[B }; var sysexit = Java.use("java.lang.System"); sysexit.exit.overload("int").implementation = function(var_0) { send("java.lang.System.exit(I)V // We avoid exiting the application :)"); }; send("Hooks installed."); }); ``` ## Rozwiązanie 2 Oparte na [https://joshspicer.com/android-frida-1](https://joshspicer.com/android-frida-1) **Podłącz hooki do rootchecks** i funkcji deszyfrującej, aby wydrukować flagę w konsoli frida po naciśnięciu przycisku weryfikacji: ```javascript Java.perform(function () { send("Starting hooks OWASP uncrackable1..."); function getString(data){ var ret = ""; for (var i=0; i < data.length; i++){ ret += "#" + data[i].toString(); } return ret } var aes_decrypt = Java.use("sg.vantagepoint.a.a"); aes_decrypt.a.overload("[B","[B").implementation = function(var_0,var_1) { send("sg.vantagepoint.a.a.a([B[B)[B doFinal(enc) // AES/ECB/PKCS7Padding"); send("Key : " + getString(var_0)); send("Encrypted : " + getString(var_1)); var ret = this.a.overload("[B","[B").call(this,var_0,var_1); send("Decrypted : " + getString(ret)); var flag = ""; for (var i=0; i < ret.length; i++){ flag += String.fromCharCode(ret[i]); } send("Decrypted flag: " + flag); return ret; //[B }; var rootcheck1 = Java.use("sg.vantagepoint.a.c"); rootcheck1.a.overload().implementation = function() { send("sg.vantagepoint.a.c.a()Z Root check 1 HIT! su.exists()"); return false; }; var rootcheck2 = Java.use("sg.vantagepoint.a.c"); rootcheck2.b.overload().implementation = function() { send("sg.vantagepoint.a.c.b()Z Root check 2 HIT! test-keys"); return false; }; var rootcheck3 = Java.use("sg.vantagepoint.a.c"); rootcheck3.c.overload().implementation = function() { send("sg.vantagepoint.a.c.c()Z Root check 3 HIT! Root packages"); return false; }; var debugcheck = Java.use("sg.vantagepoint.a.b"); debugcheck.a.overload("android.content.Context").implementation = function(var_0) { send("sg.vantagepoint.a.b.a(Landroid/content/Context;)Z Debug check HIT! "); return false; }; send("Hooks installed."); }); ```
**Wskazówka dotycząca nagród za błędy**: **Zarejestruj się** na platformie **Intigriti**, premium platformie do nagród za błędy stworzonej przez hakerów, dla hakerów! Dołącz do nas na [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) już dziś i zacznij zarabiać nagrody do **$100,000**! {% embed url="https://go.intigriti.com/hacktricks" %}
Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)! Inne sposoby wsparcia HackTricks: * Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](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.