Get SU path dynamically.

This way doesn't matter which version of su is using the phone.
This commit is contained in:
jmingov 2015-12-27 15:01:15 +01:00
parent 7979970f96
commit 879cb1f2ce

View File

@ -6,9 +6,24 @@ package com.offsec.nhterm;
// todo: Find a good way to get the paths
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class ShellType {
public static final String ANDROID_SHELL = "/system/bin/sh -";
public static final String ANDROID_SU_SHELL = "/system/xbin/su";
public static final String KALI_SHELL = "/system/xbin/su -c /system/bin/bootkali";
public static final String KALI_LOGIN_SHELL = "/system/xbin/su -c /system/bin/bootkali_login";
public static final String ANDROID_SHELL = whichCMD("sh") + " -";
public static final String ANDROID_SU_SHELL = whichCMD("su");
public static final String KALI_SHELL = whichCMD("su") + " -c /system/bin/bootkali";
public static final String KALI_LOGIN_SHELL = whichCMD("su") +" -c /system/bin/bootkali_login";
private static String whichCMD(String theCmd){
String output = null;
try {
Process p = Runtime.getRuntime().exec("which " + theCmd);
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
output = reader.readLine();
} catch (Exception e) {
e.printStackTrace();
}
return output;
}
}