【渗透实战】sqlmap_修改tamper脚本_绕过WAF_第三期
/文章作者: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_第三期的更多相关文章
- 关于sqlmap当中tamper脚本编码绕过原理的一些总结(学习python没多久有些地方肯定理解有些小问题)
sqlmap中tamper脚本分析编写 置十对一些编码实现的脚本,很多sqlmap里面需要引用的无法实现,所以有一部分例如keywords就只写写了几个引用了一下,其实这里很多脚本运用是可以绕过安全狗 ...
- 【渗透实战】记一次艰难的内网漫游第四期_蹭我WIFI?看我如何利用组合拳日进蹭网者内网
/文章作者:Kali_MG1937 CSDN博客ID:ALDYS4 QQ:3496925334/ 内网漫游系列第三期:[渗透实战]记一次艰难的内网漫游第三期_我是如何利用APT攻击拿到内网最高权限的 ...
- 【渗透实战】那些奇葩的WAF_第二期_无意发现通杀漏洞,空字节突破上传!
/文章作者:Kali_MG1937 CSDN博客号:ALDYS4 QQ:3496925334 未经许可,禁止转载/ 该博文为本人18年左右的渗透记录,文法粗糙,技术含量极低,流水账文章,且今日不知为何 ...
- 使用sqlmap中tamper脚本绕过waf
使用sqlmap中tamper脚本绕过waf 刘海哥 · 2015/02/02 11:26 0x00 背景 sqlmap中的tamper脚本来对目标进行更高效的攻击. 由于乌云知识库少了sqlmap- ...
- sqlmap中tamper脚本绕过waf
0x00 背景 sqlmap中的tamper脚本来对目标进行更高效的攻击. 由于乌云知识库少了sqlmap-tamper 收集一下,方便学习. 根据sqlmap中的tamper脚本可以学习过绕过一些技 ...
- 使用sqlmap中的tamper脚本绕过waf
使用sqlmap中tamper脚本绕过waf 脚本名:0x2char.py 作用:用UTF-8全角对应字符替换撇号字符 作用:用等价的CONCAT(CHAR(),...)对应替换每个(MySQL)0x ...
- 【奇淫巧技】sqlmap绕过过滤的tamper脚本分类汇总
sqlmap绕过过滤的tamper脚本分类汇总
- sqlmap tamper脚本备忘录与tamper脚本编写
查看sqlmap全部脚本 $ python sqlmap.py --list-tampers 使用方法 --tamper=TAMPER 2019.9更新后翻译 * apostrophemask.py- ...
- sqlmap tamper脚本
本文来自:SQLmap tamper脚本注释, 更新了一些脚本,<<不断更新中>> 目前已经总共有50+的脚本,故对源文章进行更新... sqlmap-master ls -l ...
随机推荐
- 1 cmd
打开cmd 在终端打开指定文件 按住alt+e打开我的电脑 补充: 1.windows和+组合快捷键 放大镜,(同理windows -) 然后在地址栏输入cmd,回车即可 常用命令 #盘符切换 ...
- JavaScript 包管理器 -Yarn
Fast, reliable, and secure dependency management. 官网地址 Github 特性 离线模式:如果您之前下载了软件包,则可以在没有任何互联网连接的情况下安 ...
- c++中new[ ]与delete[ ]的分析
前言 以前对c++的new[]的了解就是开辟一块内存,直到我最近在程序中用到它才发现我的了解太浅. 问题分析 new[]得到的内存空间不会自动初始化 new[]是在堆区中动态分配指定大小的内存,但是这 ...
- Beta——事后分析
事后总结 NameNotFound 团队 项目 内容 北航-2020-软件工程(春季学期) 班级博客 要求 Beta事后分析 课程目标 通过团队合作完成一个软件项目的开发 会议截图 一.设想和目标 软 ...
- MyBaits自动配置原理
前言 首先我们建立一个SpringBoot工程,导入mybatis-spring-boot-starter依赖. <dependency> <groupId>org.mybat ...
- 重新整理 .net core 实践篇————依赖注入应用[二]
前言 这里介绍一下.net core的依赖注入框架,其中其代码原理在我的另一个整理<<重新整理 1400篇>>中已经写了,故而专门整理应用这一块. 以下只是个人整理,如有问题, ...
- [linux] Git基本概念&操作
1.基本概念 版本控制系统:一种软体工程技巧,籍以在开发的过程中,确保由不同人所编写的同一项目代码都得到更新.并追踪.记录整个开发过程. 集中式(SVN)/ 分布式(GIT)版本控制系统:SVN的版本 ...
- SystemVerilog 编写FSM
SystemVerilog 编写FSM 题目 SystemVerilog实现 仿真 SystemVerilog 编写FSM 好书: https://github.com/yllinux/blogPic ...
- cat ~/.bash_history
7.history命令 history命令用于显示历史执行过的命令,格式为"history [-c]". history命令应该是作者最喜欢的命令.执行history命令能显示出当 ...
- Centos6.9以下查看端口占用情况和开启端口命令
Centos查看端口占用情况命令,比如查看80端口占用情况使用如下命令: lsof -i tcp:80 列出所有端口 netstat -ntlp 1.开启端口(以80端口为例) ...