/文章作者:Kali_MG1937

CSDN博客号:ALDYS4

QQ:3496925334
/

今天google找注入点的时候发现某企业一个挺有意思的waf

常规操作绕过去后决定写一篇博客

信息收集

如果有看我前两期绕过waf系列

应该能知道前两期的网站环境均为iis+asp

这种环境下的查询支持非标准Unicode编码

如%u0027,%u003d

这样的编码形式,一些waf并不拦截这些非标准Unicode

更重要的是,它允许网址中夹带无用的百分号%

此环境下的数据库在查询时会自动忽略无用的%

那么利用%对关键字进行截断就很有用,可以看到前两期我基本上用的这种方法过的waf

但这回不一样,php环境,不再是asp环境

也就是说,网站不再支持非标准Unicode编码

这也就给渗透增加了难度和新的挑战

确定注入点

网站新闻页面的url带参数,尝试注入

GET 结果
?id=1 and 1=1 被拦截,WAF:WTS-WAF

挺常见的waf

替换等号为like

?id=1 and 1 like 1 不拦截,成功查询



那么确定参数是int型

尝试绕过

既然有waf,那么它一定会拦截一些连接数据库的操作

尝试

GET 结果
?id=1 union select 1 果不其然,被拦截



试试看大小写混淆

GET 结果
?id=1 unioN selEct 1 仍然被拦截



利用换行符替换空格

GET 结果
?id=1%0aunion%0aselect%0a1 仍然被拦截

随便输入一个包含union select的字符串



也被拦截

那么我猜想,网站应该有个正则表达式对整行语句进行判断

若关键字select前带有union,直接拦截

若是asp环境,我可以直接利用%进行截断关键字来绕过waf

但现在要另外想办法了

网站对整行语句进行判断,如果我的查询语句是一段段分开的呢?

也就是说,利用两个连续的 “--” 符号注释关键词后的这一行,换行后再输入下一个关键词

GET 结果
?id=1--%0aunion--%0aselect--%0a1 不拦截,被查询



果不其然

此外,该waf会对 关键字+括号 进行拦截



经测试在括号前利用 %0a-- 截断就能绕过

构造payload

修改space2comment的脚本



顺便再自己构造一条payload来替换括号



带入sqlmap







你把你?给我交喽

提权

拿到账号密码后登入后台





站长大概是觉得有个waf就万事无忧了

没有对上传的文件进行任何判断





裤子脱完本以为有条内裤,结果是个骚货,直接菊花就对着我,那我肯定要用我的马子插进来的

【渗透实战】sqlmap_修改tamper脚本_绕过WAF_第三期的更多相关文章

  1. 关于sqlmap当中tamper脚本编码绕过原理的一些总结(学习python没多久有些地方肯定理解有些小问题)

    sqlmap中tamper脚本分析编写 置十对一些编码实现的脚本,很多sqlmap里面需要引用的无法实现,所以有一部分例如keywords就只写写了几个引用了一下,其实这里很多脚本运用是可以绕过安全狗 ...

  2. 【渗透实战】记一次艰难的内网漫游第四期_蹭我WIFI?看我如何利用组合拳日进蹭网者内网

    /文章作者:Kali_MG1937 CSDN博客ID:ALDYS4 QQ:3496925334/ 内网漫游系列第三期:[渗透实战]记一次艰难的内网漫游第三期_我是如何利用APT攻击拿到内网最高权限的 ...

  3. 【渗透实战】那些奇葩的WAF_第二期_无意发现通杀漏洞,空字节突破上传!

    /文章作者:Kali_MG1937 CSDN博客号:ALDYS4 QQ:3496925334 未经许可,禁止转载/ 该博文为本人18年左右的渗透记录,文法粗糙,技术含量极低,流水账文章,且今日不知为何 ...

  4. 使用sqlmap中tamper脚本绕过waf

    使用sqlmap中tamper脚本绕过waf 刘海哥 · 2015/02/02 11:26 0x00 背景 sqlmap中的tamper脚本来对目标进行更高效的攻击. 由于乌云知识库少了sqlmap- ...

  5. sqlmap中tamper脚本绕过waf

    0x00 背景 sqlmap中的tamper脚本来对目标进行更高效的攻击. 由于乌云知识库少了sqlmap-tamper 收集一下,方便学习. 根据sqlmap中的tamper脚本可以学习过绕过一些技 ...

  6. 使用sqlmap中的tamper脚本绕过waf

    使用sqlmap中tamper脚本绕过waf 脚本名:0x2char.py 作用:用UTF-8全角对应字符替换撇号字符 作用:用等价的CONCAT(CHAR(),...)对应替换每个(MySQL)0x ...

  7. 【奇淫巧技】sqlmap绕过过滤的tamper脚本分类汇总

    sqlmap绕过过滤的tamper脚本分类汇总

  8. sqlmap tamper脚本备忘录与tamper脚本编写

    查看sqlmap全部脚本 $ python sqlmap.py --list-tampers 使用方法 --tamper=TAMPER 2019.9更新后翻译 * apostrophemask.py- ...

  9. sqlmap tamper脚本

    本文来自:SQLmap tamper脚本注释, 更新了一些脚本,<<不断更新中>> 目前已经总共有50+的脚本,故对源文章进行更新... sqlmap-master ls -l ...

随机推荐

  1. Newtonsoft.Json的使用整理

    关于我 我的博客 | 欢迎关注 引言 json是我们在工作中经常用到的一种数据传输格式,开始过程中解析json是我们经常面对的问题.NewtonsoftJson是c#的一套json处理封装类,它可以高 ...

  2. Django(15)外键和表关系

    外键删除操作 如果一个模型使用了外键.那么在对方那个模型被删掉后,该进行什么样的操作.可以通过on_delete来指定.可以指定的类型如下: CASCADE:级联操作.如果外键对应的那条数据被删除了, ...

  3. Pytorch实现对卷积的可插拔reparameterization

    需要实现对卷积层的重参数化reparameterization 但是代码里卷积前weight并没有hook,很难在原本的卷积类上用pure oo的方式实现 目前的解决方案是继承原本的卷积,挂载一个we ...

  4. [刷题] 112 Path Sum

    要求 给出一个二叉树及数字sum,判断是否存在一条从根到叶子的路径,路径上的所有节点和为sum 实现 转化为寻找左右子树上和为 sum-root 的路径,到达叶子节点时递归终止 注意只有一个孩子时,根 ...

  5. [刷题] 102 Binary Tree Level Order Traversal

    要求 对二叉树进行层序遍历 实现 返回结果为双重向量,对应树的每层元素 队列的每个元素是一个pair对,存树节点和其所在的层信息 1 Definition for a binary tree node ...

  6. CentOS 7配置静态IP地址的两种方法 来自:互联网

    CentOS 7配置静态IP地址的两种方法 来自:互联网 时间:2021-01-12 阅读:4 如果你想要为CentOS 7中的某个网络接口设置静态IP地址,有几种不同的方法,这取决于你是否想要使用网 ...

  7. Mysql数据库基础增删改查常用语句命令

    Mysql增删改查常用语句命令 一.增删改查语句总览 创建: create(创建数据库) 增:insert(插入表数据) 删:drop.delete(删除表.删除表数据) 改:update.alter ...

  8. vim 编辑器高级用法

    vim编辑器介绍 如果没有安装vim使用下面方式安装 yum -y install vim vi与vim的不同 两者最大的不同:vim可以高亮显示,vi不可以. vim三种工作模式 普通模式 # 光标 ...

  9. INFJ名言

    财富是由什么构成的? 按世俗的观点,就是占有金钱和财宝. 但如果我们用除金钱之外的其他方式来衡量财富, 那么许多在物质上匮乏的人在精神上却是富有的, 许多在物质上富有的人在精神上却是匮乏的. The ...

  10. Java核心技术卷阅读随笔--第4章【对象与类】

    对 象 与 类 4.1 面向对象程序设计概述 面向对象程序设计(简称 OOP) 是当今主流的程序设计范型, 它已经取代了 20 世纪 70 年代的" 结构化" 过程化程序设计开发技 ...