Обнаружен корень агента WSO2 EMM

сегодня я установил сервер WSO2 EMM в качестве альтернативы нашему существующему программному обеспечению mdm. Моя компания занимается созданием собственных Android-смартфонов и планшетных ПК со стандартным Android 4.x.x. Я установил Android EMM-Agent и получил информацию о том, что мое устройство рутировано.

Вы не можете зарегистрироваться, потому что ваше устройство рутировано

Но рута на телефоне нет.

Итак, как я могу сказать агенту, что устройство не рутировано? Или стоит поговорить с разработчиками?


person edv    schedule 22.08.2014    source источник


Ответы (2)


У меня такая же проблема ...

Вы можете обойти эту проблему, изменив источник агента, чтобы обойти корневой тест!

Это в файле Root.java, функция isDeviceRooted(), просто прокомментируйте три строки теста:

public boolean isDeviceRooted() { 
    // if (checkRootMethod3()){return true;}
    // if (checkRootMethod2()){return true;}
    // if (checkRootMethod1()){return true;}
    return false;
}
person jpcordeiro    schedule 08.09.2014

Другой способ - проанализировать, как агент обнаруживает, что ваше устройство рутировано ...

Код следующий:

/**
*Returns true if the OS build tags contains "test-keys"
*/
public boolean checkRootMethod1(){
    String buildTags = android.os.Build.TAGS;

    if (buildTags != null && buildTags.contains("test-keys")) {
        Log.e("ROOT CHECKER", "ROOT METHOD 1");
        return true;
    }
    return false;
}
/**
*Returns true if the device contains SuperUser.apk which is stored into the device in the rooting process
*/
public boolean checkRootMethod2(){
    try {
        File file = new File("/system/app/Superuser.apk");
        if (file.exists()) {
            Log.e("ROOT CHECKER", "ROOT METHOD 2");
            return true;

        }
    } catch (Exception e) { }

    return false;
}
/**
*Executes a shell command (superuser access with su binary) and returns true if the command succeeds
*/
public boolean checkRootMethod3() {
    if (new ExecShell().executeCommand(ExecShell.SHELL_CMD.check_su_binary) != null){
        Log.e("ROOT CHECKER", "ROOT METHOD 3");
        return true;
    }else{
        return false;
    }
}

Итак, есть 3 проверки:

  1. у вас есть цепочка «тест-ключей» на ваших Android buildTags!
  2. у вас есть Superuser.apk на вашем устройстве!
  3. ваше устройство действительно рутировано, потому что вы можете выполнить команду оболочки с правами суперпользователя !!!
person jpcordeiro    schedule 08.09.2014