小白日记43:kali渗透测试之Web渗透-SqlMap自动注入(一)-sqlmap参数详解TARGET
SqlMap自动注入(一)
sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞【动态页面中get/post参数、cookie、HTTP头】。它由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方法>】
【可使用-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的更多相关文章
- 小白日记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 [ ...
- 小白日记45:kali渗透测试之Web渗透-SqlMap自动注入(三)-sqlmap参数详解-Optimization,Injection,Detection,Techniques,Fingerprint
sqlmap自动注入 Optimization [优化性能参数,可提高效率] -o:指定前三个参数(--predict-output.--keep-alive.--null-connection) - ...
- 小白日记44:kali渗透测试之Web渗透-SqlMap自动注入(二)-sqlmap参数详解REQUEST
Sqlmap自动注入(二) Request ################################################### #inurl:.php?id= 1. 数据段:--d ...
- 小白日记28:kali渗透测试之Web渗透-扫描工具-Nikto
扫描工具-Nikto #WEB渗透 靶机:metasploitable 靶场:DVWA[默认账号/密码:admin/password] #新手先将DVWA的安全性,调到最低,可容易发现漏洞 侦察[减少 ...
- 小白日记30:kali渗透测试之Web渗透-扫描工具-Skipfish
WEB渗透-skipfish Skipfish是一个命令行模式,以C语言编写的积极的Web应用程序的安全性侦察工具,没有代理模式. 它准备了一个互动为目标的网站的站点地图进行一个递归爬网和基于字典的探 ...
- 小白日记34:kali渗透测试之Web渗透-扫描工具-Burpsuite(二)
扫描工具-Burpsuite 公共模块 0.Spider 爬网 手动爬网 先禁用截断功能 手动将页面中点击所有连接,对提交数据的地方,都进行提交[无论内容] 自动爬网[参数设置] 指定爬网路径,否则其 ...
- 小白日记47:kali渗透测试之Web渗透-XSS(一)
XSS [推荐书籍:XSS跨站脚本攻击剖析与防御] xss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/ ...
- 小白日记51:kali渗透测试之Web渗透-WebShell(中国菜刀、WeBaCoo、Weevely)
webshell 本质:<?php echo shell_exec($_GET['cmd']);?> windows平台 中国菜刀官网:胖客户端程序,国产中比较优秀的webshell,适用 ...
- 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)
补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...
随机推荐
- 【和我一起学python吧】python入门语法总结
1.python是一个解释性语言: 一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1).这个过程通过编译器和不同的标记.选项完 ...
- 过度拟合(overfitting)
我们之前解决过一个理论问题:机器学习能不能起作用?现在来解决另一个理论问题:过度拟合. 正如之前我们看到的,很多时候我们必须进行nonlinear transform.但是我们又无法确定Q的值.Q过小 ...
- java 复习001
java 复习001 比较随意的记录下我的java复习笔记 ArrayList 内存扩展方法 分配一片更大的内存空间,复制原有的数据到新的内存中,让引用指向新的内存地址 ArrayList在内存不够时 ...
- hadoop多次格式化后,导致datanode启动不了,怎么办?(伪分布式)
根据当初 hadoop 安装目录下 conf 目录的 core-site.xml 的设置,找到该目录: 进入该目录 在 data 和 name 文件夹下均有 current 文件夹 ,和 cur ...
- Adress
流水账的写法:因为不想让亲爱的你只看开头就关掉了我辛苦的劳作.流水账的好处是:便于逻辑的理解 http://software.intel.com/zh-cn/blogs/2014/01/20/cent ...
- 怎样提交FIREDAC数据集的DELTA到中间件然后保存进数据库
你可以在客户端序列FireDAC数据集的DELTA , 将序列后的STREAM发送给中间件, 中间件的TFDQuery或TFDMemTable调用LOADFROMSTREAM()方法加载流, 然后调用 ...
- [iOS基础控件 - 6.12.2] Modal
A.概念 1.也可以用来切换控制器 2.如ActionSheet 除了push之外,还有另外一种控制器的切换方式,那就是Modal 任何控制器都能通过Modal的形式展示出来 Modal的默认效果 ...
- CodeForces 589D Boulevard (数学,相遇)
题意:给定 n 个的在 x 轴上的坐标,和开始时间,结束坐标,从起点向终点走,如果和其他人相遇,就互相打招乎,问你每人打招乎的次数. 析:其实这一个数学题,由于 n 比较小,我们就可以两两暴力,这两个 ...
- java命令行运行jar里的main类
一般运行包含manifest的jar包,可以使用 java -jar <jar-file-name>.jar 如果jar里没有 manifest,则可以使用 java -cp foo.ja ...
- JavaScript- 获取经度纬度
昨天获得一个小需求,需要取地理位置. 通过以下的JS能获得经度和纬 if(navigator.geolocation) { navigator.geolocation.getCurrentPositi ...