Are your Web applications, Servers & Services, Network & Network Infrastructure
Are your Web applications, Servers & Services, Network & Network Infrastructure secure?

We can perform exhaustive penetration tests on your websites and applications, servers andservices, network and network infrastructure. We can help to safe guard your website and code, servers and services, network and network infrastructure against malicious attacks and potential data theft.

Design and Implementation of Secure Websites, Services and Software
Design and Implementation of Secure Websites, Services and Software
Professional Courses of Security
Professional Courses of Security

Securing Linux/Unix
Secure Coding: Developing Defensible Applications
Advanced Exploit Development for Penetration Testers

Havij Advanced SQL Injection

16 Dec 2012



Havij is an automated SQL Injection tool that helps penetration testers to find and exploit SQL Injection vulnerabilities on a web page.
It can take advantage of a vulnerable web application. By using this software, user can 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.
The distinctive power of Havij that differentiates it from similar tools lies in its unique methods of injection. The success rate of attack on vulnerable targets using Havij is above 95%.
The user friendly GUI (Graphical User Interface) of Havij and its automated configuration and heuristic detections make it easy to use for everyone even amateurs



What's New?

  • Dump all.
  • New bypass method for MySQL using parenthesis.
  • Write file feature added for MSSQL and MySQL.
  • Loading HTML form inputs.
  • Saving data in CSV format.
  • Advanced evasion tab in the settings.
  • Injection tab in settings.
  • 'Non-existent injection value' can now be changed by user (the default value is 999999.9).
  • 'Comment mark' can be changed by user (the default value is --).
  • Disabling/enabling of logging.
  • Bugfix: adding manual database in tables tree view.
  • Bugfix: finding string columns in PostgreSQL.
  • Bugfix: MS Access blind string type data extraction
  • Bugfix: MSSQL blind auto detection when error-based method fails
  • Bugfix: all database blind methods fail on retry
  • Bugfix: guessing columns/tables in MySQL time-based injection
  • Bugfix: crashing when dumping into file
  • Bugfix: loading project injection type (Integer or String)
  • Bugfix: HTTPS multi-threading bug
  • Bugfix: command execution in MSSQL 2005





Free Version

Commercial Version

1. Supported Databases with injection methods:    
          MsSQL 2000/2005 with error
          MsSQL 2000/2005 no error union based
          MsSQL Blind
          MySQL time based
          MySQL union based
          MySQL Blind
          MySQL error based
          MySQL time based
          Oracle union based
          Oracle error based
          PostgreSQL union based
          MsAccess union based
          MsAccess Blind
          Sybase (ASE)
          Sybase (ASE) Blind
2. HTTPS support
3. Multi-threading
4. Proxy support
5. Automatic database server detection
6. Automatic type detection (string or integer)
7. Automatic keyword detection (finding difference between the positive and negative response)
8. Automatic scan of all parameters.
9. Trying different injection syntaxes
10. Options for replacing space by /**/,+,... against IDS or filters
11. Avoids using strings (bypassing magic_quotes and similar filters)
12. Manual injection syntax support
13. Manual queries with result
14. Bypassing illegal union
15. Random signature generato
16. Fully customizable HTTP headers (like referer, user agent...)
17. Loading cookie(s) from website for authentication
18. Load html form inputs
19. HTTP Basic and Digest authentication
20. Injecting URL rewrite pages
21. Bypassing ModSecurity web application firewall and similar firewalls
22. Bypassing WebKnight web application firewall and similar firewalls
23. Instant result
24. Guessing tables and columns in MySQL<5 (also in blind) and MS Access
25. Quick retrieval of tables and columns for MySQL
26. Resuming a previously saved table/column extraction session
27. Executing SQL query against an Oracle database
28. Custom keyword replacement in injections
29. Getting one complete row through a single request (all in one request)
30. Dumping data into file
31. Saving data as XML
32. Saving data as CSV format
33. Enabling xp_cmdshell and remote desktop
34. Multiple table/column extraction methods
35. Multi-threaded Admin page finder
36. Multi-threaded Online MD5 cracker
37. Getting DBMS information
38. Getting tables, columns and data
39. Command execution (MSSQL only)
40. Reading remote system files (MySQL only)
41. Creating/writing to a remote file (MySQL and MsSQL)
42. Insert/update/delete data
43. Unicode support




How to use

You can use this utility to find and potentially exploit SQL Injection vulnerabilities in web application. To use this tool, some knowledge of SQL Injection - even though abasic one - is essential. Most of what you will have to do, in typical cases, will be to enter the URL of the suceptible page, selecting the applicable method clicking 'Analyze'. Almost everything needed to reveal and make use of the vulnerabilities is done by the utility. For best results, the URL should be one that returns a normal response (rather than one that returns a 4xx response).



As of version 1.16 of the software, the evaluation/free edition of Havij is no longer available for download. However, you may still download older releases of the software which came with an evaluation edition. We cannot, nevertheless, guarantee the quality of the old evaluation editions as many bugfixes and features have been effected since then. You are advised to order the latest edition to get full benefits of the software.

Downlaod Help (chm format)



Former Versions

Havij v1.15 Free

Havij v1.14 Free

Havij v1.13 Free

Havij v1.12 Free

Havij v1.10


Havij Advanced SQL Injection
Havij Advanced SQL Injection
Havij Advanced SQL Injection
Havij Advanced SQL Injection
Havij Advanced SQL Injection
Havij Advanced SQL Injection
Havij Advanced SQL Injection

Version History

Version 1.17 2012/12/02
 • ‘Injection’ tab added to the ‘Settings’ view.
 • 'Non-existent injection value' now can be changed by user (default value is 999999.9).
 • 'Comment mark' can be changed by user (default value is --).
 • Disabling/enabling the log.
 • ‘Advanced Evasion’ tab added to the ‘Settings’ view.
 • Random signature generator added.
 • New ability to save data as CSV.
 • Dump all feature added.
 • New bypass method for MySQL using parentheses.
 • Write file added for MySQL and MySQL.
 • Load HTML form inputs added.
 • Bugfix: adding manual database in tables tree view.
 • Bugfix: finding string column in PostgreSQL.
 • Bugfix: MS Access blind string type data extraction.
 • Bugfix: MSSQL blind auto detection when the MSSQL error-based method failed.
 • Bugfix: all database blind methods failed on retry.
 • Bugfix: guessing columns/tables in MySQL time-based injection method.
 • Bugfix: crashing when dumping into file.
 • Bugfix: loading project injection type (Integer or String).
 • Bugfix: HTTPS multi-threading bug.
 • Bugfix: command execution in MSSQL 2005

Version 1.16 2012/05/27
 • Multithreading
 • Oracle Blind injection method.
 • Automatic all parameter scan added.
 • New blind injection method (no more ? char.)
 • Retry for blind injection.
 • A new method for tables/columns extraction in mssql blind.
 • A WAF bypass method for mysql blind.
 • Getting tables and columns even when can not get current database.
 • Auto save log.
 • bugfix: url encode bug fixed.
 • bugfix: trying time based methods when mssql error based and union based fail.
 • bugfix: clicking get columns would delete all tables.
 • bugfix: reseting time based method delay when applying settings.
 • bugfix: utf-8 and unicode encoding

Version 1.15 2011/06/08
 • Webknight WAF bypass added.
 • Bypassing mod_security made better
 • Unicode support added
 • A new method for tables/columns extraction in mssql
 • Continuing previous tables/columns extraction made available
 • Custom replacement added to the settings
 • Default injection value added to the settings (when using %Inject_Here%)
 • Table and column prefix added for blind injections
 • Custom table and column list added.
 • Custom time out added.
 • A new md5 cracker site added
 • bugfix: a bug releating to SELECT command
 • bugfix: finding string column
 • bugfix: getting multi column data in mssql
 • bugfix: finding mysql column count
 • bugfix: wrong syntax in injection string type in MsAccess
 • bugfix: false positive results was removed
 • bugfix: data extraction in url-encoded pages
 • bugfix: loading saved projects
 • bugfix: some errors in data extraction in mssql fixed.
 • bugfix: a bug in MsAccess when guessing tables and columns
 • bugfix: a bug when using proxy
 • bugfix: enabling remote desktop bug in windows server 2008 (thanks to pegasus315)
 • bugfix: false positive in finding columns count
 • bugfix: when mssql error based method failed
 • bugfix: a bug in saving data
 • bugfix: Oracle and PostgreSQL detection

Version 1.14 2011/01/08
 • Sybase (ASE) database added.
 • Sybase (ASE) Blind database added.
 • Time based method for MsSQL added.
 • Time based method for MySQL added.
 • mod_security bypass added.
 • Pause button added.
 • Basic authentication added
 • Digest authentication added.
 • Post Data field added
 • bugs related with dot character in database name fixed
 • syntax over writing when defined by user in blind injections fixed.
 • mssql database detection from error when using JDBC driver corrected.
 • time out bug in md5 cracker fixed.
 • default value bug fixed
 • string encode bug fixed in PostgreSQL
 • injecting URL rewrite pages added.
 • injecting into any part of http request like Cookie, User-Agent, Referer, etc made available
 • a bug in finding string column fixed. (specially for MySQL)
 • Finding columns count in mysql when input value is non effective added.
 • window resize bug in custom DPI setting fixed.
 • some bugs in finding row count fixed.
 • getting database name in mssql error based when injection type is guessed integer but it's string fixed.

Version 1.13 2010/11/03
 • a bug in finding valid string column in mysql fixed.
 • Getting tables and column when database name is not found added (mysql)
 • Automatic keyword finder optimized and some bug fixed.
 • 'Key is not unique' bug fixed
 • Getting data starts from row 2 when All in One fails - bug fixed
 • Run time error when finding keyword fixed.
 • False table finding in access fixed.
 • keyword correction method made better
 • a bug in getting current data base in mssql fixed.
 • a secondary method added when input value doesn't return a normal page (usually 404 not found)
 • data extraction bug in html-encoded pages fixed.
 • string or integer type detection made better.
 • a bug in https injection fixed.
 • another method added for finding columns count and string column in PostgreSQL
 • Oracle error based database added with ability to execute query.

Version 1.12 2010/08/30
 • Check for update added.
 • Some bugs in MsAccess injection when syntax has been defined manually fixed.
 • Enable XP_Exec added to cmdshell.
 • Enable OS_Ex added to cmdshell.
 • Enable remote desktop added to cmdshell.
 • Result added to manuall queries.
 • PostgreSQL database added.
 • Confusing MsSQL 2005 with MySQL when finding columns count fixed.
 • Broken MD5 cracker sites removed.

Version 1.11 Not Released
 • a bug in detecting mssql no error fixed.
 • a bug in getting columns in mssql no error fixed.
 • finding columns count and string column optimized for better injection and data base detecting.
 • Finding columns count and string column made better.
 • XSS bug in saved reports fixed.
 • a bug in injecting into access database fixed.
 • keyword test and correction method added.
 • MsSQL Blind added.
 • Clear log added.
 • a bug in getting data in mssql fixed.
 • Apply button added to the settings so it is possible to change the settings anytime.
 • new method for getting tables and columns in mssql added.
 • "414 Request-URI too long" bug fixed.
 • MsAccess Blind added.
 • Injecting targets with any port (default http port is 80).
 • Https added.
 • a bug in finding mssql's row count fixed.
 • a bug in detecting database type when column count is found fixed.
 • a bug in MsSQL no error manual syntax and command executation fixed.
 • 'All in one request' feature added.
 • Dump into File added.
 • Save data as XML format added.

Version 1.10 2010/05/25
 • Runtime error on canceling analyze fixed.
 • Bug in finding mssql's database when COLLATE is not supported fixed.
 • A bug in getting mssql tables fixed.
 • Html encoding bug when saving data fixed.
 • A bug in automatic string type detection fixed.
 • Borken sites in md5 cracker fixed, a new site added.
 • Tables and Columns list improved.
 • A few other changes.

Version 1.09 2010/05/06
 • Software's window made resizeable.
 • Adding and removing nodes to tables tree view list enabled by right click.
 • All data bases will be shown in the tree view list.
 • Start row in data extraction can be changed now.
 • A bug in bypassing illegal union when getting tables and columns in mysql fixed.
 • Saving and loading current injection job enabled.
 • Start column added to settings
 • Blind injection character set added to settings
 • MsSQL injection syntax changed.
 • Tables and columns brute forcing in mysql 4 blind added.
 • Better injection in mssql
 • Get data made better in mysql injection
 • Find keyword works better now
 • Mysql detection from error added.
 • A bug in getting current db in mysql fixed.
 • Positive pattern replaced with keyword.
 • Manual keyword specification.
 • Tables and Columns list improved.

Version 1.08 2010/02/13
 • MySQL Blind Injection added.
 • Auto injection type detection added.
 • Try different injection syntaxes becase an option.
 • Following redirections became an option.
 • Admin list, Table list and Column list improved.

Version 1.07 2009/12/08
 • finding column count and string column in mssql no error when type was string fixed.
 • some bugs in analyze method for mysql fixed.
 • manual syntax available for mysql and mssql no error
 • Online MD5 cracker added.

Version 1.06 2009/10/09
 • finding string column in mysql made better.
 • oracle added.
 • bug in find admin when file list was huge (oveflow error!) fixed.
 • bug in delete/update/insert when database was not default fixed.
 • retry bug in find admin fixed.
 • 'load cookie' added to settings.

Version 1.05 Not Released
 • proxy added.
 • find admin added.
 • filter made available for mssql
 • a bug fixed (blind detection when target is not vulnerable and injection type is string)
 • MsAccess database added
 • finding columns count and string column in mysql made better.

Version 1.04 Not Released
 • filter added to get data
 • data list changed
 • updating data enabled
 • delete row added
 • insert new row added
 • group_concat added.
 • bug in guessing columns in mysql fixed.
 • bug with null strings when 'avoid using strings' was on fixed.
 • bug in getting data in mysql when type is string fixed.
 • injection method changed for mysql.
 • bug in guessing tables and columns in mysql<5 fixed.
 • program displays injection syntax after analyze.
 • 'user agent' added to settings.

Version 1.03 2009/08/19
 • bug in getting info fixed when collate not allowed in mssql
 • analyzing method changed for mysql data bases.
 • finding db server made better.
 • injection with different syntaxes added.
 • query added.
 • data base server detection is now both automated and user selective.
 • injection of string type for double quotation mark added.
 • bugs in cmdshell fixed.
 • command executation enabled for mssql no error.
 • some little bugs fixed.

Version 1.02 2009/08/08
 • access privilege detection added when getting data
 • string type added.
 • an error in getting http response code fixed.
 • a bug in finding columns fixed.
 • command executation added.
 • 'do not find column count in mssql with error' added to settings.
 • html encode bug in mssql with error fixed.
 • another try for finding columns count added.
 • logging made better.
 • redirect added.
 • guessing tables and columns in MySQL<5 added.
 • a bug in getting tables fixed.
 • some other little changes.

Version 1.01 2009/07/25
 • post method added.
 • program finds count of tables or columns before getting tables and columns.
 • 'Replace space with' added to the settings.
 • 'Additional http headers' added to the settings.
 • positive pattern checking algorithm made better.
 • stop on erros added.
 • a second method added for finding DB server type.
 • mssql no error data base added.
 • new look (command buttons changed into menus)
 • a little problem in getting mysql's tables data was fixed.
 • save option added.
 • a bug in data base 'mssql with error' when getting tables and columns with 'avoid using strings' option fixed.
 • some other little changes.

Version 1.0 beta 2009/07/04
 • Initial release



License price for running on a single machine is 650$ for one year with ongoing technical support – regular updates and fixes.
Annual license renewal fee is 585$ with (10% discount, renewed for a one-year term).
License is not hardware/machine dependent, i.e. you could use it on different machines. HOWEVER, USING A SINGLE LICENSE TO RUN THE SOFTWARE ON MULTIPLE MACHINES WILL RESULT IN REVOCATION OF THE LICENSE.


Our preferred payment methods are advance funds transfer through WebMoney, Perfect Money or Western Union (you will receive license in less than 48 hours from the payment through one of these methods).
To make your purchase through one of these methods please contact us at. You will receive clearance to make the payment shortly afterward. You may then proceed with the payment and receive your license in due course.
If you cannot make the payment through Web Money, Perfect Money, or Western Union, you can also make it using PayPal or Credit Card. Please read the following notes carefully before making a payment.
Notes on PayPal/Credit Card Payment:
In order to confirm your order you need to send us a scanned copy of a photo ID such as a passport, or driver’s license. In addition to that, please also include a scanned copy of the credit card that will be used in making the payment – in case of credit card payment. For security purposes, you can mask off all the digits of the card number except for the last 4 digits. Note that scanned copies or pictures must come in a good resolution (preferably a high resolution picture with both cards in). Please send the scanned documents to  . Once our Fraud Dept. confirms your identity, you will receive an e-mail with information about making the payment through PayPal or Credit Card.
Any attempt at placing fraudulent orders using stolen PayPal accounts or credit cards will be submitted to relevant fraud investigation authorities and you will not receive the software through such means.
It may sometimes take up to seven days after placing the order for you to receive your license due to the risks involved in cc/pp payments. However, customers will normally receive their license in less than 24 hours after submitting documents.


Bug Report

Our team of experts and engineers work diligently to deliver the most reliable product possible. But however accurate the planning, development, and testing, some bugs do eventually creep into the released product – unexpected defects, faults, flaws, or imperfections. Havij’s developers wish to be informed about all reproducible bugs that may be encountered in the latest version of the software.

For this information to be useful and enable us to resolve the bug, we need detailed and specific information. Please be aware that incomplete or inaccurate reports waste valuable time and therefore may be discarded if the bug cannot be reproduced or the details are not clear enough.

NOTE: Before you complete or submit a bug report make sure you are using the latest available release of Havij.

To report a bug, contact us through.


Dump All
Dump All
 multi thread blind injection
multi thread blind injection
Oracle error based injection, extracting database usernames and hashes, creating a database admin user.
Pro Features
Injecting https target, getting database data using 'All in one request', displaying all injections using 'Show Requests', saving data as XML format and more
how to register Havij pro
PostgreSQL database injection with Havij Pro, cracking MD5 hash using Havij's online MD5 cracker
Executing system commands on MsSQL target while xp_cmdshell is disabled.
URL Rewrite
Injecting targets that use URL rewrite rules.