最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL長(zhǎng)字符截?cái)嗟膶?shí)現(xiàn)示例

 更新時(shí)間:2023年03月24日 16:06:58   作者:辰霖心  
本文主要介紹了MySQL長(zhǎng)字符截?cái)嗟膶?shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

MySQL超長(zhǎng)字符截?cái)嘤置?quot;SQL-Column-Truncation",是安全研究者Stefan Esser在2008 年8月提出的。

在MySQL中的一個(gè)設(shè)置里有一個(gè)sql_mode選項(xiàng),當(dāng)sql_mode設(shè)置為default時(shí),即沒有開啟STRICT_ALL_TABLES選項(xiàng)時(shí)(MySQLsql_mode默認(rèn)即default),MySQL對(duì)插入超長(zhǎng)的值只會(huì)提示warning,而不是error,這樣就可能會(huì)導(dǎo)致一些截?cái)鄦栴}。

新建一張表測(cè)試,表結(jié)構(gòu)如下(MySQL5.1):

CREATE TABLE USERS(
id int(11) NOT NULL, //長(zhǎng)度為7
username varchar(7)NOT NULL,
password varchar(12)NOT NULL , 
)

分別插入以下SQL語句(注入提示消息)。

①插入正常的SQL語句。

mysql> insert into users(id,username,password)values(1,'admin','admin');//成功插入,無警告,無錯(cuò)誤
 
Query OK,1 row affected(0.00 sec)

②插入錯(cuò)誤的SQL語句,此時(shí)的"admin "右面有三個(gè)空格,長(zhǎng)度為8,已經(jīng)超過了原有的規(guī)定長(zhǎng)度。

mysql> insert into users(id,username,password)values(2,'admin       ','admin');
//成功插入,一個(gè)警告
Query OK,1 row affected,1 warning(0.00 sec)

③插入錯(cuò)誤的SQL語句,長(zhǎng)度已經(jīng)超過原有的規(guī)定長(zhǎng)度。

mysql> insert into users(id,username,password) values(3,'admin    x','admin');
//成功插入,一個(gè)警告
Query OK,1 row affected,1 warning(0.00 sec)

MySQL提示三條語句都已經(jīng)插入到數(shù)據(jù)庫(kù),只不過后面兩條語句產(chǎn)生了警告。那么最終有沒有插入到數(shù)據(jù)庫(kù)呢?執(zhí)行SQL語句查看一下就知道了。

mysql> select username from users;

可以看到,三條數(shù)據(jù)都被插入到數(shù)據(jù)庫(kù),但值發(fā)生了變化,此時(shí)在通過length來取得長(zhǎng)度,判斷值的長(zhǎng)度。

mysql> select length(username)from users where id =1 ;

可以發(fā)現(xiàn),第二條與第三條數(shù)據(jù)的長(zhǎng)度為7,也就是列的規(guī)定長(zhǎng)度,由此可知,在默認(rèn)情況下,如果數(shù)據(jù)超出列默認(rèn)長(zhǎng)度,MySQL會(huì)將其截?cái)唷?/p>

但這樣何來攻擊一說呢?

面查詢用戶名為'admin'的用戶就知道了。

mysql> select username from users where username='admin';

只查詢用戶名為admin的用戶,但是另外兩個(gè)長(zhǎng)度不一致的admin用戶也被查詢出,這樣就會(huì)造成一些安全問題,比如,有一處管理員登錄是這樣判斷的,語句如下:

$sql = "select count(*) from users where username='admin' and password='*******;

假設(shè)這條SQL語句沒有任何注入漏洞,攻擊者也可能登錄到管理頁面。假設(shè)管理員登錄的用戶名為 admin,那么攻擊者僅需要注冊(cè)一個(gè)"admin”用戶即可輕易進(jìn)入后臺(tái)管理頁面,像著名的WordPress就被這樣的方式攻擊過。

到此這篇關(guān)于MySQL長(zhǎng)字符截?cái)嗟膶?shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)MySQL長(zhǎng)字符截?cái)鄡?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • mysql 強(qiáng)大的trim() 函數(shù)

    mysql 強(qiáng)大的trim() 函數(shù)

    這篇文章主要介紹了mysql 強(qiáng)大的trim() 函數(shù)使用方法,需要的朋友可以參考下
    2014-03-03
  • MySQL系列理解運(yùn)用union(all)與limit及exists關(guān)鍵字教程

    MySQL系列理解運(yùn)用union(all)與limit及exists關(guān)鍵字教程

    這篇文章主要為大家介紹了MySQL系列中union(all)、limit及exists關(guān)鍵字的教程示例講解,通過本篇文章就可以理解MySQL中的這些關(guān)鍵字的概念以及實(shí)際的運(yùn)用
    2021-10-10
  • MySql數(shù)據(jù)引擎簡(jiǎn)介與選擇方法

    MySql數(shù)據(jù)引擎簡(jiǎn)介與選擇方法

    在MySQL 5.1中,MySQL AB引入了新的插件式存儲(chǔ)引擎體系結(jié)構(gòu),允許將存儲(chǔ)引擎加載到正在運(yùn)新的MySQL服務(wù)器中
    2012-11-11
  • MySQL鎖等待與死鎖問題分析

    MySQL鎖等待與死鎖問題分析

    這篇文章主要介紹了MySQL鎖等待與死鎖問題分析,幫助大家更好的理解和學(xué)習(xí)使用MySQL,感興趣的朋友可以了解下
    2021-03-03
  • MySQL該如何判斷不為空詳析

    MySQL該如何判斷不為空詳析

    在MySQL數(shù)據(jù)庫(kù)中,在不同的情形下,空值往往代表不同的含義,這是MySQL數(shù)據(jù)庫(kù)的一種特性,下面這篇文章主要給大家介紹了關(guān)于MySQL該如何判斷不為空的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • mysql下載與安裝過程詳解

    mysql下載與安裝過程詳解

    這篇文章主要介紹了mysql下載與安裝過程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • MySQL分庫(kù)分表的幾種方式

    MySQL分庫(kù)分表的幾種方式

    這篇文章主要介紹了MySQL分庫(kù)分表的幾種方式,分庫(kù)分表方案是對(duì)關(guān)系型數(shù)據(jù)庫(kù)數(shù)據(jù)存儲(chǔ)和訪問機(jī)制的一種補(bǔ)充,下文更多相關(guān)介紹需要的小伙伴可以參考一下
    2022-04-04
  • 配置Mysql主從服務(wù)實(shí)現(xiàn)實(shí)例

    配置Mysql主從服務(wù)實(shí)現(xiàn)實(shí)例

    這篇文章主要介紹了配置Mysql主從服務(wù)實(shí)現(xiàn)實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Mysql通過ibd文件恢復(fù)數(shù)據(jù)的詳細(xì)步驟

    Mysql通過ibd文件恢復(fù)數(shù)據(jù)的詳細(xì)步驟

    mysql在使用的過程中,難免遇到數(shù)據(jù)庫(kù)表誤操作,下面這篇文章主要給大家介紹了關(guān)于Mysql通過ibd文件恢復(fù)數(shù)據(jù)的詳細(xì)步驟,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Ubuntu10下如何搭建MySQL Proxy讀寫分離探討

    Ubuntu10下如何搭建MySQL Proxy讀寫分離探討

    MySQL Proxy是一個(gè)處于你的Client端和MySQL server端之間的簡(jiǎn)單程序,它可以監(jiān)測(cè)、分析或改變它們的通信
    2012-11-11

最新評(píng)論

深圳市| 哈巴河县| 哈尔滨市| 宜良县| 渭南市| 青岛市| 屏山县| 桐柏县| 民勤县| 荣成市| 长沙市| 北碚区| 邵阳县| 中超| 元朗区| 五家渠市| 盐津县| 德昌县| 中江县| 博湖县| 龙门县| 焉耆| 新兴县| 招远市| 进贤县| 读书| 通辽市| 阜阳市| 页游| 房产| 丰宁| 新宁县| 新沂市| 柳林县| 克什克腾旗| 沛县| 宁国市| 仪陇县| 宁波市| 南安市| 松潘县|