SqlMap自动注入(一)

sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞【动态页面中get/post参数cookieHTTP头】。它由Python语言开发而成,因此运行需要安装python环境。但在kali中已经集成。其功能完善,有强大的引擎,适用几乎所有数据库,,可自动进行数据榨取,也可对检测与利用的自动化处理(数据库指纹、访问底层文件系统、执行操作系统命令),还可以做XSS漏洞检测Windows SQLmap教程

注意:sqlmap只是用来检测和利用sql注入点的,并不能扫描出网站有哪些漏洞,使用前请先使用扫描工具扫出sql注入点。

五种漏洞检测技术

1、基于布尔的盲注测试

2、基于时间的盲注检测【若是该语句可以在服务器中运行,则按指定时间返回,若不能执行,返回错误或正常页面】

'and (select*from (select(sleep(20)))a)--+

3、基于错误的检测

4、基于UNION联合查询的检测

前提:使用于通过for/while循环直接输出联合查询结果,即SQL语句在循环内,否则只会显示第一项结果

5、基于堆叠查询的检测

通过分号(;)堆叠多个查询语句

使用于非select的数据修改、删除的操作

支持的数据库管理系统DBMS

MySQL、Oracle、PostgreSQL、Microsoft SQL Server, Microsoft Access,IBM DB2, SQLite,Firebird, Sybase , SAP MaxDB

SQL其他特性

1、数据库直接连接 -d

不通过SQL注入,指定身份认证信息【前提有数据库管理系统的相应权限】、IP、端口

2、与burpsuite、Google结合使用,支持正则表达式限定测试目标

3、Get、Post、Cookie、Referer、User-Agent(随机或指定)

Cookie过期后自动处理Set-Cookie头、更新Cookie信息【不用担心扫描过程中,cookie过期】

4、限速:最大编发、延迟发送

5、支持Basic,Digeset,NTLM,CA身份认证

6、数据库版本、用户、权限、hash枚举和字典破解、暴力破解表列名称【可使用内建字典,也可以使用自定义字典】

7、文件上传下载、UDF、启动并执行存储过程、操作系统命令执行、访问windows注册表

8、与W3af、metasploit集成结合使用,基于数据库服务进程提权和上传执行后门

SQLMAP安装【kali已集成,随kali库更新而更新】

其他linux系统

apt-get install git

git clone https://github.com/sqlmapproject/sqlmap.git

Kali中更新

sqlmap --update  【或者apt-get update;apt-get upgrade】                 在线更新,有可能出错【使用kali官方维护版】

git clone https://github.com/sqlmapproject/sqlmap.git          #离线更新

git pull                                                                             #

功能详情

Sqlmap –h             常用参数列表

Sqlmap –hh            所有参数列表

Sqlmap –v              显示详细信息(有七个等级0-6,默认为1)

七大类

指定目标[Target]

-d           直接连接数据库服务侦听端口,相当于数据库客户端程序

-u           指定URL,一定要存在参数变量http://www.site.com/vuln.php?id=1

-l            后跟logfile,logfile可以来自burp或webScarab等代理程序,将其记录日志记录下来,将logfile作为源文件,sqlmap对里面的URL,逐个进行检查,判断是否有注入点

-x           站点地图,以xml形式,提交给sqlmap

-m         指定URL地址文件[.txt],集中扫描

-r           指定http头信息和body信息文件

-g           使用Google,可添加正则表达式进行过滤

-c           指定sqlmap命令参数集成扫描配置文件

示例

1、 最简单的利用方法()

【<GET方法>

Sqlmap –u http://192.168.1.107/mutillidae/index.php?page=user-info.php&username=1&password=1&user-info-php-submit-button=View+Account+Details

【可使用-p:指定检查变量(username);-f:检查数据库 指纹信息】

【--users:查当前的数据库的账号】

【--banner:查看数据库版本信息】

【--dbs:查看数据库中有哪些库】

【--schema:查元数据库(内容居多)】

【-a:查所有能查的数据(自带哈希值另存,哈希值字典破解)】

-d:前提有数据库管理系统的连接账号密码                【速度相对更快】

Sqlmap –d “mysql://user:password@192.168.1.107:3306/dvwa” –f –users –banner –dbs –schema –a             【端口可用扫描得到】

-m:扫描URL列表文件

Sqlmap –u list.txt

-g:扫描Google搜索结果【需要做代理链】

Sqlmap.py –g “inurl:\”.php?id=1\””

【<POST>

使用http请求文件(burpsuite)

Sqlmap –r request.txt

##将burpsuite中截获的http请求复制黏贴成一个文本文件

使用burpsuite log文件【先到option中配置要记录的log文件】

Sqlmap –l log.txt

【< HTTPS >

Sqlmap –u https://1.1.1.1/a.php?id=1:443 –force-ssl

【<  扫描配置文件 >(可将扫描参数集成为一个配置文件)

Sqlmap –c sqlmap.conf

默认的配置文件

/etc/sqlmap/sqlmap.conf

小白日记43:kali渗透测试之Web渗透-SqlMap自动注入(一)-sqlmap参数详解TARGET的更多相关文章

  1. 小白日记46:kali渗透测试之Web渗透-SqlMap自动注入(四)-sqlmap参数详解- Enumeration,Brute force,UDF injection,File system,OS,Windows Registry,General,Miscellaneous

    sqlmap自动注入 Enumeration[数据枚举] --privileges -U username[CU 当前账号] -D dvwa -T users -C user --columns  [ ...

  2. 小白日记45:kali渗透测试之Web渗透-SqlMap自动注入(三)-sqlmap参数详解-Optimization,Injection,Detection,Techniques,Fingerprint

    sqlmap自动注入 Optimization [优化性能参数,可提高效率] -o:指定前三个参数(--predict-output.--keep-alive.--null-connection) - ...

  3. 小白日记44:kali渗透测试之Web渗透-SqlMap自动注入(二)-sqlmap参数详解REQUEST

    Sqlmap自动注入(二) Request ################################################### #inurl:.php?id= 1. 数据段:--d ...

  4. 小白日记28:kali渗透测试之Web渗透-扫描工具-Nikto

    扫描工具-Nikto #WEB渗透 靶机:metasploitable 靶场:DVWA[默认账号/密码:admin/password] #新手先将DVWA的安全性,调到最低,可容易发现漏洞 侦察[减少 ...

  5. 小白日记30:kali渗透测试之Web渗透-扫描工具-Skipfish

    WEB渗透-skipfish Skipfish是一个命令行模式,以C语言编写的积极的Web应用程序的安全性侦察工具,没有代理模式. 它准备了一个互动为目标的网站的站点地图进行一个递归爬网和基于字典的探 ...

  6. 小白日记34:kali渗透测试之Web渗透-扫描工具-Burpsuite(二)

    扫描工具-Burpsuite 公共模块 0.Spider 爬网 手动爬网 先禁用截断功能 手动将页面中点击所有连接,对提交数据的地方,都进行提交[无论内容] 自动爬网[参数设置] 指定爬网路径,否则其 ...

  7. 小白日记47:kali渗透测试之Web渗透-XSS(一)

    XSS [推荐书籍:XSS跨站脚本攻击剖析与防御] xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/ ...

  8. 小白日记51:kali渗透测试之Web渗透-WebShell(中国菜刀、WeBaCoo、Weevely)

    webshell 本质:<?php echo shell_exec($_GET['cmd']);?> windows平台 中国菜刀官网:胖客户端程序,国产中比较优秀的webshell,适用 ...

  9. 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)

    补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...

随机推荐

  1. Ubuntu 软件包管理详解

    原文转载自:http://www.cppblog.com/jb8164/archive/2009/01/09/71583.html Ubuntu 方便宜用,最值得让人称道的便是其安装软件的方式, 一条 ...

  2. 用java获取歌曲文件的专辑封面元信息

    几个个软件: 1, Jaudioatgger: 链接 2, mp3agic 链接 3, Java mp3 id3 tag library  (推荐用上面两个) 其它: android-midi-lib

  3. DelphiXE7操作sqlite数据库

    准备工作: 1.用SQLiteExpertPers建立一个sqlite数据库. 2.打开delphi xe7. 一.FireDAC法 设置库联接 1.放入FDConnection1控件 2.放入FDC ...

  4. MongoDB 字段增长

    MongoDB中存储的文档必须有一个"_id"键.这个键的值可以是任何类型的,默认是个ObjectId对象. ObjectId 是一个12字节 BSON 类型数据,有以下格式: 前 ...

  5. POJ 2236 Wireless Network (并查集)

    Wireless Network 题目链接: http://acm.hust.edu.cn/vjudge/contest/123393#problem/A Description An earthqu ...

  6. UVa 1252 Twenty Questions (状压DP+记忆化搜索)

    题意:有n件物品,每件物品有m个特征,可以对特征进行询问,询问的结果是得知某个物体是否含有该特征,要把所有的物品区分出来(n个物品的特征都互不相同), 最小需要多少次询问? 析:我们假设心中想的那个物 ...

  7. C#学习笔记(十二):正则表达式

    Regex 正则表达式的类,我们可以通过该类来使用正则表达式. 比如下面我们使用Regex来判断输入的字符串是否符合指定的格式: using System; using System.Text.Reg ...

  8. 【JDBC】预编译SQL与防注入式攻击

    在JDBC编程中,常用Statement.PreparedStatement 和 CallableStatement三种方式来执行查询语句,其中 Statement 用于通用查询, PreparedS ...

  9. mysql5.5主从配置

    mysql主从同步# 一:mysql数据库的主从 mysql数据库5.5之后的版本和5.5以前的版本数据库主从存在差异,这里是针对数据库5.5之后的配置. 1.主库编辑my.cnf(linux的my. ...

  10. GMT、UTC、PDT 时间是什么?Linux下如何调整时区

       今天碰到一个时区配置问题,如果服务器时区配置不对,很可能在使用date相关函数时会出现莫名其妙的错误,现将相关时区说明及LINUX下调整时区方法记录如下,以做备忘. GMT GMT 是 Gree ...