精品国产18久久久久久洗澡_精品剧情v国产在线观看_任你弄精品视频免费观看_国产毛片av在线_在线观看日产精品_黄色综合网站_一区二区乱码_蜜桃tv在线播放_五月婷婷激情综合网_日韩午夜激情

  • IDC銷售:020-66849165/66849090/66849088
  • 云服務銷售:020-66849108/9091 | 客服(備案,域名,虛機,郵箱):020-66849000-2

登錄 | 會員注冊 | 控制面板 | 幫助中心 | 購物車 | 舉報中心

? ? 域名活動
幫助中心FAQ


information_schema數據庫是MySQL自帶的數據庫,MySQL 5.x以下沒有這個數據庫,它提供了整個MySQL訪問數據庫元數據的方式,其中就包含MySQL里面所有的數據庫名或表名,列的數據類型,或訪問權限等。也就是說information_schema中保存著關于MySQL服務器所維護的所有其他數據庫的信息。在INFORMATION_SCHEMA中,有數個只讀表。

 

```

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| security           |

| test               |

+--------------------+

 

mysql> use information_schema;

 

mysql> show tables;

+---------------------------------------+

| Tables_in_information_schema          |

+---------------------------------------+

| CHARACTER_SETS                        |

| COLLATIONS                            |

| COLLATION_CHARACTER_SET_APPLICABILITY |

| COLUMNS                               |

| COLUMN_PRIVILEGES                     |

| ENGINES                               |

| EVENTS                                |

| FILES                                 |

| GLOBAL_STATUS                         |

| GLOBAL_VARIABLES                      |

| KEY_COLUMN_USAGE                      |

| PARAMETERS                            |

| PARTITIONS                            |

| PLUGINS                               |

| PROCESSLIST                           |

| PROFILING                             |

| REFERENTIAL_CONSTRAINTS               |

| ROUTINES                              |

| SCHEMATA                              |

| SCHEMA_PRIVILEGES                     |

| SESSION_STATUS                        |

| SESSION_VARIABLES                     |

| STATISTICS                            |

| TABLES                                |

| TABLESPACES                           |

| TABLE_CONSTRAINTS                     |

| TABLE_PRIVILEGES                      |

| TRIGGERS                              |

| USER_PRIVILEGES                       |

| VIEWS                                 |

| INNODB_BUFFER_PAGE                    |

| INNODB_TRX                            |

| INNODB_BUFFER_POOL_STATS              |

| INNODB_LOCK_WAITS                     |

| INNODB_CMPMEM                         |

| INNODB_CMP                            |

| INNODB_LOCKS                          |

| INNODB_CMPMEM_RESET                   |

| INNODB_CMP_RESET                      |

| INNODB_BUFFER_PAGE_LRU                |

+---------------------------------------+

```

 

上面顯示的表,實際上是視圖,而不是基本表,在數據庫的數據保存目錄是看不到這個數據庫的實體文件,而數據庫的數據保存在MySQLdata目錄,mysql、performance_schema、test、security

 

```

# 查看當前數據保存目錄

mysql> select @@datadir;

+-------------------------------------+

| @@datadir                           |

+-------------------------------------+

| D:phpStudyPHPTutorialMySQLdata |

+-------------------------------------+

```

 

```

mysql> select schema_name from information_schema.schemata;

+--------------------+

| schema_name        |

+--------------------+

| information_schema |

| mysql              |

| performance_schema |

| security           |

| test               |

+--------------------+

```

 

可以看到他們的作用是一樣的,都是列出所有數據庫,跟我們前面說的一樣,SCHEMA_NAME字段保存了所有的數據庫名。

 

每一個目錄對應數據庫中的一個數據庫,在數據庫中執行show databases;的時候,可以看到存在5個數據庫,正是少了information_schema這個數據庫。

 

- 在SQL注入中,重點關注的表有如下幾個,因為主要的時候主要利用這幾個表來獲取數據:

    - SCHEMATA:提供了當前mysql數據庫中所有數據庫的信息,其中SCHEMA_NAME字段保存了所有的數據庫名。show databases的結果取自此表。

    - TABLES:提供了關于數據庫中的表的信息,詳細表述了某個表屬于哪個schema,表類型,表引擎,創建時間等信息,其中table_name字段保存了所有列名信息,show tables from schemaname的結果取自此表。

    - COLUMNS:提供了表中的列信息。詳細表述了某張表的所有列以及每個列的信息,其中column_name保存了所有的字段信息。show columns from schemaname.tablename的結果取自此表。

 

```

mysql> desc tables;

+-----------------+---------------------+------+-----+---------+-------+

| Field           | Type                | Null | Key | Default | Extra |

+-----------------+---------------------+------+-----+---------+-------+

| TABLE_CATALOG   | varchar(512)        | NO   |     |         |       |

| TABLE_SCHEMA    | varchar(64)         | NO   |     |         |       |

| TABLE_NAME      | varchar(64)         | NO   |     |         |       |

| TABLE_TYPE      | varchar(64)         | NO   |     |         |       |

| ENGINE          | varchar(64)         | YES  |     | NULL    |       |

| VERSION         | bigint(21) unsigned | YES  |     | NULL    |       |

| ROW_FORMAT      | varchar(10)         | YES  |     | NULL    |       |

| TABLE_ROWS      | bigint(21) unsigned | YES  |     | NULL    |       |

| AVG_ROW_LENGTH  | bigint(21) unsigned | YES  |     | NULL    |       |

| DATA_LENGTH     | bigint(21) unsigned | YES  |     | NULL    |       |

| MAX_DATA_LENGTH | bigint(21) unsigned | YES  |     | NULL    |       |

| INDEX_LENGTH    | bigint(21) unsigned | YES  |     | NULL    |       |

| DATA_FREE       | bigint(21) unsigned | YES  |     | NULL    |       |

| AUTO_INCREMENT  | bigint(21) unsigned | YES  |     | NULL    |       |

| CREATE_TIME     | datetime            | YES  |     | NULL    |       |

| UPDATE_TIME     | datetime            | YES  |     | NULL    |       |

| CHECK_TIME      | datetime            | YES  |     | NULL    |       |

| TABLE_COLLATION | varchar(32)         | YES  |     | NULL    |       |

| CHECKSUM        | bigint(21) unsigned | YES  |     | NULL    |       |

| CREATE_OPTIONS  | varchar(255)        | YES  |     | NULL    |       |

| TABLE_COMMENT   | varchar(2048)       | NO   |     |         |       |

+-----------------+---------------------+------+-----+---------+-------+

```

 

分別記錄一個表名和一個這個表所屬的庫名。其中TABLE_NAME保存的是表名,而TABLE_SCHEMA保存的是這個表名所在的數據庫。我們可以查詢一條記錄看看,在查詢前,先看看有多少條記錄,避免記錄太多查看不方便,執行select count(*) from tables;

 

```

mysql> select count(*) from tables;

+----------+

| count(*) |

+----------+

|       85 |

+----------+

```

 

說明當前所有數據庫中的表數量為85。查詢任意一條記錄查看,這里選擇最后一條記錄,SQL語句為:select * from tables limit 141,1G由于在客戶端中,默認查詢結果顯示不友好,所以,可以把語句后面的分號改成G,他會讓一條記錄顯示一行,看起來不那么亂。G只支持在客戶端中用,在其他連接數據庫的軟件中,使用G會報錯。

 

```

mysql> select * from tables limit 84,1G

*************************** 1. row ***************************

  TABLE_CATALOG: def

   TABLE_SCHEMA: security

     TABLE_NAME: users

     TABLE_TYPE: BASE TABLE

         ENGINE: MyISAM

        VERSION: 10

     ROW_FORMAT: Dynamic

     TABLE_ROWS: 8

 AVG_ROW_LENGTH: 24

    DATA_LENGTH: 196

MAX_DATA_LENGTH: 281474976710655

   INDEX_LENGTH: 2048

      DATA_FREE: 0

 AUTO_INCREMENT: 9

    CREATE_TIME: 2020-08-21 02:13:29

    UPDATE_TIME: 2020-08-21 02:13:29

     CHECK_TIME: NULL

TABLE_COLLATION: utf8_general_ci

       CHECKSUM: NULL

 CREATE_OPTIONS:

  TABLE_COMMENT:

```

 

可以看到,最后一條記錄的TABLE_NAME是users,TABLE_SCHEMA為security。查看security數據庫中的表,SQL語句為:show tables from security;可以看到確實存在users表。

 

```

mysql> show tables from security;

+--------------------+

| Tables_in_security |

+--------------------+

| emails             |

| referers           |

| uagents            |

| users              |

+--------------------+

```

 

既然information_schema的TABLES表中的TABLE_SCHEMTA字段是保存的數據庫名,而TABLE_NAME保存了表名,那么就可以使用TABLE_SCHEMTA字段作為查詢條件,查詢TABLE_NAME,即可得知所有指定數據庫中的所有表名。

 

比如,我們想要通過information_schema數據庫來查詢security數據庫中所有的表,那么就可以使用如下SQL語句:select table_name from information_schema.tables where table_schema ='security';

 

如果當前庫為information_schema,則可以省略不寫,否則跨庫查詢的時候,需要帶上庫名。

 

```

mysql> select table_name from information_schema.tables where table_schema ='security';

+------------+

| table_name |

+------------+

| emails     |

| referers   |

| uagents    |

| users      |

+------------+

```

 

通過修改 TABLE_SCHEMA 的限制,可以查詢任意數據庫中的所有表名,網上的通過注入爆表名便是這個原理。

 

知道了表名,那么如何獲取表中的字段呢?要知道我們沒有表名的話,會把所有的數據查詢出來,而如果注入沒有回顯,不能進行union查詢,那么想要獲取我們的標目數據,無疑效率極低。

 

幸運的是,在information_schema數據庫中,同樣存在一個表,它保存了整個數據中,所有的列名,這個表就是COLUMNS。同樣先查看該表結構。

 

```

mysql> desc columns;

+--------------------------+---------------------+------+-----+---------+-------+

| Field                    | Type                | Null | Key | Default | Extra |

+--------------------------+---------------------+------+-----+---------+-------+

| TABLE_CATALOG            | varchar(512)        | NO   |     |         |       |

| TABLE_SCHEMA             | varchar(64)         | NO   |     |         |       |

| TABLE_NAME               | varchar(64)         | NO   |     |         |       |

| COLUMN_NAME              | varchar(64)         | NO   |     |         |       |

| ORDINAL_POSITION         | bigint(21) unsigned | NO   |     | 0       |       |

| COLUMN_DEFAULT           | longtext            | YES  |     | NULL    |       |

| IS_NULLABLE              | varchar(3)          | NO   |     |         |       |

| DATA_TYPE                | varchar(64)         | NO   |     |         |       |

| CHARACTER_MAXIMUM_LENGTH | bigint(21) unsigned | YES  |     | NULL    |       |

| CHARACTER_OCTET_LENGTH   | bigint(21) unsigned | YES  |     | NULL    |       |

| NUMERIC_PRECISION        | bigint(21) unsigned | YES  |     | NULL    |       |

| NUMERIC_SCALE            | bigint(21) unsigned | YES  |     | NULL    |       |

| CHARACTER_SET_NAME       | varchar(32)         | YES  |     | NULL    |       |

| COLLATION_NAME           | varchar(32)         | YES  |     | NULL    |       |

| COLUMN_TYPE              | longtext            | NO   |     | NULL    |       |

| COLUMN_KEY               | varchar(3)          | NO   |     |         |       |

| EXTRA                    | varchar(27)         | NO   |     |         |       |

| PRIVILEGES               | varchar(80)         | NO   |     |         |       |

| COLUMN_COMMENT           | varchar(1024)       | NO   |     |         |       |

+--------------------------+---------------------+------+-----+---------+-------+

```

 

這里面,與注入相關的存在3個字段,分別是TABLE_SCHEMA、TABLE_NAME以及COLUMN_NAME,不難猜到,如果在該表中查詢一條記錄,TABLE_SCHEMA保存了這條記錄保存的字段所屬的數據庫名,而TABLE_NAME保存的是該字段所屬表名,COLUMN_NAME則是一個列名記錄,查詢一條記錄驗證一下,首先確定該表有多少條記錄,執行select count(*) from columns;,得知一共有820條記錄。

 

```

mysql> select count(*) from columns;

+----------+

| count(*) |

+----------+

|      820 |

+----------+

```

 

獲取最后一條記錄,執行select * from columns limit 819,1G

 

```

mysql> select * from columns limit 819,1G

*************************** 1. row ***************************

           TABLE_CATALOG: def

            TABLE_SCHEMA: security

              TABLE_NAME: users

             COLUMN_NAME: password

        ORDINAL_POSITION: 3

          COLUMN_DEFAULT: NULL

             IS_NULLABLE: NO

               DATA_TYPE: varchar

CHARACTER_MAXIMUM_LENGTH: 20

  CHARACTER_OCTET_LENGTH: 60

       NUMERIC_PRECISION: NULL

           NUMERIC_SCALE: NULL

      CHARACTER_SET_NAME: utf8

          COLLATION_NAME: utf8_general_ci

             COLUMN_TYPE: varchar(20)

              COLUMN_KEY:

                   EXTRA:

              PRIVILEGES: select,insert,update,references

          COLUMN_COMMENT:

```

 

其中COLUMNS_NAME為password,TABLE_NAME為users,TABLE_SCHEMA為security,這說明,在security這個數據中,users表存在一個password的列,也就是我們常說的password字段。

 

查看security的users表是否存在該字段,執行SQL語句:show columns from security.users;

 

```

mysql> show columns from security.users;

+----------+-------------+------+-----+---------+----------------+

| Field    | Type        | Null | Key | Default | Extra          |

+----------+-------------+------+-----+---------+----------------+

| id       | int(3)      | NO   | PRI | NULL    | auto_increment |

| username | varchar(20) | NO   |     | NULL    |                |

| password | varchar(20) | NO   |     | NULL    |                |

+----------+-------------+------+-----+---------+----------------+

```

 

可以看到確實存在該字段。

 

既然在columns中,TABLE_NAME保存了字段所屬的表名,TABLE_SCHEMA保存了該字段所屬的庫名,與通過TABLES表獲取表名一樣,我們就可以查詢把TABLE_NAME 和TABLE_SCHEMA做為查詢條件,查詢符合條件的COLUMN_NAME,也就是查詢指定數據庫中某表中的字段。

 

比如,我們要通過information_schema數據庫的columns表查詢security數據庫中user表中所有的字段,可以執行如下SQL語句:select column_name from information_schema.columns where table_schema='security' and table_name='users';

 

```

mysql> select column_name from information_schema.columns where table_schema='security' and table_name='users';

+-------------+

| column_name |

+-------------+

| id          |

| username    |

| password    |

+-------------+

```

 

查詢結果與show columns from security.users; 一致。

 

```

mysql> show columns from security.users;

+----------+-------------+------+-----+---------+----------------+

| Field    | Type        | Null | Key | Default | Extra          |

+----------+-------------+------+-----+---------+----------------+

| id       | int(3)      | NO   | PRI | NULL    | auto_increment |

| username | varchar(20) | NO   |     | NULL    |                |

| password | varchar(20) | NO   |     | NULL    |                |

+----------+-------------+------+-----+---------+----------------+

```

 

知道了庫名、表名、字段,如果有回顯且支持聯合查詢,就可以直接通過在注入點后面注入一個聯合查詢語句,即可直接獲取數據,如果不能回顯,則可能需要通過盲注獲取數據。

精品国产一区二区三区忘忧草| 欧美日韩成人在线| 风间由美性色一区二区三区四区| 免费高清成人| 亚洲精品综合在线| 天堂av在线一区| aaa国产精品| 91麻豆国产福利在线观看宅福利| 欧美日韩久久一区| 国产日本亚洲高清| 亚洲一区亚洲| 国产色噜噜噜91在线精品| 久久精品视频观看| jizz欧美大全| 91久久精品一区二区| 成人av电影在线播放| 亚洲国产精品综合久久久| 中文字幕综合| 白浆在线视频| 国产黄色片在线观看| 先锋影音成人资源| 欧美自拍丝袜亚洲| 亚洲精选一二三| 大美女一区二区三区| 亚洲精品乱码久久久久久蜜桃麻豆| 成人性生交大片免费看96| 高潮在线视频| 午夜免费视频在线国产| 国产主播在线资源| 欧美色图一区二区三区| 一区二区三区在线视频播放| 成人高清视频在线观看| 母乳一区在线观看| 91精品精品| 欧美有码在线| 国产乱子精品一区二区在线观看| 成人影院在线观看| 亚洲美女欧洲| 独立日3在线观看完整版| 欧美精品亚洲一区二区在线播放| 亚洲综合免费观看高清完整版 | 欧美视频在线免费看| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 精品久久久香蕉免费精品视频| 91尤物视频在线观看| 久久国产精品一区二区| 亚洲在线国产日韩欧美| 欧美午夜精品| 欧美在线网址| 久久成人综合| 国产精品网站一区| 国产一区二区在线视频| 香蕉久久国产| 欧美一级网站| 亚洲高清在线| 亚洲激情欧美| 亚洲区第一页| 亚洲欧美久久| 国产精品主播| 鲁大师成人一区二区三区| 黑人一区二区| 136国产福利精品导航网址| 欧美日韩1区2区3区| 欧美不卡一区| 亚洲免费黄色| 人人精品人人爱| 蜜桃av噜噜一区| 激情欧美一区二区| 丰满放荡岳乱妇91ww| 99视频一区二区三区| 久久青草国产手机看片福利盒子| 91亚洲大成网污www| 国产清纯美女被跳蛋高潮一区二区久久w| 成人av网址在线观看| 久久精品日产第一区二区三区高清版| 欧美激情一区二区| 亚洲精品视频在线看| 午夜视频在线观看一区二区| 婷婷综合另类小说色区| 欧美性高清videossexo| 欧美一级久久久久久久大片| 99爱免费视频| 三级视频在线| 欧美大胆的人体xxxx| 成人mm视频在线观看| 动漫av一区| 综合在线视频| 奇米888四色在线精品| 国产+成+人+亚洲欧洲自线| 91丝袜呻吟高潮美腿白嫩在线观看| 国产精品日产欧美久久久久| 午夜激情综合网| 日韩一级视频免费观看在线| 粗大的内捧猛烈进出在线视频| 国产午夜视频在线观看| 岛国毛片av在线| 国产999精品在线观看| 日韩激情在线| 久久99久久久欧美国产| 亚洲欧洲精品一区二区精品久久久| 欧美性猛交xxxx乱大交蜜桃| 羞羞免费视频网站| 韩国av网站在线| 粉嫩的18在线观看极品精品| 欧美成人69av| 99视频精品在线| 精品美女久久久久久免费| 精品国产乱码久久久久久图片 | 亚洲精品第一国产综合野草社区| 黄色片在线播放| 秋霞国产精品| 久久超碰99| 麻豆91在线播放免费| 综合色天天鬼久久鬼色| 日韩欧美在线123| 91官网在线| 996久久国产精品线观看| 亚洲一区二区三区| 国产黄色精品视频| 色综合色综合色综合色综合色综合 | 一二三区在线视频| wwwwxxxx在线观看| 少妇精品久久久一区二区三区| 日韩中文字幕亚洲一区二区va在线| 日本一区二区三级电影在线观看| 欧美日韩成人综合天天影院| 国内精品在线视频| 精品久久久久久久久久岛国gif| 亚洲欧美亚洲| 久久久美女毛片| 欧美一区二区三区白人| 成人福利片网站| 国产欧美一区| 99国产精品久久久| 欧美一区二区国产| 色婷婷av在线| 色欧美自拍视频| 久久久久久免费网| 无套内精的网站| 欧美日韩尤物久久| 亚洲黄色av| 亚洲永久免费视频| 日本在线视频1区| 高清一区二区三区| 国产一区二区三区在线观看免费视频 | 91国偷自产一区二区三区观看 | 国产免播放器视频| 超碰aⅴ人人做人人爽欧美| 一个色综合网| 亚洲人成在线播放网站岛国| 黄页网站在线播放| av综合网站| av网站免费线看精品| 日韩一区二区三区四区五区六区| 1024在线播放| 日韩欧美视频在线播放| 国产精品色眯眯| 九色在线免费| 91蜜臀精品国产自偷在线| 亚洲国产高清在线观看视频| www 四虎| 黄色美女久久久| 久久综合色天天久久综合图片| 舔足天天操天天射| 亚洲国产欧美国产第一区| 国产成人av电影在线| 中文字幕高清20页| 欧美h版在线观看| 99国产精品久久久久久久久久久| 8848hh四虎| 亚洲另类春色校园小说| 国产精品激情偷乱一区二区∴| 在线国产日本| 91精品蜜臀一区二区三区在线| 亚洲综合精品久久| 美女网站视频在线| 日韩影院免费视频| 精品对白一区国产伦| 99re8这里有精品热视频8在线| 92精品国产成人观看免费| 一卡二卡三卡亚洲| 欧美精品激情| 制服丝袜av成人在线看| 日本精品一区二区三区在线观看视频| 99精品视频在线播放观看| 亚洲精品视频在线免费| 久久久久久久久久久9不雅视频| 午夜精品久久久久久久| 华人av在线| 成人在线一区二区三区| 亚洲成人av在线影院| 一级毛片免费高清中文字幕久久网| 黑人巨大精品欧美一区免费视频| 不卡福利视频| 久久精品人人做人人综合| 成人免费网址| 国产伦精品一区二区三区在线观看| 超碰在线电影| 中国女人久久久| 米奇777在线影院线|