朋友发了我一个站点,来看看吧,是limit注入,不太常见。搞一搞吧。

    

POST /Member/CompanyApply/lists HTTP/1.1
Host: *
Content-Length: 57
Accept: application/json, text/javascript, */*; q=0.01
Origin: *
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Referer: *
Accept-Language: zh-CN,zh;q=0.8
Cookie: *
Connection: close type=1&status=&search_val=&start_date=&end_date=&limit=1

 存在问题参数:limit,看到这个我就想到limit注入。就怕是幌子

  再次尝试输入limit=1和limit=2,2中成功返回了1的所有信息

  ok!尝试limit注入,limit注入不太常见,手法挺少的,尝试:

  limit=1 procedure analyse(1,extractvalue(rand(),concat(0x3a,version())));

  

貌似有waf。。看来是阿里云。。

  我们知道limit注入只能用procedure analyse进行报错注入,可以说是很鸡肋了。

  还有waf。

  先绕waf吧

  首先修改数据包头: 

  发现还是405 

继续尝试绕过:

  思路:找一个上传图片包 :

 

复制粘贴到存在sql注入的数据包中:

    

如果sql语句是union select x from y limit x未使用order by,我们可以使用union select进行注入探测:

使用1 union select 1

发现有order by。。。。只能用那两个函数了。。

参考文章:http://www.vuln.cn/8101

这里踩了不少坑,一直在纠结为啥出不了数据,后来才知道,mysql版本>5.6.6

  这里的问题是很有可能是mysql>5.6

  那么还如何证明注入呢?

  使用into

  limit注入本地测试:

  union select x from y order by x limit x (x=limit参数)

  union select x from y order by x limit 1,x (x=limit参数)

  只有这两种可能了。

  因为版本大于5.6.6只能使用另类方法证明是否是sql注入了:

  先本地测试下:

  查询表,发现是两列数据,id和name字段

  

  平常我们探测列数都是order by,其实我们还可以:

  使用into @

  在limit下利用:

  

会提示列不同:

  

出现了不一样的提示,所以我们的列是2列

  如果我们再次加一个@

  

  就会提示不同列。

  实战测试:

  正确的列数:

  

不正确的列数返回如下:

  

至此我们可以证明出这是个sql注入。最后列数是9

mysql版本号大于5.6.6这是怎么证明的呢?

  1/*!50666aaaa*/报错说明版本号>5.6.66

  

输入

出现错误,输入1/*!50721aaaa*/

不再报错

  

说明 版本号应该是5.7.21

  此次注入经历让我学到了很多,还得多多努力!

绕过阿里云waf进行mysql limit注入证明的更多相关文章

  1. 绕过阿里云waf进行SQL注入

    做个笔记吧,某SQL注入点的绕过,有阿里云waf的. 首先遇到是个搜索框的注入点: 演示下: 针对搜索框,我们的sql语句一般是怎么写的? 本地演示:select * from product whe ...

  2. 揭秘阿里云WAF背后神秘的AI智能防御体系

    背景 应用安全领域,各类攻击长久以来都危害着互联网上的应用,在web应用安全风险中,各类注入.跨站等攻击仍然占据着较前的位置.WAF(Web应用防火墙)正是为防御和阻断这类攻击而存在,也正是这些针对W ...

  3. 重磅发布: 阿里云WAF日志实时分析上线 (含视频)

    摘要: 阿里云WAF与日志服务打通,对外开发Web访问与攻击日志.提供近实时的网站具体的日志自动采集存储.并提供基于日志服务的查询分析.报表报警.下游计算对接与投递的能力. 背景 Web攻击形势 互联 ...

  4. 预警| Confluence 高危漏洞被大规模利用,阿里云WAF接入即可防护,支持免费应急服务

    2019年4月4日,阿里云安全应急响应中心监测到Confluence 官方发布安全更新指出,Widget Connector 存在服务端模板注入漏洞,攻击者能利用此漏洞实现目录穿越遍历甚至远程命令执行 ...

  5. WebLogic Server再曝高风险远程命令执行0day漏洞,阿里云WAF支持免费应急服务

    6月11日,阿里云安全团队发现WebLogic CVE-2019-2725补丁绕过的0day漏洞,并第一时间上报Oracle官方, 6月12日获得Oracle官方确认.由于Oracle尚未发布官方补丁 ...

  6. 阿里云vps上mysql挂掉的解决办法

    阿里云vps上mysql挂掉的解决办法 4条回复 用阿里云的vps用作blog服务器,系统很稳定,已经100多天一直运行正常,大概从上个月开始发现blog的mysql会有时挂掉,会收到短信通知.之前没 ...

  7. [分享]运维分享一一阿里云linux系统mysql密码修改脚本

    [分享]运维分享一一阿里云linux系统mysql密码修改脚本       大象吃豆子 级别: 小白 发帖 12 云币 27 加关注 写私信   只看楼主 更多操作楼主  发表于: 2014-09-3 ...

  8. 阿里云centos中mysql的安装及一些常识知识

    -------------------------------------------------------------------    阿里云centos中mysql的安装 工具WinSCP v ...

  9. 为更强大而生的开源关系型数据库来了!阿里云RDS for MySQL 8.0 正式上线!

    2019年5月29日15时,阿里云RDS for MySQL 8.0正式上线,使得阿里云成为紧跟社区步伐,发布MySQL最新版本的云厂商.RDS for MySQL 8.0 产品是阿里云推出的 MyS ...

随机推荐

  1. Android7.0无需FileProvide搞定URI拍照、应用安装问题

    根据官方文档,从Android7.0版本开始 使用URI打开或安装文件需要单独在应用里配置了,问了度娘,有好多版本的结果,个人认为最靠谱的就是下边这个方法,只需在application的oncreat ...

  2. 后端程序员之路 47、Hadoop hdfs

    Hadoop的核心是HDFS和MapReduce,而两者只是理论基础,不是具体可使用的高级应用,Hadoop旗下有很多经典子项目,比如HBase.Hive等,这些都是基于HDFS和MapReduce发 ...

  3. MySQL注入 利用系统读、写文件

    目录 能读写文件的前提 Windows下的设置 Linux下的设置 没有读写权限的尝试 有SQL注入点,确认是否有读写权限 read load_file() load data infile() wr ...

  4. C#中委托、匿名函数、Lambda表达式的一些个人理解

    0x01定义一个委托,相当于定义一个可以存储方法的特殊变量类型 下面我们看具体的代码,通过代码更好理解 delegate void IntMethodInvoker(int x); 这行代码就是声明一 ...

  5. 使用Java+NetBeans设计web服务和页面,用Tomcat部署网页

    一 安装NetBeans(自动安装jdk) 二 创建服务器 三 发布服务 一 安装NetBeans(自动安装jdk) 进入oracle的下载界面: http://www.oracle.com/tech ...

  6. 主成分分析 | Principal Components Analysis | PCA

    理论 仅仅使用基本的线性代数知识,就可以推导出一种简单的机器学习算法,主成分分析(Principal Components Analysis, PCA). 假设有 $m$ 个点的集合:$\left\{ ...

  7. CSS轮廓和圆角

    1 2 <!DOCTYPE html> 3 <html lang="en"> 4 <head> 5 <meta charset=" ...

  8. python写一个学生信息管理系统

    #coding:utf-8 2 info = []#全局变量 3 def info_print(): 4 print("请选择功能:") 5 print("1:添加学员& ...

  9. Git基本操作流程

    技术背景 Gitee是一款国内的git托管服务,对于国内用户较为友好,用户可以访问Gitee地址来创建自己的帐号和项目,并托管在Gitee平台上.既然是git的托管服务,那我们就可以先看看git的一些 ...

  10. 用 customRef 做一个防抖函数,支持 element 等UI库。

    这几天学习Vue的官网,看到 customRef 提供了一个例子,研究半天发现这是一个防抖函数,觉得挺好,于是把这个例子扩展了一下,可以用于表单子控件和查询子控件. 需求 v-model 基于 ele ...