Posted on 2 Comments

Complete guide to sqlmap

Hello, aspiring ethical hackers. In our previous blogpost, you learnt what SQL injection is, different types of sql injection attacks etc. In this blogpost, how to perform SQL injection with a tool named sqlmap. Sqlmap is an open source penetration testing tool that automates the process of detecting and exploiting SQL injection flaws and taking over of database servers. For this tutorial I am using Vulnerawa as target.

Sqlmap1

sqlmap is pre-installed in Kali Linux. Open sqlmap from the path as shown below.

Sqlmap8

Now copy the vulnerable url and type the following command the terminal. Here -u stands for url.

Sqlmap9

The result will be as shown below. It will reveal the website technology and the scripting language used.

SQL injection with sqlmap

1. Grab the banner of the target:

Now let’s grab the banner of the website. Type the following command and hit “Enter”.

Sqlmap11

You can see the banner as shown below.

Sqlmap12

2. Find the current user of the website:

To see the current user of the website, type the following command.

Sqlmap13

The current user can be seen as below.

Sqlmap14

3. List the current database:

Now let us see the current database used by the website. Type the following command.

Sqlmap15

We can see that the current database is “Vulneraw”.

Sqlmap16

4. List all the tables in a specific database:

Now let us see all the tables present in the database “Vulneraw” by using following command.

Sqlmap17

We see that we have only one table in the current database. The table is “users”.

Sqlmap18

5. List the number of columns in a specific table:

Now lets see the number of columns in the table “users”. Type the following command.

Sqlmap19

We see there are four columns in table “users”.

Sqlmap20

6. Dump the values of specific columns in a table:

Now let’s dump the values of two columns username and password by typing the following command.

Sqlmap21

The result is as below. we got the username and passwords.

Sqlmap22

7. Dump all values of a table:

If we want to dump all the entries of the table, type the following command.

Sqlmap23

Here are the entries.

Sqlmap24

8. Grab a shell on the target:

Now let’s see if we are lucky enough to get the shell of the target. Shell is the target machine’s command line or terminal. Type the following command.

Sqlmap25

It will prompt us to enter the application language being used by the website. We already know it is PHP. Enter its value. Next it will prompt you to enter the writable directory. You cam choose your option wisely. I chose the default root directory for Wamp server. Hit on “Enter”.

Sqlmap26

I successfully got the os-shell. Now let’s try some commands. Type “dir” to see the contents of the root directory. It works as shown below.

Sqlmap27

Let’s see how many users are there on the system. Type the command “net user” . We can see the users listed as below. Happy hacking practice.

Sqlmap28

To find sites vulnerable to this sql injection use google dork “site:.com inurl:id=1” or similar dorks. That’s all in this tutorial.

Posted on 20 Comments

Havij SQL injection tool: Complete guide

Hello, aspiring ethical hackers. In our previous blogpost, you learnt what SQL injection is and different types of SQL injection attacks. In this blogpost, you will learn about Havij, an automated SQL injection tool. Havij is a SQL Injection tool that helps penetration testers to find and exploit SQL Injection vulnerabilities on a web page. It can be used to perform back-end database fingerprinting, retrieve DBMS login names and password hashes, dump tables and columns, fetch data from the database, execute SQL statements against the server, and even access the underlying file system and execute operating system shell commands.

Let me give you a complete guide on Havij in this article. First download Havij and install it.

1. Specifying the target:

Then open it and enter the vulnerable URL in the target field (for this tutorial I am using my own vulnerable webpage).

Havij1

2. List the current database:

Set the database option to ‘auto detect‘ and hit analyze. This should show you the current database name as shown below.

Havij2

3. Get Host information:

Click on the “info” tab. This will show you information about the victim’s system. We can see information like Host IP address, web server version etc.

Havij3

4. List all tables of the current database:

Click on the “Tables” tab.

Havij4

5. List all databases from the target:

Click on “Get DBs” option. This will list all the databases as shown below.

sql injection with havij

7. List tables in a certain database:

To get tables in a specific database, select the database and click on Get Tables”. This will list all the tables present in the selected database. I selected database “shunya”here.

Havij6

8. List all columns from a particular table:

We can see that there is on table ‘users’ in our database ‘shunya’ .To get columns , select the table ‘ users’ and click on “Get Columns”.

Havij7

This will list all the columns in the table. We can see that we have five columns in the table ‘users’. It’s time to dump the values of columns.

9. Dump data from the columns:

Select the columns whose data we want to dump and click on Get data”. Here I selected all the columns.

Havij8

10. Crack password hashes:

We got all the data including usernames and passwords. But passwords seem to be encrypted. No problem. Click on the password hashes and copy them. Then click on MD5″ tab and paste the password. Click on “Start”. Havij automatically decrypts the password for us. Decrypt all passwords in the similar manner.

Havij9

11. Find admin page:

Having passwords is not enough. You also need to know where to login with these passwords. Havij can do that too. Click on “Find admin”. This option finds the admin page of the website automatically. When it finds the admin page, you can try the username and passwords to get access to the website. Hope this was helpful.

Havij10