viki3d / change-imei-android

Android
69 stars 19 forks source link

Change-IMEI-Android

What is Change-IMEI-Android ?

Change-IMEI-Android is an Android App, which can help you to change(*spoof) the IMEI of your phone.

This app is free. No advertisements. Double-SIM phones support.

Your IMEI is not actually changed. The IMEI is physically stored in phone as a file. This file is not modified. Changing of IMEI is done in the following way: The Android OS is patched, so when it read the IMEI from the file - the result is replaced with the user's predefined value. This happens in the memory (runtime). The final result is: Android OS reads the real IMEI but reports the predefined value. This is called IMEI spoofing.

Change-IMEI-Android is not a standalone app. It is just a module for a framework called EdXposed. This framework is starting before the Adroid OS, loads it's modules, so then can work.

Prerequisites

To be able to run this app - you need to complete this steps:

  1. Unlock your phone's bootloader
  2. Root your phone
  3. Install Magisk (flash from Recovery /like TWRP/)
  4. Install Magisk Manager (Android app, managing Magisk) more info here
  5. Install Riru (from Magisk as Magisk module). This injects into Android Zygote process. Required by all Riru Modules (EdXposed)
  6. Install Riru-EdXposed framework (from Magisk as Magisk module). This will install EdXposed framework + EdXposed Android Manager App
  7. Install Change-IMEI-Android. Download here

How to run/use the app:

  1. Ensure all prerequisites are met
  2. Run the EdXposed App and activate the module Change-IMEI-Android
  3. Open the App Change-IMEI-Android and check what you want to spoof: IMEI-1, IMEI-2, or else; Set wanted values
  4. Restart phone
  5. Check if everything is ok by opening Settings; If something is wrong - open EdXposed App and see Logs.

Supported Android versions

This app has been made especially for Lineage OS 17 (with Android 10). Older Android versions are not supported since another (older) API is used to read the data (IMEIs, etc). To cover these old APIs more code is needed (and I have not enought time to support them now).

Tested configuraions

- Magisk v21.4 (21400)
- [Magisk module] Riru v25.4.4.r426
- [Magisk module] Riru-EdXposed v0.5.2.2_4683

Changing IMEI

Remarks about changing IMEI

In some countries (like UK) changing the IMEI is considered illegal. But tracking people without their explicit knowledge and acceptance is also illegal. This app doesn't actually change your IMEI (but spoof it in runtime). However, if changing IMEI is not allowed in your country - you'd better not use this app or use it on your own risk.

Changing IMEI is considered bad in some countries for a purpose to avoid stolen phones to be re-selled. However, in some EU countries you will not get any help from authorities or carrier to get your phone back (even you provide them with the original invoice, guarantee and phone box). This means they do not use IMEI tracking to help you re-gain your phone but just to track you. Information about IMEI tracking abusement is available in Internet: tracking women in Saudi Arabia, tracking political oppositionists in Russia, etc.

Invalid IMEI
Your carrier can detect if your IMEI is invalid or has been banned. In these cases - you will not be able to access the carrier's network and can not make phone calls. There are many IMEI generators in Internet, where you can generate valid IMEI numbers.

Benefits of changing IMEI

When changing IMEI is useless
Changing IMEI can not hide you. If you are using a phone (connected to carrier/network) you location is known within few meters. Your locations (daily route map) is stored at carrier's db forever. You are being tracked by: proximity to other phones, IP address, WiFi network, browser's unique id, OS unique id, your accounts etc. So changing your IMEI can achieve only very small piece of privacy and is very naive to consider that spoofing your IMEI can hide you.

Xposed, EdXposed, LSPosed

What are Xposed, EdXposed, LSPosed? Initially a Xposed framework was released but for the new Android versions another versions of this framework appeared. Briefly:

Update

The module is now (2023) working with current version of LSPosed, which supports Android versions from 8 to lastest (until now) - 14.

Unfortunately the LSPosed framework is so badly designed, so that works only with pre-set apps. This means if you are hiding some of your phone properties like deviceId, ImeiSlotId, Imei, etc and install a new app - it will see their real values. This fact is critical that make the framework purpose obsolette. Now I should find some time for 1] patch LSPosed (and make a patch script so the new versions to be automatically patched) so it became reliable 2] Update this module (some more things are added to LSPosed) 3] I'm thinking to release the code but not any time to clean it for the repo; this will be my lowest priority.

Download

change-imei-android.

Download here