22. april 2016

How to remove server-sided cheat detection error (Smali)


Got this error and you can't find the string anywhere in the APK file? Well, the string are stored in the server. It uses JSON script to detect unofficial version of APK and retrieve the string, but it is still possible to remove the error completely

I used the game Hero Legend as an example

Requirements:
CatLog app. Download from Play Store
Any APK tool for computer. I'd recommended APK Easy Tool
Notepad++ installed on your computer

Find errors in logcat and find useful JSON strings
What is logcat?: The Android logging system provides a mechanism for collecting and viewing system debug output. Logs from various applications and portions of the system are collected in a series of circular buffers, which then can be viewed and filtered by the logcat command. You can use logcat from an ADB shell to view the log messages.


Open the CatLog app, press on menu button (3 dots vertical icon), and tap Record


Name the file

Press the home button to minimize the app. Run the game and reproduce the error. After you see the error, close the game, open Catlog app and stop recording


Start from the bottom Start and scroll up to find something interesting. Or you can search "cracked"

If you found this, it means you closed the app or the game has crashed or force stopped.


Aha, there are the words we have seen in the game. Instead searching after words, look at the strings, "data, "authDesc" etc... (marked in red) and remember or note it.

 

Backup the .APK and copy it to your computer.

Decompile an APK using any APK tool

Open Notepad++. Click "Search" -> "Find in Files..."

 

Select the path of decompiled APK and searchone of the useful string you have seen in the logcat. Do NOT the words!
I searched "authdesc" as my example.


You will see the results below. Double-click on it to open the file


The string is highlighted


The code is too long in the function so we are not sure if removing the whole code is an idea. Now let's find the "OK" string you have seen in the game, in the same file to see if it is located in the same function or another function


This code looks interesting.

Null the function by replacing with

    .locals 0
          
    return-void

So the code will look like:



Save the file and now you can enjoy modding the game without cracked version error

Credit:
iAndroHacker

0 kommentarer:

Send en kommentar