mirror of
https://github.com/2006-Scape/Parabot.git
synced 2026-07-03 08:39:09 +00:00
[BUGFIX] Added redirect for issue #161
For `exec(Ljava/lang/Runtime;[Ljava/lang/String;)Ljava/lang/Process;`
This commit is contained in:
@@ -5,35 +5,40 @@ import org.parabot.core.asm.RedirectClassAdapter;
|
||||
import java.io.IOException;
|
||||
|
||||
public class RuntimeRedirect {
|
||||
|
||||
public static Runtime getRuntime(){
|
||||
return Runtime.getRuntime();
|
||||
}
|
||||
|
||||
public static int availableProcessors(Runtime r){
|
||||
return 2;
|
||||
}
|
||||
|
||||
public static long totalMemory(Runtime runtime){
|
||||
return (long) 1024;
|
||||
}
|
||||
public static Runtime getRuntime() {
|
||||
return Runtime.getRuntime();
|
||||
}
|
||||
|
||||
public static long freeMemory(Runtime runtime){
|
||||
return (long) 1024;
|
||||
}
|
||||
|
||||
public static Process exec(Runtime r,String s){
|
||||
if (s.contains("ping")){
|
||||
System.out.println("Faked attempted command: " + s);
|
||||
try {
|
||||
return r.exec("ping 127.0.0.1");
|
||||
} catch (IOException e) {
|
||||
throw RedirectClassAdapter.createSecurityException();
|
||||
}
|
||||
}else{
|
||||
System.out.println("Blocked attempted command: " + s);
|
||||
throw RedirectClassAdapter.createSecurityException();
|
||||
}
|
||||
}
|
||||
public static int availableProcessors(Runtime r) {
|
||||
return 2;
|
||||
}
|
||||
|
||||
public static long totalMemory(Runtime runtime) {
|
||||
return (long) 1024;
|
||||
}
|
||||
|
||||
public static long freeMemory(Runtime runtime) {
|
||||
return (long) 1024;
|
||||
}
|
||||
|
||||
public static Process exec(Runtime r, String[] s) {
|
||||
System.out.println("Blocked attempted command: " + s);
|
||||
throw RedirectClassAdapter.createSecurityException();
|
||||
}
|
||||
|
||||
public static Process exec(Runtime r, String s) {
|
||||
if (s.contains("ping")) {
|
||||
System.out.println("Faked attempted command: " + s);
|
||||
try {
|
||||
return r.exec("ping 127.0.0.1");
|
||||
} catch (IOException e) {
|
||||
throw RedirectClassAdapter.createSecurityException();
|
||||
}
|
||||
} else {
|
||||
System.out.println("Blocked attempted command: " + s);
|
||||
throw RedirectClassAdapter.createSecurityException();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user