欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

mysql手工注入

来源:本站整理 作者:佚名 时间:2017-09-03 TAG: 我要投稿


information_schema
SQL基础
1.1 什么是sql?
SQL(structured query language),即结构化查询语言,是关系数据库的标准语言,SQL是一个通用的、功能强大的关系数据库语言,但其功能并不仅仅是查询。
1.2 mysql
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。另外,MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。来源于百度百科
SQL注入基础
2.1 什么是SQL注入
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。简单来说,SQL注入就是一种通过操作输入(可以是表单,可以是get请求,也可以是POST请求等)来插入或修改后台SQL语句达到代码执行从而进行攻击的技术。
2.2 SQL注入攻击产生的原因
出现SQL注入攻击漏洞的主要原因是:许多网页程序员在编写代码的时候,没有对用户输入数据的合法性进行严格的判断和过滤,从而导致应用程序存在该漏洞。
2.3 mysql注入攻击的方法
对于mysql注入常用的方法主要是以下两种:(1)手工注入。(2)使用工具注入
2.4 mysql手工注入原理
在mysql手工注入中主要是利用mysql自带的information_schema数据库,information_schema这个数据库保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。简单点说,这台MySQL服务器上,到底有哪些数据库、各个数据库有哪些表,每张表的字段类型是什么,各个数据库要什么权限才能访问,等等信息都保存在information_schema数据库里面。
mysql手工注入详解
3.1 基本环境介绍
涉及数据库:learn,涉及表:users。

表users
3.2 判断注入点
and 1=1(正常显示), and 1=2(非正常显示) ,但不限于此。也可以是3>1(正常显示),3>5(非正常显示)等。
3.2.1判断uid是否存在注入点
本身查询语句为:SELECT uid,username FROM users WHERE uid=1

本身查询语句
3.2.2 判断原理
SELECT uid,username FROM users WHERE uid=1 and 1=1

正常显示
SELECT uid,username FROM users WHERE uid=1 and 1=2

非正常显示
3.3 查字段数
3.3.1 order by排序
order by 主要是用于排序,用法基本为:order by  [ASC | DESC]
列名可以是select后面的列名,也可以是数字,代表第一列或第几列!查询字段数也是根据order by排序的列名可以是数字来进行判断的。
3.3.2 查当前查询中的字段数
本身查询语句:SELECT uid,username,phone FROM users WHERE uid=1

本身查询结果
查当前字段数目(列数):order bySELECT uid,username,phone FROM users WHERE uid=1 ORDER BY 3

正常显示
SELECT uid,username,phone FROM users WHERE uid=1 ORDER BY 4

[1] [2] [3] [4] [5]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载