wcq062821 / blog_data

0 stars 0 forks source link

p/%E9%80%86%E5%90%91-jar-e.g-dvt/ #2

Open utterances-bot opened 1 year ago

utterances-bot commented 1 year ago

逆向 jar ( e.g dvt )

java jar 逆向环境搭建 安装 jd-gui 这个工具主要用来看 java 的字节码文件(.class) 到 jd-gui/release 下载 jd-gui-windows-1.6.6.zip 解压 jd-gui-windows-1.6.6.zip 进入解压后的目录, 把jd-gui.exe 发送快捷方式到

https://www.skfwe.cn/p/%E9%80%86%E5%90%91-jar-e.g-dvt/

wangxugo commented 1 year ago

你好,能详细描述一下dvt的逆向么?我看了别人的逆向内容,貌似用 jclasslib不够用吧。微13728880766

wangxugo commented 1 year ago

我也是从事UVM验证的,需要使用这个软件。

wcq062821 commented 1 year ago

逆向dvt用jd-gui, jclasslib 是用来修改java字节码的, 你把我这篇文章从头到尾多读两遍就明白了,照着做就能破解了

anythingelse0 commented 1 year ago

大佬看不到图啊

wcq062821 commented 1 year ago

好了

anythingelse0 commented 1 year ago

大佬有研究新版的方法嘛,return 变成string 了 我把所有的string 都替换成 SITE ,跑起来直接exception了

/*      */ public final class a
/*      */ {
/*      */   private int a;
/*      */   
/*      */   public a(String paramString) {
/* 1000 */     int i = 134217728; if (paramString != null) if (paramString.equalsIgnoreCase("SITE")) { i = 0; } else if (paramString.equalsIgnoreCase("NONE")) { i = 16384; } else { if (paramString.indexOf("U") != -1) i = 134217729;  if (paramString.indexOf("H") != -1) i |= 0x2;  if (paramString.indexOf("D") != -1) i |= 0x4;  if (paramString.indexOf("V") != -1) i |= 0x8;  if (i != 134217728) i &= 0xF7FFFFFF;  }   this.a = i;
/*      */   }
/*      */   
/*      */   public final int a() {
/*      */     return this.a;
/*      */   }
/*      */   
/*      */   public final String toString() {
/*      */     String str = null;
/*      */     if (this.a != 134217728)
/*      */       if (this.a == 0) {
/*      */         str = "SITE";
/*      */       } else if (this.a == 16384) {
/*      */         str = "NONE";
/*      */       } else {
/*      */         StringBuffer stringBuffer = new StringBuffer();
/*      */         if ((this.a & 0x1) != 0)
/*      */           stringBuffer.append("U"); 
/*      */         if ((this.a & 0x2) != 0)
/*      */           stringBuffer.append("H"); 
/*      */         if ((this.a & 0x4) != 0)
/*      */           stringBuffer.append("D"); 
/*      */         if ((this.a & 0x8) != 0)
/*      */           stringBuffer.append("V"); 
/*      */         str = new String(stringBuffer);
/*      */       }  
/*      */     return str;
/*      */   }
/*      */ }
wcq062821 commented 1 year ago

仔细看步骤, 你找错地方了( 文件也找错了), 对照着图找特征,你仔细对比修改class里的图, 新版的代码段换到init那个段了, 你仔细找找就可以找到了。

anythingelse0 commented 1 year ago

大佬666 搞定了