Auteur Sujet: émulateur Android pour Linux avec problème d’accélération  (Lu 1198 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne nonsolum

  • Membre régulier
  • **
  • Messages: 123
  • +7/-6
Bonjour à tous,

Objectif :
Mise en place d’un émulateur Android sous Linux avec accélération matérielle

Ma config :

Machine virtuelle Linux sous VirtualBox avec hôte Windows 10
Mon Linux :
root@kali6:~# uname -a
Linux kali6 5.4.0-kali4-amd64 #1 SMP Debian 5.4.19-1kali1 (2020-02-17) x86_64 GNU/Linux
root@kali6:~#
Dans ma config VM de VirualBox :


Parmi les prérequis pour la mise en place d’un émulateur Android :

1)   Installation d’Android-studio et de son SDK Manager

téléchargement depuis https://developer.android.com/studio#downloads
et installation par root@kali6:/opt/android-studio/bin# ./studio.sh
OK : pas de problème

2)   Pourquoi un accélérateur de l'émulateur Android pour l’architecture Intel ou AMD ?


Lorsque je lance AVD Manager l’outil de Android-Studio permettant de virtualiser des appareils Android
J’ai ceci :



Conclusion :
L’installation de l’accélérateur matériel est le passage obligé.
Sans cela impossible de lancer l’émulateur Android.

Pour ce faire il faut jeter un coup d’œil sur le tutorial de Developpez.com
https://intel.developpez.com/tutoriels/acceleration-emulateur-android/
Certains points du  tutorial, qui date un peu, sont obsolètes mais les grandes lignes restent valables.

3)   Il faut s’assurer que tout est OK pour la virtualisation dans mon BIOS

a) Autoriser la virtualisation :

Intel (VMX) Virtualization Technology [enabled]
b) Pour faire de la virtualisation imbriquée (émulateur Android dans VM VirtualBox) je coche le paramètre :

Vt-d [enabled]

4)   Je vérifie si mes paramètres du Bios ont été effectivement pris en charge.

Je teste alors si les mots « vmx » ou « svm » sont bien dans le fichier /proc/cpuinfo qui contient toutes les informations de ma CPU.
vmx – (intel)
svm – (amd)

root@kali6:~# grep -E 'vmx|svm' /proc/cpuinfo
root@kali6:~#
La commande ne trouve pas ces flags de la CPU (vmx pour ce qui concerne mon architecture).

Par contre j’ai comme flag CPU « hypervisor » :

root@kali6:~# grep -E 'hypervisor' /proc/cpuinfo
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq monitor ssse3 cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx rdrand [glow=red,2,300]hypervisor[/glow] lahf_lm abm 3dnowprefetch invpcid_single pti fsgsbase avx2 invpcid rdseed clflushopt flush_l1d
root@kali6:~#

Je ne sais pas quoi en penser.
Rappelons que mon système Kali est une machine virtuelle sous ViirtualBox.

Je décide toutefois de continuer.

5)   Mise en œuvre de l’accélérateur matériel :

Il faut installer l’hyperviseur KVM sous Linux, un hyperviseur de type 1 qui, si j’ai bien compris, apporte aussi l’accélération matérielle.
(le type 1 intervient au niveau du noyau)
Je fais alors :

root@kali6:~# apt-get install qemu-kvm virt-manager
C’est ce que j’ai dans les dépôts de Kali : le paquet gemu-kvm.
J’ai installé en plus un outil de virtualisation virt-manager.(pendant à AVD Manager)

6)   Je me porte ensuite sur le SDK Android :



Mais je ne trouve pas dans ma configuration du SDK Android de moyen pour indiquer que l’accélération doit être prise en compte.

Aurais-je manqué quelque chose ?
 Merci pour votre aide.

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2618
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #1 le: 11 mars 2020 à 18:32:23 »
Pourquoi mettre Kvm comme accélateur dans ta VM si tu as besoin d'un Vt-X ?

Généralement l'accélération matos c'est bancale quand tu virtualise déjà de base mais normalement faisable.

Et je n'ai jamais utilisé Android studio car c'est une usine.

Anbox je prefère largement comme virtualisation sous linux :) As tu un besoin précis d'installer android studio qui est plus un IDE qu'autre chose ?
« Modifié: 11 mars 2020 à 19:12:28 par ZeR0-@bSoLu »
Mess  with the bests.
Die like the rest.

Hors ligne nonsolum

  • Membre régulier
  • **
  • Messages: 123
  • +7/-6
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #2 le: 12 mars 2020 à 11:14:52 »
Pourquoi mettre Kvm comme accélateur dans ta VM si tu as besoin d'un Vt-X ?

Généralement l'accélération matos c'est bancale quand tu virtualise déjà de base mais normalement faisable.

Et je n'ai jamais utilisé Android studio car c'est une usine.

Anbox je prefère largement comme virtualisation sous linux :) As tu un besoin précis d'installer android studio qui est plus un IDE qu'autre chose ?

J’ai installé Android Studio pour deux raisons :

Premièrement :
Je souhaitais m’initier au développement des applis Android.
Principalement pour mieux comprendre les mécanismes en jeu.

Deuxièmement :
Android Studio implémente des outils dont j’ai besoin SDK Manager et AVD Manager, un émulateur basé sur QEMU.

C’est ce dernier outil qui exige une accélération matérielle.
Je rappelle que j’ai déjà procédé à la même opération sous Windows pour mettre en œuvre le pentest « Drozer »
Voir le sujet que j’ai ouvert précédemment :
https://www.kali-linux.fr/forum/index.php/topic,6850.0.html

Sous Windows l’émulateur AVD Manager exige, tout comme dans l’environnement Linux , un accélérateur. Pour ce faire j’ai donc utilisé :
Hardware Accelerated Execution Manager
Cet outil fonctionne très bien sous Windows.

Sous Linux on utilise un autre système d’accélération :
KVM sous Linux
Mais sous Linux j’ai quelques difficultés à le faire fonctionner.

Que ce soit, donc, sous Windows ou sous Linux un accélérateur matériel est obligatoire.
(l’émulateur refuse de fonctionner sans accélérateur)

Mais il est vrai que je pourrais utiliser Anbox si je n’y arrive pas avec Android Studio.
Je ne connais pas Anbox mais je peux essayer.
« Modifié: 12 mars 2020 à 11:22:01 par nonsolum »

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2618
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #3 le: 12 mars 2020 à 11:28:18 »
Comme je le disais, si tu utilises différentes accélérations matérielles d'un bout à l'autre cela ne peux pas marcher.

Déjà es-tu sur que ton accélération matérielle sous ta VM fonctionne ? (sans parler d'android studio)

D'autre part d'après ce que dis le message d'erreur Il te faut Vt-X et non kvm pour run AVD (cf ton screenshot), je sais bien que linux a besoin de kvm mais justement si tu regardes bien ton message d'erreur tu as la réponse à ta question.


Pour moi tu as 3 choix, soit utiliser android studio juste pour coder, soit l'utiliser sous windaube, soit utiliser un autre emulateur android qui fonctionne sous linux (Anbox en est un).

Je suis un peu simplet mais j'ai du mal à comprendre, tu as besoin d'android studio pour coder et tu veux emuler directement via lui même car flême d'utiliser un autre soft, ou tu as besoin des SDK pour autre chose à côté ce qui t'empêche d'utiliser un autre émulateur ?

P.S https://anbox.io/
« Modifié: 12 mars 2020 à 11:37:22 par ZeR0-@bSoLu »
Mess  with the bests.
Die like the rest.

Hors ligne _john_doe

  • Contributeur de Kali-linux.fr
  • Membre VIP
  • *****
  • Messages: 602
  • +34/-5
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #4 le: 12 mars 2020 à 15:31:51 »
Hello,
Ce que je ne comprends pas moi c'est pourquoi tu passes par une VM kali  .si c'est pour utiliser andoid studio qui est tres bien supporté nativement sous win.
Pourquoi ne pas rester nativement sous win pour coder et tester tes apk ?

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2618
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #5 le: 12 mars 2020 à 15:38:11 »
C'est ce que je voulais soulever par "Comme je le disais, si tu utilises différentes accélérations matérielles d'un bout à l'autre cela ne peux pas marcher." ^^'
Mess  with the bests.
Die like the rest.

Hors ligne nonsolum

  • Membre régulier
  • **
  • Messages: 123
  • +7/-6
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #6 le: 13 mars 2020 à 16:19:15 »
Merci à tous pour vos observations et suggestions.

Comme je le disais, si tu utilises différentes accélérations matérielles d'un bout à l'autre cela ne peux pas marcher.

P.S https://anbox.io/

J’ai utilisé effectivement deux accélérateurs mais dans des contextes différents : l’un Windows l’autre VM Linux.
Est-ce que l’accélérateur matériel sous la machine hôte Windows influe sur l’éventuel accélérateur de la machine virtuelle invitée Linux ?

Je ne suis pas sûr d’avoir assimilé toutes les procédures.
Peut-être certaines choses m’ont échappé.
Je récapitule ce que j’ai entrepris :

Objectif initial : faire tourner Drozer, une appli de pentest Andoid qui tourne aussi bien sous Windows que sous Linux.

1)   J’ai procédé en premier lieu à un test sous Windows :

- installation de Android Studio et de ses outils SDK et AVD (émulateur)


- installation de l’accélérateur » Hardware Accelerated Execution Manager »


- à noter que l’accélération matérielle est bien prise en compte :



- création d’un service virtuel Android

- installation de Drozer

2)   Je décide face au comportement pour le moins anarchique de Drozer d’installer le tout dans un environnement Kali  Linux (VM VirtualBox) :

 - prérequis BIOS :

Intel (VMX) Virtualization Technology       [enabled]
Vt-d                                          [enabled]
 
(ce dernier flag pour la virtualisation imbriquée)


- installation de Android Studio sous Linux


- installation de   l’hyperviseur KVM pour assurer l’accélération matérielle sous Linux.

Problème
:

Le mode accélération matérielle sous Linux semble ne pas fonctionner.
Je ne peux installer une VM Android.


Pour ce qui concerne les procédures d’accélération

J’ai suivi ce tutoriel :

https://intel.developpez.com/tutoriels/acceleration-emulateur-android/

3)   Je ne vais pas jusqu’au bout de ma démarche : je n’installe pas Drozer sous Linux.




Remarque :

D'autre part d'après ce que dis le message d'erreur Il te faut Vt-X et non kvm pour run AVD (cf ton screenshot), je sais bien que linux a besoin de kvm mais justement si tu regardes bien ton message d'erreur tu as la réponse à ta question.


P.S https://anbox.io/

Le flag Intel Virtualization Technology, VT-x n’est-ce pas ce que j’ai dans le bios :
Intel (VMX) Virtualization Technology       [enabled] ?

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2618
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #7 le: 13 mars 2020 à 17:21:09 »
Citer
Le flag Intel Virtualization Technology, VT-x n’est-ce pas ce que j’ai dans le bios :
Intel (VMX) Virtualization Technology       [enabled] ?
Modifier le message

Oui mais c'est dans le bios de quoi ? ta vm linux qui à la base run sous KVM au travers de Virtualbox ? Ou le bios de ton windows host qui va demander à virtualbox de run KVM pour lancer ton linux ?

Tu vois ou je veux en venir ? le serpent qui se mord la queue

Pour moi, je dis bien, pour moi, c'est le seul truc qui me "saute" aux yeux en lisant ton protocole d'installation.

Ce qui me conforte encore plus dans cette idée, c'est que tout semble fonctionné bien quand tu install ton Android studio sous ton windows ( je me trompe ?)
Mess  with the bests.
Die like the rest.

Hors ligne nonsolum

  • Membre régulier
  • **
  • Messages: 123
  • +7/-6
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #8 le: 14 mars 2020 à 16:54:15 »

Oui mais c'est dans le bios de quoi ? ta vm linux qui à la base run sous KVM au travers de Virtualbox ? Ou le bios de ton windows host qui va demander à virtualbox de run KVM pour lancer ton linux ?


Oui, en effet, Il me semble qu'on tourne en rond.

ça fonctionne sous Windows mais pas en VM Kali

Mais je vais essayer avec VMWare.
Je verrai bien si j'ai les mêmes problèmes.

Je reviendrai rendre compte à la communauté Kali.

Merci ZeR0-@bSoLu

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2618
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #9 le: 14 mars 2020 à 16:55:05 »
Tiens nous au courant :)
Mess  with the bests.
Die like the rest.

Hors ligne nonsolum

  • Membre régulier
  • **
  • Messages: 123
  • +7/-6
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #10 le: 26 mars 2020 à 10:35:39 »

Je reviens devant la communauté après m’être débattu avec Vmware et son réseau virtuel pendant un bon moment.

Mes essais pour mettre en place des services Android virtuelles sous Vmware ne sont pas plus concluants que sous VirtualBox.
Je dois certainement louper quelque chose dans la procédure.

Aussi j’en appelle à la communauté Kali :
Quelqu’un a-t-il l’expérience effective d’un émulateur Android avec une VM Kali ou avec une autre distribution Linux ?

En ligne ZeR0-@bSoLu

  • Administrateur
  • Membre Elite
  • *****
  • Messages: 2618
  • +144/-4
  • Pentest - Arch - Python - Kali
    • Kali-fr
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #11 le: 26 mars 2020 à 10:47:12 »
Salut,

As-tu essayé andbox comme je t'avais dis ? savoir si cela a été concluant ou pas

as tu exploré cette solution la ? : https://virt-manager.org/
« Modifié: 26 mars 2020 à 17:05:43 par ZeR0-@bSoLu »
Mess  with the bests.
Die like the rest.

Hors ligne nonsolum

  • Membre régulier
  • **
  • Messages: 123
  • +7/-6
Re : émulateur Android pour Linux avec problème d’accélération
« Réponse #12 le: 28 mars 2020 à 11:37:33 »
Salut,

As-tu essayé andbox comme je t'avais dis ? savoir si cela a été concluant ou pas


J'ai tenté d'installer Anbox mais j'ai rencontré des problèmes

https://www.kali-linux.fr/forum/index.php/topic,6905.0.html