首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

mysql无逗号的注入技巧

明天就要考试了,然而我还在任性的写代码,真是该剁手,剁手啊… 在一个 ctf比赛中,遇到这样一个注入题: 用户的ip可以用x-forwarded-for来伪造,然后把ip存储到数据库中去,对ip没有进行任何过滤...,存在注入,但是有一个限制就是: 用‘,’逗号对ip地址进行分割,仅仅取逗号前面的第一部分内容。...比赛的时候,就各种纠结,想着怎么绕过逗号,没想出来,比赛结束之后,仔细想想,终于搞明白了,做以下的总结。...测试一下: [python] x-forwarded-for: 10.20.0.12’+sleep(5) and ‘1’=’1 [/python] 果真延时了,注入是存在的,但是怎么出数据呢???...:",flag break except KeyboardInterrupt,e: exit(0) else: pass rint i+1,str [/python] 再增加一种绕过逗号的姿势

1.7K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    绕过安全狗进行sql注入(MySQL)

    实验环境 网站安全狗v4.0 apache 2.4.27 php 5.6 MySQL 5.7 我们需要到安全狗官网上去下载最新版的网站安全狗(我用的apache版),将防护等级调到最高,这也是各个网站管理员经常做的事...判断注入点 首先是判断注入点,我们通常使用的and 1=1和and 1=2都会被拦截的,贴图如下: ? 真是熟悉的界面!...不拦截 ' and(1=1) 拦截 可见如果是字符型的报错注入其实就很好判断,直接看是否报错^_^,如果想要通过and预算福判断就需要想办法绕过正则,首先and可以替换为&&,我们试一下 ?...,于是稀里糊涂测试了一番,返现直接利用mysql的内联注释直接就过了!...当然,我们在注入的时候需要用到union select from,这里如果直接加上from,肯定是会被过滤掉的(毕竟安全狗也不傻),所以,我们只要在from与表名之间按照union 与select之间同样的规则变形就可以绕过了

    2K40

    PHP+Mysql注入防护与绕过

    今天给大家分享一个关于php常见的注入防护以及如何bypass的文章,文章内容来源国外某大佬总结,我做了一下整理,文章来源地址不详,下面正文开始。...以下的方式也仅仅是针对黑名单的过滤有一定的效果,为了安全最好还是以白名单的方式对参数进行检测。...黑名单关键字过滤与绕过 ---- 过滤关键字and、or PHP匹配函数代码如下: preg_match('/(and|or)/i', $id) 如何Bypass,过滤注入测试语句: 1 or 1 =...: 1 || lpad(user,7,1) 测试方法可以替换为如下语句测试: 1%0b||%0blpad(user,7,1) 部分WAF绕过技巧 ---- 1、绕过部分WAF /news.php?...(first_name,7,1).html 替换后: /main/news/id/1%0b||%0blpad(first_name,7,1).html 6、大多数的CMS和WAF会对用户输入进行解码然后过滤

    1.5K00

    SQL注入测试技巧TIP:再从Mysql注入绕过过滤说起

    *本文原创作者:Zzzxbug,本文属FreeBuf原创奖励计划,未经许可禁止转载 对于mysql的注入,基本上是每一名web安全从业者入门的基本功,这里不多废话,结合本人无聊时在mysql上的测试,来谈一谈...mysql在过滤某些特殊字符情况下的注入,因为是想到哪写到哪,文章比较散,各位大佬请绕过,和我一样的小白可以看一看,温故而知新,必有所获。...php查询mysql的后台脚本就不搭了,没有多大意义,直接从mysql控制台开始测试。首先从最简单的开始: 直接使用mysql系统库做测试: ?...接下来继续提高难度,我们的注入语句中有许多逗号,看了让人不爽,如果把逗号也过滤掉,我们有没有办法注入呢,方法还是有的,我们可以结合join语句和子查询的别名来替换逗号,看下面的语句 ?...在这个语句中,我们利用join与别名,成功的避免使用逗号实现了注入: select host,user from user where user='a'union(select*from((select

    1.3K30

    SQL注入的绕过方式

    这篇文章搜集整理自@Junehck师傅的Github,记录了他在实战中遇到的各种WAF拦截SQL注入的场景和绕过姿势,文章并不是完整的,仅记录了Bypass部分。...k.=` Other Emoji绕过WAF 先 order by 获取列数 尝试使用联合注入时就会被拦截,无限等待响应 这里我们使用emoji方式去代替空格来绕过 waf,成功注入出回显 注释符绕过...,页面 500 报错并输出了报错信息 这里竟然有报错我们就想着使用报错注入,但是含有类似于updatexml这种关键字直接拦截 因为 get 绕过姿势较少,我们尝试把数据通过 post 发送,发现后端也接收...这里我们打算使用 updatexml 来进行报错输出,在 url 后面添加 and 发现并没有拦截,但是如果在 and 后面空格然后跟 updatexml 直接被拦截 这里我们的绕过方法是用运算符...WAF 首先通过-1 /1/0运算判断出存在数字型 sql 注入,一般来说 asp 都是用 access,这里使用--%0a的方式来构造 payload 也能正常执行,判断出这里为 mssql 这里的测试

    92120

    SQL注入过滤的绕过

    preg_replace('A','B','C') # 执行一个正则表达式的搜索和替换 搜索C中符合A的部分,然后用B来代替。...不好意思,不存在的!道高一尺魔高一丈,虽然过滤了某些字符,但是已然可以绕过,达到SQL注入的目的。...(),limit()等函数,这些函数都需要用到逗号,如果只是过滤了逗号,则对于substr(),substring(),mid()可以使用from for的方式来绕过。...,会用到二分法来比较操作符来进行操作,如果过滤了比较操作符,那么就需要使用到greatest()和lease()来进行绕过。...在MySQL数据库中,都会有一个默认的information_schema数据库。这个数据库中的tables表是整个MySQL数据库表名的汇总。columns表是整个MySQL数据库列的汇总。

    3.3K10

    SQL注入绕过的简单总结

    新人web手对sql注入的一些简单总结 SQL语法学习 基础必学要打牢,首先要会SQL查询语句才能会SQL注入嘛,学习网站 常用函数介绍 COUNT(column_name) 函数返回指定列的值的数目...常用运算符和关键字 union用于联合查询 (注意:必须要有相同的字段数,注入时通常先用order by 测试下有几个字段) '用于闭合语句 不带引号的以 0X 开头的十六进制值在MYSQL中会被解释为对应的字符串...过滤等号=绕过 不加通配符的like执行的效果和=一致,所以可以用来绕过。...部分 就会被选择出来 用来取代=时,rlike的用法和上面的like一样,没有通配符效果和=一样 mysql> select * from users where id rlike 1; +----+...# 过滤单引号时 %bf%27 %df%27 %aa%27 12 %df\’ = %df%5c%27=縗’ 1 过滤逗号绕过 如果waf过滤了逗号,并且只能盲注(盲注基本离不开逗号啊喂),在取子串的几个函数中

    1.9K10

    深入理解SQL注入绕过WAF和过滤机制

    深入理解SQL注入绕过WAF和过滤机制 知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion...,特殊符号有特殊的含义和用法,涉及信息量比前面提到的几种都要多 先看下乌云drops上“waf的绕过技巧”一文使用的几个例子: 1.使用反引号`,例如select `version()`,可以用来过空格和正则...203 0x5 本文小结 本文内容到这里内容差不多就算是完了,回顾一下本文内容,主要从三个方面展开:绕过WAF的方法、Filter的实现机制和Evasion措施、测试示例和向量。...p=622 SQL注入中的WAF绕过技术: http://netsecurity.51cto.com/art/201301/376869.htm 浅谈WAF的绕过: http://netsecurity.../ addtion:"Mysql注入科普"也不错 :http://drops.wooyun.org/tips/123----

    3.1K31

    mysql format不要逗号_笔记:number_format() 函数去掉数字千分位的逗号

    最近有朋友找我仿站,为了实现某些效果,要去掉访问次数千分位的逗号,说真的,倡萌没有系统学习过PHP,所以只好求教 露兜老大,得知可以通过 number_format() 函数通过千位分组来格式化数字。...PHP number_format() 函数 定义和用法 number_format() 函数通过千位分组来格式化数字。...要格式化的数字。 如果未设置其他参数,则数字会被格式化为不带小数点且以逗号 (,) 作为分隔符。 decimals 可选。规定多少个小数。如果设置了该参数,则使用点号 (.)...规定用作小数点的字符串。 separator 可选。规定用作千位分隔符的字符串。 仅使用该参数的第一个字符。比如 “xyz” 仅输出 “x”。 注释:如果设置了该参数,那么所有其他参数都是必需的。...提示和注释 注释:该函数支持一个、两个或四个参数(不是三个)。

    3.7K20

    通过 SQL 函数绕过 SQL 注入 WAF 的案例研究

    使用 And 0 的传统方式 And 0 的普通用法很容易被 WAF 检测到并立即触发它,因此无法使用该查询。下面的示例描述了在 SQL 注入中使用 false 值的传统方式。...SQL 注入 WAF 的案例研究 使用 And 0 的另一种方法 以下方法是其各自的 SQL 支持的新发现的查询,作为声明 false、null 或 0 值的新方法。...id=1 and power(5,5) Order by 10– 非法参数数据类型 错误通知非法参数数据类型INT和操作'='的行,与条件中包含的列的数据类型有关。...下面的示例描述了在 SQL 注入中使用 false 值的传统方式。...Web 应用程序防火墙 由于 0xHEX 值在 SQL 查询和注入负载中被接受并广泛使用,因此它是绕过基于静态的防火墙的好方法。

    44320

    正确处理 CSV 文件的引号和逗号

    CSV(Comma-Separated Values,逗号分割值),就是用纯文本的形式存储表格数据,最大的特点就是方便。...作为开发,我们经常面临导数据的问题,特别是后台系统,产品或者运营的同事常常会提需求。...当我遇到了几个问题: 发现如果原来的文本带有回车或者换行,拼接后整行就断开了; 加引号可以解决,但是引号中间有引号怎么办?用 \ 转义也不行; 逗号怎么办?...于是翻了谷歌,看到维基百科有 逗号分隔值 的标准化定义: 以(CR/LF)字符结束的DOS风格的行(最后一行可选)。 一条可选的表头记录(没有可靠的方式来检测它是否存在,所以导入时必须谨慎)。...每条记录“应当”包含同样数量的逗号分隔字段。 任何字段都可以被包裹(用双引号)。 包含换行符、双引号和/或逗号的字段应当被包裹。(否则,文件很可能不能被正确处理)。

    1.2K10

    addslashes防注入的绕过案例(AFSRC获奖白帽子情痴)

    代码审计中遇到的一些绕过addslashes的案例 From ChaMd5安全团队核心成员 无敌情痴 MMMMM叫我写一篇文章发到公众号,然而我是ChaMd5安全团队第一弱的大菜逼,...于是就写篇基础的审计文章,在实际情况中,会出现各种各样的绕过防注入的手法,我这里只是列举了我在实际审计中遇到的比较常见的绕过方法。...根据实际的情况,也有各种绕过addslashes的方法,今天写写几个代码审计中绕过addslashes的实例。...,这样设置数据库的字符集为gbk mysql_query(“SET NAMES ‘gbk'”); 绕过addslashes的案例,这个个人觉得比较有趣 这套系统也是通过addslashes来防御sql注入的 .......

    4K90

    Sql注入总结学习

    MySQL 5.0以上和MySQL 5.0以下版本的区别 5.2.1. information_schema 5.2.2. SCHEMATA 5.2.3. TABLES 5.2.4....绕过 6.1. 大小写绕过 6.2. 双写绕过 6.3. 编码绕过(url全编码、十六进制) 6.4. 内联注释绕过 6.5. 关键字替换 6.5.1. 逗号绕过 6.5.2....MySQL 5.0以上和MySQL 5.0以下版本的区别 MySQL 5.0以上版本存在一个存储着数据库信息的信息数据库–INFORMATION_SCHEMA ,其中保存着关于MySQL服务器所维护的所有其他数据库的信息...,列的编码类型,列的权限,列的注释等 绕过 大小写绕过 双写绕过 编码绕过(url全编码、十六进制) 内联注释绕过 关键字替换 逗号绕过 substr、mid()函数中可以利用from to来摆脱对逗号的利用...; limit中可以利用offset来摆脱对逗号的利用 比较符号( >、绕过 greatest、between and 逻辑符号的替换 and=&& or=|| xor=| not=!

    1.1K20

    一次INSERT查询的无逗号SQL注入漏洞构造利用($10k)

    本文分享的是作者在一次众测中的SQL报错型注入漏洞发现过程,有趣之处在于,在后续漏洞利用的构造中,如果在目标服务端数据库逻辑的INSERT查询中使用逗号(Comma),将导致构造的Payload不可用,...这种情况下,作者通过综合Time-based注入、Case When和Like操作成功实现了SQL注入,漏洞获得了厂商$10,000美金的奖励。...综合分析 有了以上的分析,总体的漏洞利用应该不成问题了,但是,在我当前测试的目标数据库中,其存在注入漏洞的参数是urls[] 和 methods[],而且它们的值都是用逗号 -“,”进行分隔的,我按照以上分析的...Payload构造进行测试后发现,其中的逗号会破坏我们的Payload构造,最终会导致注入利用不成功。...解决方法 所以,这样来看,我们的Payload中必须不能包含逗号。第一步,我们需要找到一个代替IF条件且能用逗号和其它语句共同作用的方法语句。

    60630

    Mysql注入导图-学习篇

    这一部分可以利用SQLi-labs这套题训练一下,源码和答案(Mysql注入天书)已经放到了网盘里,需要的朋友可以自取,这里面的题非常多,也比较全。...可以继续测试,根据测试结果,用工具或者写脚本进行注入。 注释符绕过 继续往下,是Mysql注释符部分,其中有两点需要注意。第一,' /*!50000or*/1='1和' /*!...对于php-mysql来说,通过PDO_MYSQL和MYSQLi方式与数据库交互地可以使用堆叠注入,但通过mysql_query进行交互的不可以。...绕过逗号 继续向下,绕过逗号是一个在CTF中常见的知识点,可以在有回显情况下,不引用逗号,进行注入。mid('abc' from 1 for 1) 则在禁止逗号的盲注中非常有用。...limit 1 offset 0 可以用来绕过 limit 0,1中的逗号 下面的溢出区绕过指的是有些web应用会截取用户输入,分段执行。这时可以利用截取的位数,来绕过关键字检测。

    1.6K00

    黑客常用SQL注入绕过技术总结!

    大家好,我是冰河~~ 今天给大家再次分享一篇硬核内容,那就是黑客常用的SQL注入绕过技术,还是那句话:我们学渗透技术不是为了攻击别人的系统,而是了解黑客常用的渗透技能,以此来修复我们自己系统中的漏洞,使我们的系统更加健壮...id=1%27and(sleep(ascii(mid(database()from(1)for(1)))=109))%23 (from for属于逗号绕过下面会有) 上面的方法既没有逗号也没有空格。...\ ' " \x1a (防御,将mysql设置为gbk即可) 13.多参数请求拆分 对于多个参数拼接到同一条SQL语句中的情况,可以将注入语句分割插入。...and a=[input1] and b=[input2] 这时就可以将注入语句进行拆分,如下所示: a=union/*&b=*/select 1,2,3,4 最终将参数a和参数b拼接,得到的SQL...可见,IIS比较容易利用,可以直接分割带逗号的SQL语句。在其余的中间件中,如果WAF只检测了通参数名中的第一个或最后一个,并且中间件的特性正好取与WAF相反的参数,则可成功绕过。

    2.8K50
    领券