A comprehensive, step-by-step guide to setting up a fully functional Android-x86 (v9.0) virtual environment inside Oracle VirtualBox. This project is specifically pre-configured to run within a unified isolated NAT Network, allowing seamless inter-VM communication and network penetration testing alongside other environments like Kali Linux.
Before initializing the virtual machine setup, ensure your host system satisfies the following conditions:
- VirtualBox: Oracle VM VirtualBox installed and operational.
- Storage: Minimum 10 GB of unallocated disk space.
- Memory: At least 2 GB (2048 MB) of free RAM allocatable to the VM.
- Network Context: A Kali Linux VM already running on a custom VirtualBox NAT Network with an assigned static/DHCP configuration (e.g., Target segment:
10.0.0.0/24).
-
Download the Installation Media: Obtain the official Android-x86 9.0 ISO file.
-
Open VirtualBox and click the New button to initialize the VM creation wizard.

-
Apply the following initial setup parameters:
- Name:
Android9-Lab - Folder: Choose your preferred directory (e.g.,
C:\Users\<username>\Virtual VMs). - ISO Image: Click the dropdown β Select Other... β Browse and select your downloaded Android-x86 ISO.
- Type:
Other - Version:
Other/Unknown (64-bit)
- Name:
- Click Finish to provision the base container.
Select the newly created Android9-Lab machine, click Settings, and optimize the core configurations:
-
Motherboard:
-
Processor:
-
Acceleration:
- Paravirtualization Interface: Change from Default to
KVM(Crucial for Linux-based Android kernel performance).
- Paravirtualization Interface: Change from Default to
- Screen:
- Video Memory: Minimum
64 MB(128 MB recommended for UI fluid stability). - Graphics Controller: Select
VBoxVGAorVBoxSVGA(with 3D Acceleration toggled) based on your hardware compatibility.
- Video Memory: Minimum
Click OK to preserve variations. Click Start to run the initial OS installation wizard, keeping defaults via prompt selections. Shut down the machine cleanly upon successful installation.
To group this Android deployment under the same physical broadcast domain as your pentesting tools (e.g., Kali Linux), modify the internal adapter properties:
- Re-open Settings β Navigate to the Network tab.
- Configure Adapter 1 exactly as follows:
- Attached to:
NAT Network - Name: Select your unified lab network configuration (e.g.,
NatNetwork). - Adapter Type:
Intel PRO/1000 MT Desktop (82540EM)(Optimized hardware emulation driver for Android kernel). - Promiscuous Mode:
Allow All(Permits complete network monitoring/sniffing capabilities within the network segment).
- Attached to:
Click OK to seal the virtualization network path.
-
Inside the Android Graphical User Interface, navigate to:
SettingsβNetwork & InternetβWi-Fi -
Toggle the switch to On and connect to the emulated
VirtWifiaccess point.
-
Verification Test: Launch a local terminal application or shell session inside Android and execute the standard ICMP loopback verification:
ping -c 4 google.com
If packets resolve successfully with minimal latency, your isolated environment has proper outbound internet routing active.
Android-x86 frequently drops into power-saving sleep modes, causing unresolvable black screens due to VirtualBox driver limitations. To permanently prevent this:
- In Android UI, go to
SettingsβDisplayβAdvancedβSleepβ Set to Never. - Go to
SettingsβSecurityβScreen lockβ Set to None. - Alternative Terminal Fix: Press
Alt + F1to drop into the shell console and run:Presssvc power stayon trueAlt + F7to return safely to the desktop GUI.
This documentation is explicitly structured for internal lab architecture, defensive auditing, and training environments. Ensure all exploitation operations executed inside this network layout comply strictly with localized authorization and compliance frames.


