千域资源网,QQ技术教程网,技术资源网,QQ黑客技术, QQ资源网,黑客资源网,QQ技术网,免费资源分享平台,让我们的技术更上一层楼!
大家都在搜   老司机 黑客教程 外挂 福利活动

黑客学习 SQL注入

浏览次数:8289发布时间:2017-4-15 21:16文章分类: 黑客教程

实验环境:MySql

Sql注入原理

  • 通过 and xor 等语句测试是否注入到了数据库
  • order by 1 order by 是按照某列的顺序来对数据表排序 1是列 通过这个可以知道表中有多少列
  • union select union特点是select要与前面的一致
  • union select 1,2,3,4,5 sql就会返回1,2,3,4,5

可以将前面注入错误的内容,以便union select可以显示内容

exists()判断括号内的东西是否存在

id=1' and exists(select * from users)--+ 查看存不存在users这个数据表

存在的话,下一步
id=1' and exists(select password from users)--+ 查看users这个表里存不存在password这个字段

可以看到这里是猜数据表和字段,要么是用字典去fuzz
很繁琐,有没有更好的办法呢?
有,Mysql有个元数据库 information_schema

information_schema

information_schema 是一个字典,
包含了整个 mysql 的所有信息,
本质上是一个 database ,
里面有三个表比较常用,
分别是 tables 和 columns ,还有 schemata

  • information_schema.schemata
    • 储存了所有数据库的信息,
    • 字段:schema_name 存放数据库名字
  • information_schema.tables
    • 储存了所有表的信息
    • table_name //存放表格的名字
    • table_schema //存放表格所在的数据库名字
  • information_schema.columns
    • 储存了所有列的信息
    • column_name //存放列的名字
    • table_name //存放表格的名字
    • table_schema //存放表格所在的数据库名字

for example

查找数据库有哪些数据库
id=1' union select 1,schema_name,3,4,5 from information_schema.schemata--+

小节

网上有很多种sql注入的类型,什么数字型,字符型,搜索型…..

sql注入漏洞产生最根本的原因是什么?
是把用户输入的数据当做代码去执行,

白盒分析

get方法接收id,单引号包裹后,直接动态构造sql查询语句

黑盒分析

  • id=1 and 1=1
  • id=1 and 1=0
  • 判断是否当作代码执行了

盲注&&显著

有的代码执行错误后不会返回任何信息,只有执行正确才会返回信息

  • 显注是 :我问数据库问题,他巴拉巴拉给我一通说
  • 盲注是:我问他问题,他只能回复是或者不是
  1. exists(),一样可以猜出数据表和其中字段
  2. id=1 and exists(select password from users)--+
  3. substr()用来截取字符串
  4. id=1 and (substr(user(),1,1)>'a')--+
  5. 用substr截取每一位判断比较(ascii码比较) 通常使用 二分法

小节

  • 注入的利用方法很多
  • 报错注入
  • 延时注入 sleep()
千域资源网 - 本站版权及下载说明

1、本站资源来自互联网收集,仅供用于学习和交流,请于下载后24小时内删除。

2、同类型的网站与软件站 在转载本站原创软件时请注明软件来源:千域资源网

3、本站提供的所有工具,不保证绝对安全无毒,点击下载:影子系统

4、本文链接:https://www.q-yu.cn/hkjc/661.html 百度收录:[未收录]

二维码

千域资源网为您提供最新免费游戏辅助!

对联广告关闭广告
对联广告关闭广告