渗透利器-kali工具 (第三章-5) sqlmap之sql注入一、二

embedded/2024/11/14 7:37:27/

一:常见的注入方式

  1.sqlmap用于Access数据库注入

  2.sqlmap用于Cookie注入  --cookie

  3.sqlmap用于Post注入  --froms 、--data、抓包

  4.sqlmap用于mysql注入

  绕过waf脚本测试:--tamper "space2morehash.py"

  常见sqlmap使用方法:

    https://www.cnblogs.com/hack404/p/10830239.html

    https://www.cnblogs.com/ichunqiu/p/5805108.html 

二:Sqlmap-常见的测试参数

  1.指定参数进行测试:

    参数:*号,和-p选项

  2.使用Post方式提交注入:

    参数:--data选项

  3.Sqlmap扫描登录[1-5]

    当 --level参数设定为2或者2以上的时候,会尝试对Cookie进行注入。

    当 --level参数设定为3或者3以上的时候,会尝试对User-Angent,Referer进行注入。

    参数:--level

  4.自动执行默认选项:

    参数: --batch

  5.使用代理服务器连接到目标URL

    参数:--proxy

  6.自动切换客户端请求头:

    参数:--random-agent

  7.设置测试线程数,默认线程1:

    参数:--threads

  8.获取表中的数量:

    参数:--count

  9.风险等级,共有四个等级,默认为1:

    1.会测试大部分语句

    2.会增加基于时间的测试语句

    3.会增加or语句的sql注入语句。

    参数:--risk

三:Sqlmap的测试等级

  1.探测等级[1-5]:

    参数: --level

    共有5个等级,默认为1,sqlmap使用的payload可以在xml/payloads.xml中看到,可以根据相应到的格式添加自己的payload。

    这个从参数不近影响使用哪些payload同时也影响测试的注入点,GET和Post的数据都会尝试,

    大于或等于2的时候会测试cookie,大于3或等于3的时候会检测HTTP User-Agent/Referer在不确定那个payload或者参数为注入点的时候,为了保证全面性,建议使用高的level值。

  2.风险等级[4个等级]

    参数:--risk

    共有四个风险等级,默认是1会测试大部分的测试语句,2会增加基于事件的测试语句,3会增加or语句的sql注入测试。

    在有些时候,例如在update的语句中,注入一个or的测试语句,可以导致更新的整个表,可能造成很大的风险。

    测试的语句同样可以在xml/payloads。xml中找到,也可以额自行添加payload。

四:介绍Sqlmap脚本

  1.脚本的租用:帮助我们绕过一些WAF,进行测试。

  2.脚本目录:Tamper目录。

  3.有哪些脚本:https://xz.aliyun.com/t/2746

五:sqlmap get shell

  1.sqlmap命令操作

  2.sqlmap系统操作:

    --os-shell 产生交互式的操作系统的shell,用来执行cmd命令。

      1.--os-shell系统操作的要求:

        网站必须root权限:--is -dbs

        攻击者需要知道网站的绝对路径

        GPC为off,php主动转义的功能关闭

        secure file priv为空

      2.使用--os-shell之后会生成两个文件:

        上交脚本文件:可以上传小木马、大木马。

        后门文件:保持权限。

六:是sqlmap小技巧

  1.sqlmap注入时:

    1.判断可以注入的桉树

    2.判断可以用那种sql注入技术来注入

    3.识别出那种数据库

    4.根据用户选择,读取哪些数据。

  2.sql注入支持五种不同的注入模式:
    1.基于布尔的盲注,即可以根据返回页面判断条件真假的注入。

    2.基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟,语句是否执行[即页面返回时间是否增加]来判断。

    3.基于报错的注入,即页面会返回错误信息,或者把注入的语句的结构直接返回在页面中。

    4.联合查询注入,可以使用union的情况下的注入。

    5.堆查询注入,可以同时执行多条语句的执行时的注入。

  3.sqlmap注入检测:

    如果想观察sqmap对一个点是进行了怎么的尝试判断以及数据读取的,可以使用-v参数

    共有7个等级,默认为1:

      0、只显示python错误以及严重的信息。

      1.同时显示基本信息和警告信息[默认]。

      2.同时显示debug信息。

      3.同时显示注入的payload。

      4.同时显示HTTP请求。

      5.同时显示HTTP响应头。

      6.同时显示HTTP响应页面。

      注:如果你想看到sqlmap发送的测试payload最好的等级就是3.

七:使用Burp+Sqlmap批量测试

  sqlmap可以批量扫描包含有request的日志文件,而request日志文件可以通过burpsuite来获取。

  因此通过sqlmap结合Burpsuite工具,可以更搞笑的对应应用程序是否存在sql注入漏洞进行地毯是的扫描。

  步骤:

    1.首先是Burp设置记录log,文件名随便填一个。

    2.把记录的log文件放sqlmap目录下。

    3.sqlmap读log自动测试:

      sqlmap.py -l 文件名 --batch -smart

      batch:自动选yes

      smart:启发式快速判断,节约时间

    4.sqlmap,最后能注入的url会保存到一个文件内,具体目录可以在读取之后查看。

    任意:log文件中如果有sqlmap无法读取的字符[ascii码之外的字符]]会读取失败。

八:使用Burp插件+sqlmap测试[需要安装sqlmap插件]

  1.代理监听sqlmap测试语句:

    sqlmap.py -u "http://xx.xxx.xx.x:8804/news.php?id=1" --proxy=http://127.0.0.1:8080 --random-agent

  2.sqlmap快速测试Burp数据包:

    -r参数,从文件读取数据包

  3.使用Burp插件跑sqlmap注入


http://www.ppmy.cn/embedded/137186.html

相关文章

2024 ECCV | DualDn: 通过可微ISP进行双域去噪

文章标题:《DualDn: Dual-domain Denoising via Differentiable ISP》 论文链接: DualDn 代码链接: DualDnCode 本文收录于2024ECCV,是上海AI Lab、浙江大学、香港中文大学(薛天帆等人)联合发布的图像降…

gitlab 流水线流程简要说明

前提准备: gitlab 16.9 centos 7.6 git 2.41.0 创建runner执行器 1、进入“管理/CI/CD/runner”菜单中 2、点击“新建实列runner”,设置参数后点击完成创建就好。 3、在服务器上安装runner执行器 配置gitlab-ci.yml文件 可以根据文件说明配置&#…

vue3项目中内嵌vuepress工程两种实现方式

目录 一、示例二、创建vuepress工程三、配置vue项目的打包命令四、 通过iframe嵌套实现过程五、 将vue项目打包,启本地服务运行index.html 一、示例 vue项目,点击用户手册按钮,通过a标签跳转到vuepress框架搭建的页面。点击后者通过路由跳转…

Dial-insight:利用高质量特定领域数据微调大型语言模型防止灾难性遗忘

摘要 大型语言模型(LLM)的性能很大程度上依赖于底层数据的质量,特别是在专业领域。在针对特定领域应用微调LLM时,一个常见的挑战是模型泛化能力的潜在下降。为了解决这些问题,我们提出了一种两阶段方法来构建提示词&a…

用C++实现绘制简单的爱心图形

示例代码如下&#xff1a; #include <iostream> using namespace std;int main() {ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);// 爱心曲线方程 (x^2y^2-a)^3-x^2*y^30double a 1;// 定义绘图边界double bound 1.3 * sqrt(a);// x、y坐标步长变化double step…

c语言选择排序

选择排序思想&#xff1a; 反复地从未排序部分选择最小&#xff08;或最大&#xff09;的元素&#xff0c;将其放到已排序部分的末尾&#xff1b; 首先用一个变量min来保存数组第一个元素的下标&#xff0c;然后用这个下标访问这个元素&#xff0c;将这个元素与它后面的元素相…

百度世界2024:AI应用的浪潮时刻

百度AI公式&#xff1a;“技术商业社会”。 作者|金豫 编辑|杨舟 互联网行业正迈入增长瓶颈期&#xff0c;这一点从主要科技巨头&#xff0c;如Meta、Alphabet、腾讯等近年来的表现中可见端倪&#xff1a;广告收入增速放缓&#xff0c;市场渗透率接近饱和。 单纯依赖流量获取…

自动化测试策略 —— 新功能还是老功能的回归测试?

在软件开发过程中&#xff0c;自动化测试是一个关键组成部分&#xff0c;它有助于提高软件质量、减少手动测试的工作量&#xff0c;并加快产品上市时间。然而&#xff0c;面对有限的资源和时间&#xff0c;测试团队常常面临一个选择&#xff1a;是应该优先准备新功能的自动化测…