前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >安全狗 {safedog} 最新版注入bypass

安全狗 {safedog} 最新版注入bypass

作者头像
Power7089
发布2020-07-27 16:31:26
1.1K0
发布2020-07-27 16:31:26
举报

登陆 BUGFOR.COM 查看更多骚操作。注册即可抽奖黑客硬件

0X00 前言

版本: 4.0.26550 直接官方下载 最新版本

当前日期: 5-12日

本机系统: Windows

环境: PHPStudy 、套件 Apache + MySQL5.7.26

靶场下载链接:

https://pan.baidu.com/s/1QdqaDhZvio2KCQ3Uz3IVeA

提取码:rdhn

本文由“壹伴编辑器”提供技术支持

bypass 差不多就是根据各层特性来绕过安全狗的正则匹配

0X01 检测注入

  • and 1=1 会被拦截
  • 而 1=1 不会拦截 他这里基于正则 如果url里有and 1=1 就会被拦截
  • 所以 这里利用了Mysql 的特性 利用浮点数 来绕过

代码语言:javascript
复制
id=2.0and 1=1  
  • 这样safedog 就检测不出前面的and
  • 当然 有同学就会说了 这没有单引号包裹 是数字型注入 比较好绕 确实是这样
  • 1<0 因为1不可能等于0 逻辑错误 下面数据就不会出现 就可以检测是否存在注入
  • 我这里升级下改为输入的内容被单引号包裹着 前面的两种方式就凉凉 这是根据 mysql 的特性
  • 不过我们可以改变 and 用 “&” (或着)代替 然后加上用浏览器自动解码的特性 将 & 变为 %26

Payload为:

代码语言:javascript
复制
1'%26 1='1   为真 返回正确页面1'%26 1='2  为假  返回错误页面

0x02 猜字段数

  • 我们看一下正常的
  • 会被拦截,然后我们在里面随意加个字符发现 正则是匹配 order by 的 中间随意加了个字符就不会匹配成功,这样我们就有思路了:
  • 利用 MySQL 的 特性 注入+换行写 来绕过正则匹配 -- -a%0a
  • 原理就是 -- - 是mysql的注释符 然后加上%0a 换行了 等于下图

0X03 联合查询

  • 可以看到 正常会被拦截
  • 我们修改字符 并不会被拦截
  • 正则就是匹配 union +select 的组合 利用刚才说的-- -a+换行%0a 来绕过 可以发现没有 出错
  • 然然后笔者发现 user() 会被拦截 利用 mysql 的特性 用内联/*!*/来绕过正则然后我们需要查询数据
  • 发现会被拦截 经过我的测试 他和上面一样 from 后面不能接正确的表名 不然会被拦截

利用-- -a + 换行绕过

Payload:

代码语言:javascript
复制
-- -a%0aselect 1,2,3,11,5 from -- -a%0atest limit 1,1-- -a

(如果需要的话 请务必将列名改成mysql默认的 然后 后面的表名改成默认的)

该文章已经发布到 BUGFOR.COM

0X04 该文章已经发布到 BUGFOR.COM

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-05-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员阿甘 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档