mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-24 03:53:29 +00:00
149 lines
6.5 KiB
Markdown
149 lines
6.5 KiB
Markdown
# Tutorial de Frida 3
|
||
|
||
<details>
|
||
|
||
<summary><strong>Aprenda hacking no AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
Outras formas de apoiar o HackTricks:
|
||
|
||
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
||
* Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
||
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
||
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
||
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios do GitHub** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
||
|
||
</details>
|
||
|
||
<figure><img src="https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L_2uGJGU7AVNRcqRvEi%2Fuploads%2FwdlXOpyZOVGNzyhOiiFK%2Fimage%20(1).png?alt=media&token=13f4d279-7d3f-47ce-a68e-35f9a906973f" alt=""><figcaption></figcaption></figure>
|
||
|
||
Se você está interessado em **carreira de hacking** e em hackear o inquebrável - **estamos contratando!** (_fluência em polonês escrito e falado é necessária_).
|
||
|
||
{% embed url="https://www.stmcyber.com/careers" %}
|
||
|
||
\\
|
||
|
||
***
|
||
|
||
**De**: [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)
|
||
|
||
## Solução 1
|
||
|
||
Baseado em [https://joshspicer.com/android-frida-1](https://joshspicer.com/android-frida-1)
|
||
|
||
**Intercepte a função \_exit()**\_ e a **função de descriptografia** para que ela imprima a flag no console do frida quando você pressionar verificar:
|
||
```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.");
|
||
});
|
||
```
|
||
## Solução 2
|
||
|
||
Baseado em [https://joshspicer.com/android-frida-1](https://joshspicer.com/android-frida-1)
|
||
|
||
**Intercepte verificações de root** e a função de descriptografia para que ela imprima a flag no console do frida quando você pressionar verificar:
|
||
```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.");
|
||
});
|
||
```
|
||
<figure><img src="https://files.gitbook.com/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L_2uGJGU7AVNRcqRvEi%2Fuploads%2FwdlXOpyZOVGNzyhOiiFK%2Fimage%20(1).png?alt=media&token=13f4d279-7d3f-47ce-a68e-35f9a906973f" alt=""><figcaption></figcaption></figure>
|
||
|
||
Se você está interessado em **carreira de hacking** e hackear o inquebrável - **estamos contratando!** (_é necessário polonês fluente escrito e falado_).
|
||
|
||
{% embed url="https://www.stmcyber.com/careers" %}
|
||
|
||
<details>
|
||
|
||
<summary><strong>Aprenda AWS hacking do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
||
Outras formas de apoiar o HackTricks:
|
||
|
||
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
||
* Adquira o [**merchandising oficial do PEASS & HackTricks**](https://peass.creator-spring.com)
|
||
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
||
* **Junte-se ao** 💬 [**grupo do Discord**](https://discord.gg/hRep4RUj7f) ou ao [**grupo do telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
||
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios do github** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
||
|
||
</details>
|