LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 4154|回复: 9

破解Jboss部署war文件中的USB加密狗的方法,可行吗!

[复制链接]
发表于 2006-1-21 04:22:29 | 显示全部楼层 |阅读模式
有个基于web的应用,用war打包,Jboss做服务器的软件。这个软件是用USB狗防护,每次安装和正式运行都需要狗,很麻烦。我想去掉它!我的方法如下:
1.停止Jboss服务器。
2.用解压软件(alZip)解压war文件,找到访问加密狗的部分,用JAD反编译,修改后重新编译,编译都没问题。
3.复制JDK/bin/jar.exe到解压的文件夹,用如下的命令生成war文件
  jar   cvf    xxx.war   .(点)      然后用解压软件删除其中多余的jar.exe  
4.将生成的新xxx.war复制到jboss的server/default/deploy下
5.重新启动Jboss服务器,启动过程正常
   可当访问的时候,服务器输出:java.util.zip.ZipExetion :invalid entry size (excepted 404946592 but got 0 bytes)…很多错误信息。
   从错误来看,是文件大小不对了,难道是压缩方法或工具错了?
   朋友们,能告诉我错在哪里,该如何解决这个问题呢?
   这个一旦成功,我想J2EE类型软件的加密就没什么难的了。呵呵
发表于 2006-1-22 08:36:20 | 显示全部楼层

能不能把返回错误信息全copy到这里

能不能把错误信息全部粘贴在到这里, 然后再让我分析一下。 Ok?
回复 支持 反对

使用道具 举报

发表于 2006-1-22 09:28:44 | 显示全部楼层
这个方法应该没问题的,不知道是否你操作的时候打错了什么?

或者把改动的class文件,放入一个jar包里边,然后在classpath中指定。不过一定要是放在最前边的。就应该可以覆盖原来程序的那个了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-22 20:32:12 | 显示全部楼层
问题是重新打包的war文件,JBoss不支持热部署。我也不知道为什么。
部分错误信息如下:
11:41:58,633 ERROR [Tomcat5] Problem in init
java.util.zip.ZipException: invalid entry size (expected 404946952 but got 0 bytes)
        at java.util.zip.ZipInputStream.readEnd(Unknown Source)
        at java.util.zip.ZipInputStream.read(Unknown Source)
        at java.util.jar.JarInputStream.read(Unknown Source)
        at java.util.zip.ZipInputStream.closeEntry(Unknown Source)
        at java.util.zip.ZipInputStream.getNextEntry(Unknown Source)
        at java.util.jar.JarInputStream.<init>(Unknown Source)
        at java.util.jar.JarInputStream.<init>(Unknown Source)
        at org.jboss.util.file.JarUtils.unjar(JarUtils.java:241)
        at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:262)
        at org.jboss.deployment.MainDeployer.init(MainDeployer.java:799)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:736)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:709)
        at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
        at $Proxy8.deploy(Unknown Source)
        at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:305)
        at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:481)
        at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:204)
        at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:277)
        at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
        at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
        at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
        at $Proxy0.start(Unknown Source)
        at org.jboss.system.ServiceController.start(ServiceController.java:416)
        at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
        at $Proxy4.start(Unknown Source)
        at org.jboss.deployment.SARDeployer.start(SARDeployer.java:261)
        at org.jboss.deployment.MainDeployer.start(MainDeployer.java:935)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:746)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:709)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:693)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
        at $Proxy5.deploy(Unknown Source)
        at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:396)
        at org.jboss.system.server.ServerImpl.start(ServerImpl.java:293)
        at org.jboss.Main.boot(Main.java:151)
        at org.jboss.Main$1.run(Main.java:405)
        at java.lang.Thread.run(Unknown Source)
11:41:58,643 ERROR [MainDeployer] Could not initialise deployment: file:/C:/xxxx/server/default/deploy/Platform_Train.war
org.jboss.deployment.DeploymentException: invalid entry size (expected 404946952 but got 0 bytes); - nested throwable: (java.util.zip.ZipException: invalid entry size (expected 404946952 but got 0 bytes))
        at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:314)
        at org.jboss.deployment.MainDeployer.init(MainDeployer.java:799)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:736)
        at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:709)
        at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:119)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:131)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:74)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:176)
        at $Proxy8.deploy(Unknown Source)
        at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:305)
        at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:481)
        at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:204)
        at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:277)
        at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:271)
        at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:221)
        at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:891)
        at $Proxy0.start(Unknown Source)
        at org.jboss.system.ServiceController.start(ServiceController.java:416)
        at sun.reflect.GeneratedMethodAccessor6.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:141)
        at org.jboss.mx.server.Invocation.dispatch(Invocation.java:80)
        at org.jboss.mx.server.Invocation.invoke(Invocation.java:72)
        at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:242)
        at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:642)
        at java.util.jar.JarInputStream.<init>(Unknown Source)
        at org.jboss.util.file.JarUtils.unjar(JarUtils.java:241)
        at org.jboss.web.AbstractWebContainer.init(AbstractWebContainer.java:262)
        ... 67 more
11:42:07,015 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
Incompletely deployed packages:
org.jboss.deployment.DeploymentInfo@f387b02b { url=file:/C:/xxxx/server/default/deploy/Platform_Train.war }
  deployer: org.jboss.web.tomcat.tc5.Tomcat5@1d840d9
  status: null
  state: FAILED
  watch: file:/C:/xxxx/server/default/deploy/Platform_Train.war
  altDD: null
  lastDeployed: 1137814918643
  lastModified: 1137814918623
  mbeans:
回复 支持 反对

使用道具 举报

发表于 2006-1-22 20:42:05 | 显示全部楼层
Manifest 文件里边有什么内容?你修改了什么内容。

怀疑是你改的内容涉及到程序的相关的内容了。

还有,不要用 软件修改 jar 文件。你把jar.exe拷贝到根目录,然后 \jar.exe cvf 就可以了。在CJW论坛的时候经常见到这个问题,我是从来没碰到过。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-22 21:53:18 | 显示全部楼层
哦。谢谢!!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-22 21:55:44 | 显示全部楼层
问题已经基本解决了。
回复 支持 反对

使用道具 举报

发表于 2006-1-22 22:22:51 | 显示全部楼层
本来 Java 的程序加密功能就不是很好,破解也不算很难的。就是能看明白反编译的东西就可以了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-23 09:41:34 | 显示全部楼层
小弟出来江湖,不懂规矩,希望见谅。
已经破解了。可惜软件没有使用混绕,否则可就不好了。。。呵呵。
我是外行啊,请高手不吝赐教!
回复 支持 反对

使用道具 举报

发表于 2006-1-31 18:16:24 | 显示全部楼层
Post by syd168
问题是重新打包的war文件,JBoss不支持热部署。我也不知道为什么。

事实上,jboss的当前版本支持热部署的,而且这正是它的卖点!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表