/文章作者: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. Error querying database. Cause: java.lang.IllegalArgumentException:Failed to decrypt.(错误笔记)

    java.lang.IllegalArgumentException:Failed to decrypt 从错误可以看出,解密失败. 原因是你在数据库连接配置的地方,设置了加密.即: config.d ...

  2. 全套visio版本安装教程及下载地址

    1:visio 2003 安装教程及下载地址 https://mp.weixin.qq.com/s/vhJUagKBz3vM-Dru0cwYow 2:visio 2007 安装教程及下载地址 http ...

  3. L SERVER 数据库被标记为“可疑”的解决办法

    问题背景: 日常对Sql Server 2005关系数据库进行操作时,有时对数据库(如:Sharepoint网站配置数据库名Sharepoint_Config)进行些不正常操作如数据库在读写时而无故停 ...

  4. OO_Unit3_JML规格模式

    ---恢复内容开始--- [CSDN博客链接](https://blog.csdn.net/weixin_43387647/article/details/90451173) @[toc] ## 一. ...

  5. not full 和 default

    create table t16( id int, name char(6), sex enum('male','female') not null default 'male'); insert i ...

  6. 变量覆盖-高级篇(动态覆盖,extract综合)

    0x00 原理   变量覆盖漏洞可以让用户定义的变量值覆盖原有程序变量,可控制原程序逻辑. 0x01 代码 <?php highlight_file('index.php'); function ...

  7. Docker——JVM 感知容器的 CPU 和 Memory 资源限制

    前言 对于那些在Java应用程序中使用Docker的CPU和内存限制的人来说,可能会遇到一些挑战.特别是CPU限制,因为JVM在内部透明地设置GC线程和JIT编译器线程的数量. 这些可以通过命令行选项 ...

  8. 使用Prometheus Operator 监控Kubernetes(15)

    一.Prometheus概述: Prometheus是一个开源系统监测和警报工具箱. Prometheus Operator 是 CoreOS 开发的基于 Prometheus 的 Kubernete ...

  9. 008.kubernets的调度系统之标签选择器

    一 Kubernetes 调度简介 除了让 kubernetes 集群调度器自动为 pod 资源选择某个节点(默认调度考虑的是资源足够,并且 load 尽量平均),有些情况我们希望能更多地控制 pod ...

  10. lsscsi

    # lsscsi[2:0:0:0] cd/dvd Slimtype DVD A DS8ACSH LC2M /dev/sr0[3:0:0:0] disk ATA Samsung SSD 860 3B6Q ...