IT分销/经销中间件

“破解”WebSphere密码方法集锦

常在河边走,哪有不湿鞋,中最让人无语的是把密码忘记了。管理控制台也好,数据源的密码也好,配置的时候为了满足安全管理的要求了8位以上、大小写皆有、毫无意义的密码,现在两眼一抹黑,怎么都试不出来。怎么办?重装?生产好不好。其实不用着急,还是给我们留了一条后路的。
  管理控制台密码遗忘有两种补救措施:
  方法一:命令行——从$WAS_HOME/profiles/xxx 概要文件名/bin目录下,运行 wsadmin -conntype NONE 。当wsadmin的命令行窗口出现之后,运行 securityoff 。上述操作在启动或停止的状态都能发出。再次启用时,就是停用管理安全性的状态了。
  方法二:修改配置文件——修改$WAS_HOMEconfigcellsxxx 下的security.xml,把第一个enable改成false就取消安全性了。
  详细说明http://www-01.ibm.com/support/docview.wss?uid=swg21105430
  以上两种方法是禁用了全局安全性(global security),最后别忘了设置新的密码然后再次启用。
  下文是讲述如何“破解”出WebSphere中其它密码的方法:
  转自Sunny’s 部落格
  http://www.sunnyblog.info/blog/archives/3149
  WebSphere会在配置文件(一堆的XML)当中存放各种密码(包括数据源、认证别名等等),例如在$WAS_Profile_HOMEconfigcellssecurity.xml文件里面有类似””,就是存放认证别名为oracleDBA的用户名和密码。
  可以看到在这里密码被重新编码(encode)了,编码的方式是XOR(eXclusive OR异或),很明显这种并不是一种强加密的算法,仅仅是一种编码而已,所以准确来说WebSphere为了避免密码被明文记录,只是很简单地“编码”(encode)而不是“加密”(encrypt)。
  万一阁下一个不小心忘记了存放在WebSphere里面的密码,但是又想恢复过来的话,WebSphere这种只是编码而不是加密的存放密码形式,就帮助了你了。当然如果你想干坏事的话,WebSphere也算是给自己留下了一个“后门”了 -_-b。嘿嘿嘿,不要以为IBM那帮老爷子就是这么懒,如果阁下真的是要对存放在WebSphere配置文件里面的密码要加密的话(对于广大客户肯定是有这个诉求的),其实IBM也提供了一种自定义加密算法的插件形式去这个问题的,详情可以参考这个链接,在这里就不对这个问题进行展开讨论了。
  好了,现在就对各个版本的WAS的密码编码和反编码进行讨论:
  WAS 5.X的编码:
> cd $WAS_INSTALL_DIR/lib
> ../java/bin/java -cp securityimpl.jar:iwsorb.jar com.ibm.ws.security.util.PasswordEncoder 123456
  WAS 5.X的反编码:
> cd $WAS_INSTALL_DIR/lib
> ../java/bin/java -cp securityimpl.jar:iwsorb.jar com.ibm.ws.security.util.PasswordDecoder {xor}bm1sa2pp
  WAS 6.0的编码:
> cd $WAS_INSTALL_DIR/lib
> ../java/bin/java -cp securityimpl.jar:iwsorb.jar::ras.jar:wsexception.jar:bootstrap.jar:emf.jar:ffdc.jar com.ibm.ws.security.util.PasswordEncoder 123456
  WAS 6.0的反编码:
> cd $WAS_INSTALL_DIR/lib
> ../java/bin/java -cp securityimpl.jar:iwsorb.jar::ras.jar:wsexception.jar:bootstrap.jar:emf.jar:ffdc.jar com.ibm.ws.security.util.PasswordDecoder {xor}bm1sa2pp
  WAS 6.1的编码:
> cd $WAS_INSTALL_DIR/binProfileManagementpluginscom.ibm.websphere.v61_6.1.200
>-cp ws_runtime.jar com.ibm.ws.security.util.PasswordEncoder 123456java
  WAS 6.1的反编码:
> cd $WAS_INSTALL_DIR/binProfileManagementpluginscom.ibm.websphere.v61_6.1.200
> java -cp ws_runtime.jar com.ibm.ws.security.util.PasswordDecoder {xor}bm1sa2pp
  以上内容参考转载自robertmaldon
  当然,如果你觉得很麻烦的话,其实也有一个网站直接帮你解码:WebSphere Password Decoder
参与8

7同行回答

jingyufanjingyufan系统工程师招商银行
收藏了,多谢!显示全部
收藏了,多谢!收起
互联网服务 · 2012-04-23
浏览906
sitting2002sitting2002系统工程师华为代维
这个终有一天会用到的 先收藏了 哈哈显示全部
这个终有一天会用到的 先收藏了 哈哈收起
IT分销/经销 · 2012-04-10
浏览777
star120120star120120技术支持DC
这个要定:victory:显示全部
这个要定
:victory:收起
IT分销/经销 · 2011-03-28
浏览861
roottanroottan商业智能工程师BCC
好东西,备用,:)显示全部
好东西,备用,:)收起
金融其它 · 2011-03-15
浏览817
penguinhepenguinhe项目经理成方金融信息技术服务有限公司
LZ太牛了显示全部
LZ太牛了收起
互联网服务 · 2010-09-11
浏览841
资料资料系统工程师
学习了,收藏了显示全部
学习了,收藏了收起
IT分销/经销 · 2010-09-11
浏览801
jack914jack914软件育新
收藏了。显示全部
收藏了。收起
2010-07-13
浏览803

提问者

yudan
系统工程师1
擅长领域: 中间件应用服务器服务器

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2010-06-25
  • 关注会员:1 人
  • 问题浏览:8355
  • 最近回答:2012-04-23
  • X社区推广