Using the Safari Web Inspector with Corellium

How to Get Started Debugging JavaScript on your Corellium Device
Using the Safari Web Inspector with Corellium

In this guide, we'll set up a Corellium iOS virtual device to debug web applications using Safari's Web Inspector tool. This is useful for web developers to test rapid tweaks to CSS or troubleshoot responsive web design on an iPhone-sized display. For security researchers, the Javascript console can help identify why their fakeobj and addrof primitives aren't working.

Configure virtual device to enable web inspector

Enabling Web Inspector

First, Safari on the virtual device must be configured to enable the Web Inspector. From the home screen, select the Settings icon, scroll to Apps at the bottom, and then scroll down to Safari. On the next screen, scroll all the way to the bottom and select Advanced.

Enable the Web Inspector and return to the home screen.

Open Safari and browse to any page.

Configure Safari on the Mac

Next, ensure that the Corellium VPN is connected and then connect with USBFlux.


Corellium VPN is connected on the mac and then connect with USBFlux

USBFlux is running; 2 instances and 2 devices

If Safari is already running on the Mac, restart it fully by clicking Safari in the menu bar, followed by Quit Safari (or press ⌘Q with Safari selected) and then re-opening the application.

From the Safari menu, select Preferences and then switch to the Advanced tab. At the bottom of the window, ensure that the "Show Develop menu in menu bar" is selected. Close the Preferences window.

Advanced tab on macOS. show develop menu in menu bar

The Develop menu will now appear in the menu bar, including a list of devices that have inspectable browsers. In this case, it will include the virtual device (named "iPhone" by default) and the local Mac (named "User's Mac" in the screenshot). When mousing over the iPhone submenu, the available tabs will appear under Safari, and selecting one will open the inspector.

Develop > iPhone > iPhone submenu, the available tabs will appear under Safari
Screenshot of coding with Web Inspector on iPhone and Safari

The inspector has many features that are out of the scope of this guide, see the official documentation for additional details.

Troubleshooting

  • If you are in the cloud, always ensure you are connected to VPN with the correct configuration profile.
  • If a device is not detected properly, try closing and reopening USBFlux and Safari, in that order.

Advance Your Mobile Security Research with Corellium

Experience Corellium’s groundbreaking virtualization technology for mobile devices and discover never-before-possible mobile vulnerability and threat research for iOS and Android phones. Book a meeting today to explore how our platform can optimize mobile security research and malware analysis.