Android Analysis

Android time travel debugging for mobile app security

Test your release build with its protections on. Epoch records your app on a full Android system from the outside, with nothing installed in the phone, so your team and an AI agent can answer security questions with evidence at the exact instruction.

Agentic reverse engineering
On-premises by design
ARCH
Intel · Arm
SYSTEMS
Windows · Linux · Android · IoT
Android time travel debugging in Epoch Analysis: an app's root check tagged MASVS-RESILIENCE on the instruction that probes for Magisk
Android Analysis

Android time travel debugging for mobile app security

Test your release build with its protections on. Epoch records your app on a full Android system from the outside, with nothing installed in the phone, so your team and an AI agent can answer security questions with evidence at the exact instruction.

Android time travel debugging in Epoch Analysis: an app's root check tagged MASVS-RESILIENCE on the instruction that probes for Magisk
ARCH
Intel · Arm
SYSTEMS
Windows · Linux · Android · IoT
The problem

Mobile apps are built to be hard to look inside.

App protections

The app detects your tools

Root, hooking and debugger checks spot your setup. The app changes what it does, or closes before you see anything.

Native code

The answer is outside the code you hooked

Hooks show the functions you chose. Packed native libraries, the Android framework and the kernel stay out of view.

User journeys

Every look means replaying the journey

Launch, log in, type a PIN on a scrambled keypad. Miss the moment and you start again, and the next run may differ.

Enter Epoch

Full-system record and replay for Android.

01 · Emulate
A real Pixel 6, ready to record

Twin.a, our Android emulator, runs a full-system Google Pixel 6 on any Android version up to the latest. Built on QEMU, it makes runtime data from userland and the kernel available, with pre-built OS-specific symbols. It resumes in seconds from a snapshot taken once Android has started. Install your APK and save a snapshot at any step.

Ask your AI
On the Pixel 6, install app.apk from the inputs and open it.
✦
Done. Snapshot “app launched” saved, so every recording starts from here.
A Pixel 6 running in Epoch Studio, ready to record
02 · Record
Full-system recording

Epoch records the whole phone from the outside, in one trace: every instruction, register and memory access of your app’s native code, the Android runtime, the framework and the kernel. Nothing is installed in the phone, so the app runs as it would for a user.

Ask your AI
From “app launched”, enter the identifier 12345668, type 012345 on the secure keypad and validate.
✦
Recorded: 2.33 billion instructions, the whole system. The app answered “wrong credentials”.
Epoch Studio recording the whole Android system
03 · Analyze
Time travel debugging

In Epoch, move backwards from any screen to the code behind it. Search the strings the app used and every call to a function, follow the PIN with taint analysis, and tag the instructions that answer your test cases.

Ask your AI
This app checks a PIN. Find the comparison that decides whether it’s accepted, and tag it.
✦
Tagged: the branch that rejected the PIN and led to “wrong credentials”.
Time travel debugging in Epoch Analysis: a Magisk check tagged MASVS-RESILIENCE
Try it for free

Explore a full Android recording, kernel included.

Android
arm64
Kernel

Open Epoch in your browser on a full-system recording of a Pixel 6. Step backwards and forwards through any instruction, check the registers and memory at any moment, and jump between the bookmarks we left on the key moments.

Explore the trace ↗
No install. No credit card. No ID.
Two full-system Android recordings in the free Epoch demo
Without Epoch vs with Epoch

A live session ends. A recording stays.

Without Epoch, every look at the app is a new live session. With Epoch, the whole phone is recorded once, and every answer points to an instruction anyone can check.

Capability
Without Epochlive analysis on a phone
With Epochfull-system time travel debugging
Getting to the moment
By hand, every run
Once, from prompts and snapshots
What you see
The app’s process
The whole phone, kernel and screen included
A moment you missed
Run it again
Go back to it in the recording
By hand, hook by hook
Automatic, through calls and system calls
App protections
Can detect your hooks
Nothing in the app to detect
Evidence
A report
Tags on the instruction, for anyone to check
Follow-up questions
Another round
Ask the same recording
esReverse

One platform for the whole investigation.

esReverse brings Epoch and the mobile tools your team already uses into one shared workspace, so what you find doesn’t disappear when a session ends.

Your mobile tools, in the same project

ADB, Frida, Ghidra or Binary Ninja sit next to the trace. Download any binary that ran, and read its code next to what it actually did at runtime.

Work on the same recordings

Every Epoch recording is shared with the project’s members. Tags and comments stay on the exact instruction, so when one analyst finds where the PIN is processed, the next one starts from there.

Build on every release

Recordings, snapshots and test results stay in the project, so the next version of the app starts from what the team already knows.

Who it’s for

For mobile teams who need to see what the app really did.

Mobile AppSec

Answer OWASP MASVS questions in-house, with evidence anyone can check.

Mobile pentesting

Test the store build, not a stripped one, and go back to any check as often as you need.

App protection

Show that your root and hooking checks run, and what the app does when they fire.

Mobile developers

Go back from a crash or a wrong value to its cause, in Kotlin or in native code.

Talk to an expert

Let’s look at your Android app.

Tell us what you need to check: a protection, a credential flow, a native library or a crash. We’ll see whether it’s a good fit and walk you through the workflow on an app like yours.

Android Analysis with eShard · what’s included
The workflow
✓
Twin.a
Full-system Google Pixel 6 emulation, up to the latest Android version
✓
Epoch
Analyze your app on the full Android system with time travel debugging
Collaboration
✓
esReverse
One workspace where your team shares the recordings, the findings and its tools
Deployed on your premises.

We use your details only to reply to this request.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
FAQ

Frequently Asked Questions

We are always here to help you and answer your questions.

We are always here to help you and answer your questions.

How is this different from a mobile app security testing (MAST) tool?

MAST tools scan the APK or test the app from the inside, often on a build with its protections removed. Epoch records the build you ship on a full Android system and keeps the recording as evidence. It works alongside your scanner, to answer the questions a scan can’t, at the instruction.

Can we test root detection and RASP on the build we ship?

Yes. Nothing is installed in the phone: Epoch records it from the outside, so you can see where each check runs, what it reads and what the app does with the result. The app does run on a virtual phone, and some apps check for that. Apps that need hardware such as a SIM card or a fingerprint sensor can be traced on a real phone with Frida instead.

Can Epoch produce OWASP MASVS evidence?

Yes. You tag the instructions that answer each test case with the MASVS control, for example MASVS-RESILIENCE for a root check. The tags stay with the recording, so anyone on your team, or an auditor, can check the finding.

Does it cover native code as well as Java and Kotlin?

Yes. Epoch records every instruction on the phone, 64-bit and 32-bit Arm code alike, so the app’s native libraries, the Android runtime, the framework and the kernel are all in the same trace.