/文章作者: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. Intel汇编语言程序设计学习-第五章 过程-下

    5.3.3  库测试程序 测试程序#1:整数I/O 该测试程序把输出文本的颜色改为蓝底黄字,然后以十六进制数显示七个数组的内容,最后提示用户输入一个有符号整数,再分别以十进制.十六进制和二进制格式重复 ...

  2. [CTF]摩斯电码

    摩尔斯电码 -----------转载 https://morse.supfree.net/ 摩尔斯电码定义了包括:英文字母A-Z(无大小写区分)十进制数字0-9,以及"?"&qu ...

  3. jquery里面.length和.size()有什么区别

    区别: 1.针对标签对象元素,比如数html页面有多少个段落元素<p></p>,那么此时的$("p").size()==$("p").l ...

  4. 修改VScode底部状态栏颜色

    点击齿轮进入setting 搜索workbench.colorCustomizations,然后点击编辑setting.json 修改为你喜欢的颜色即可,我这里修改为蓝色 例子: "work ...

  5. Java常见异常(Runtime Exception )小结

    java.lang.NullPointerException 程序遇上了空指针 UnsupportedOperationException 不支持的操作 IllegalArgumentExceptio ...

  6. 【java--反射】注解(反射解析注解+注解应用)

    创建实体类 package cn.com.codingce.iocannotation; /** * @Author: Jiangjun * @Date: 2019/10/7 9:54 */ publ ...

  7. 基于ray的分布式机器学习(二)

    基本思路:基于parameter server + multiple workers模式.同步方式:parameter server负责网络参数的统一管理,每次迭代均将参数发送给每一个worker,多 ...

  8. 第一周JVM核心技术-工具与GC策略

    一. JDK工具 1.1 内置命令行工具 工具 简介 jps/jinfo 查看java进程 jstat 查看JVM内部GC信息 jmap 查看JVM堆或类占用空间信息 jstack 查看线程信息 jc ...

  9. Zookeeper详细使用解析!分布式架构中的协调服务框架最佳选型实践

    Zookeeper概念 Zookeeper是分布式协调服务,用于管理大型主机,在分布式环境中协调和管理服务是很复杂的过程,Zookeeper通过简单的架构和API解决了这个问题 Zookeeper实现 ...

  10. GCC链接时库顺序问题

    GCC或G++在编译链接时,如果命令行中含有库,则要特别注意了.根据<C专家编程>5.3节中的提示,GCC在链接时对命令行时的处理顺序是从左到右.证据是GCC的MAN: -l librar ...