Powerful Tools
Our tools are more than just a pretty screen. Powerful, built-in tools are purpose-built by developers and security experts. They enable unprecedented mobile and IoT device accessibility and introspection.

Mobile
Mobile Security Research
Vulnerability research and introspection.
Mobile App Pentesting
App security and penetration testing.
Mobile App DevOps
App development and continuous testing.
Malware Research
Mobile malware and threat hunting.
Security Training
Virtual learning platform for professors and trainers.
Enterprise
DevOps and security testing for commercial businesses.
Government
R&D platform for agencies and service providers.
Hardware
SDLC for IoT and semiconductor OEMs.
Automotive
Virtualization platform for automotive systems.
Education
Virtual learning for professors and trainers.
Journalism
Secure solutions for media and community leaders.
Our tools are more than just a pretty screen. Powerful, built-in tools are purpose-built by developers and security experts. They enable unprecedented mobile and IoT device accessibility and introspection.
Our suite of tools help you research, debug, test and explore your virtual device.
Connect to devices via XCode, Finders, or libimobile script, and to jailbroken iOS via SSH, and Android via ADB or IDE. And use your favorite HTTP proxy/monitor, like Burp or Charles Proxy.
Browse the device filesystem directly from our UI.
Manage and install apps from the UI, ADB or IDE. And the Corellium App Browser facilitates loading, removing, and running applications right in your browser.
Capture and inspect the flow of HTTP/S traffic while transparently disabling certificate pinning.
Quickly browse the file system and deeply inspect the state of the device with a holistic view of system calls.
Easily connect the virtual device to standard debug tools like GDB and IDA, and run scripts, all in the pre-integrated Frida console.
View system and kernel logs in real time.
Forward ports over USB / lockdownd using iProxy.
Send messages to your virtual device.
Map the exact execution paths inside the kernel.
Hook into the Kernel and run short pieces of code before the trapped instruction.
Reduce device setup time by instantly returning to a previously saved state, create clones to run multiple tests from the same starting environment, or provide all students in a virtual classroom with an identical device.
Get the most out of your virtual devices with advanced kernel and device configuration.
Enable or disable patches applied to the kernel to maximize developer convenience.
Pass specific configuration flags passed to the kernel during the boot process.
Configure the random offset added to the kernel base address, preventing attackers from knowing the exact location of the kernel in memory.
Configure the random number used to seed the random number generator, preventing attackers from knowing the exact value of the random number generator.
Corellium can simulate the behavior of PAC instructions in mobile processors. You have the option to turn this feature on or leave it off.
Devices, like iPhones and Androids, have various identifiers unique to that particular device. By default, we randomize these IDs when provisioning a new device. However, you can optionally specify your own.
Configure the trust cache — a collection of hashes for known Apple system binaries. It's designed to prevent binaries that aren't signed by Apple from running for security purposes.
On applicable Corellium Android devices, you can modify the underlying number of CPU cores and RAM allocated to your virtual device, as well as enable and disable the use of GPU acceleration.
Upload a custom kernel - the program at the core of a device's operating system which has complete control over everything in the system. The iOS kernel is the XNU kernel of Darwin, whereas Android uses a modified version of the Linux kernel with further architectural changes implemented by Google.
Upload a custom device tree — a representation of hardware used by boot loaders (such as iOS' iBoot) provided to the kernel. It is a hierarchical representation of devices by connection, used by the kernel to communicate with the I/O buses and other low-level hardware.
Upload a custom ramdisk — a piece of software typically designed to upgrade the device's firmware and the NOR (flash chip the application processor boots from), as well as the baseband device (the chipset that manages all cellular antenna-related functions).
Charge Level, Health, Connection Type and Status.
Latitude, Longitude, Altitude and Time Offset.
Temperature, Light, Pressure and Humidity.
Acceleration, Gyroscope, Magnetic and Orientation.
Embed virtual mobile and IoT devices into your own browser and control the user experience.
Create your own custom virtual device models and load them onto the Corellium Virtual Hardware platform.
The Corellium API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.