亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 183558 | 回復(fù): 12
打印 上一主題 下一主題

mysql中"set character_set_client=BINARY"的作用到底是什么? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2018-01-15 20:36 |只看該作者 |倒序瀏覽
rt,為了防止寬字節(jié),很多資料上都說可以在客戶端設(shè)置“set character_set_client=BINARY”,但是這句話的含義到底是什么呢?假如我目前客戶端的程序是這么設(shè)置的:
<?php

mysqli_query($conn, "set character_set_connection=GBK,set character_set_results=GBK,set character_set_client=BINARY");

...
...
?>





論壇徽章:
93
2015年辭舊歲徽章
日期:2019-10-10 10:51:15CU大牛徽章
日期:2014-02-21 14:21:56CU十二周年紀(jì)念徽章
日期:2020-10-15 16:55:55CU大;照
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大牛徽章
日期:2019-10-10 10:55:38季節(jié)之章:春
日期:2020-10-15 16:57:40ChinaUnix元老
日期:2019-10-10 10:54:42季節(jié)之章:冬
日期:2019-10-10 10:57:17CU大;照
日期:2014-02-21 14:22:52CU大;照
日期:2014-03-13 10:40:30CU大;照
日期:2014-02-21 14:23:15
2 [報告]
發(fā)表于 2018-01-16 15:27 |只看該作者
本帖最后由 seesea2517 于 2018-01-16 16:45 編輯

沒怎么用過php,不過看著應(yīng)該就用 set names 來統(tǒng)一設(shè)置三者字符集就可以了。
你這個設(shè)置是客戶端單獨(dú)用不同的字符集,二進(jìn)制字符集就是不做轉(zhuǎn)換,直接存儲、傳輸字節(jié)內(nèi)容。由于你的配置里連接用的是 GBK,那么傳到客戶端來的數(shù)據(jù)也就用 GBK 來解釋了。

BINARY:二進(jìn)制字符集相關(guān)說明:https://dev.mysql.com/doc/refman/5.7/en/charset-binary-set.html
php 連接設(shè)置的FAQ:https://dev.mysql.com/doc/refman ... gui-not-display-cjk

論壇徽章:
0
3 [報告]
發(fā)表于 2018-01-16 16:21 |只看該作者
@seesea2517 謝謝了!如果用“set names GBK”的話,是存在寬字節(jié)注入漏洞的。比如發(fā)起請求"http://xxx.com/index.php?a=%df'"。經(jīng)服務(wù)端轉(zhuǎn)義后,a的值會變成%df%5c',而%df%5c是一個漢字,這相當(dāng)于把單引號給逃離出來了,可以發(fā)起sql注入攻擊。
如果設(shè)置“character_set_client=BINARY”,即使“不做轉(zhuǎn)換、直接存儲”,那么mysql在解析sql之前,sql中a的內(nèi)容還是%df%5c',按照這個邏輯,按說還是存在漏洞的。因此還是想不明白在防御攻擊的角度上,這個binary為什么能防住。

論壇徽章:
0
4 [報告]
發(fā)表于 2018-01-16 16:23 |只看該作者
@seesea2517 謝謝了!如果用“set names GBK”的話,是存在寬字節(jié)注入漏洞的。比如發(fā)起請求:
  1. http://xxx.com/index.php?a=%df'
復(fù)制代碼

經(jīng)服務(wù)端轉(zhuǎn)義后,a的值會變成%df%5c',而%df%5c是一個漢字,這相當(dāng)于把單引號給逃離出來了,可以發(fā)起sql注入攻擊。
如果設(shè)置“character_set_client=BINARY”,即使“不做轉(zhuǎn)換、直接存儲”,那么mysql在解析sql之前,sql中a的內(nèi)容還是%df%5c',按照這個邏輯,按說還是存在漏洞的。因此還是想不明白在防御攻擊的角度上,這個binary為什么能防住。

論壇徽章:
0
5 [報告]
發(fā)表于 2018-01-16 16:31 |只看該作者
謝謝了!如果用“set names GBK”的話,是存在寬字節(jié)注入漏洞的。比如發(fā)起請求:
  1. http://xxx.com/index.php?a=%df'
復(fù)制代碼

經(jīng)服務(wù)端轉(zhuǎn)義后,a的值會變成%df%5c',而%df%5c是一個漢字,這相當(dāng)于把單引號給逃離出來了,可以發(fā)起sql注入攻擊。
如果設(shè)置“character_set_client=BINARY”,即使“不做轉(zhuǎn)換、直接存儲”,那么mysql在解析sql之前,sql中a的內(nèi)容還是%df%5c',按照這個邏輯,按說還是存在漏洞的。因此還是想不明白在防御攻擊的角度上,這個binary為什么能防住。

論壇徽章:
0
6 [報告]
發(fā)表于 2018-01-16 19:40 |只看該作者
謝謝了!如果用“set names GBK”的話,是存在寬字節(jié)注入漏洞的。比如發(fā)起請求:
  1. http://xxx.com/index.php?a=%df'
復(fù)制代碼
經(jīng)服務(wù)端轉(zhuǎn)義后,a的值會變成:
  1. %df%5c'
復(fù)制代碼
而%df%5c是一個漢字,這相當(dāng)于把單引號給逃離出來了,可以發(fā)起sql注入攻擊。
如果設(shè)置character_set_client=BINARY,即使不做轉(zhuǎn)換、直接存儲,那么mysql在解析sql之前,sql中a的內(nèi)容還是:
  1. %df%5c'
復(fù)制代碼
按照這個邏輯,按說還是存在漏洞的。因此還是想不明白在防御攻擊的角度上,這個binary為什么能防住。

論壇徽章:
0
7 [報告]
發(fā)表于 2018-01-16 19:41 |只看該作者
謝謝了!如果用“set names GBK”的話,是存在寬字節(jié)注入漏洞的。比如發(fā)起請求:
  1. http://xxx.com/index.php?a=%df’
復(fù)制代碼
經(jīng)服務(wù)端轉(zhuǎn)義后,a的值會變成:
  1. %df%5c’
復(fù)制代碼
而%df%5c是一個漢字,這相當(dāng)于把單引號給逃離出來了,可以發(fā)起sql注入攻擊。
如果設(shè)置character_set_client=BINARY,即使不做轉(zhuǎn)換、直接存儲,那么mysql在解析sql之前,sql中a的內(nèi)容還是:
  1. %df%5c’
復(fù)制代碼
按照這個邏輯,按說還是存在漏洞的。因此還是想不明白在防御攻擊的角度上,這個binary為什么能防住。

論壇徽章:
0
8 [報告]
發(fā)表于 2018-01-17 08:30 |只看該作者
本帖最后由 danieluec 于 2018-01-17 08:32 編輯

謝謝~
從安全的角度看,如果二進(jìn)制字符集就是不做轉(zhuǎn)換、直接存儲、傳輸字節(jié),那么按照mysql的編碼轉(zhuǎn)換流程(client->connection->server),將client的編碼設(shè)置為binary也是防不住注入漏洞的。所以想弄明具體binary的功能和整個編碼過程。

論壇徽章:
93
2015年辭舊歲徽章
日期:2019-10-10 10:51:15CU大;照
日期:2014-02-21 14:21:56CU十二周年紀(jì)念徽章
日期:2020-10-15 16:55:55CU大;照
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大;照
日期:2019-10-10 10:55:38季節(jié)之章:春
日期:2020-10-15 16:57:40ChinaUnix元老
日期:2019-10-10 10:54:42季節(jié)之章:冬
日期:2019-10-10 10:57:17CU大;照
日期:2014-02-21 14:22:52CU大;照
日期:2014-03-13 10:40:30CU大;照
日期:2014-02-21 14:23:15
9 [報告]
發(fā)表于 2018-01-17 09:33 |只看該作者
回復(fù) 20# danieluec

防注入應(yīng)該有一些相關(guān)的專題文章或討論,樓主有發(fā)現(xiàn)有價值的歡迎分享給大家哈。

論壇徽章:
146
2015年亞洲杯之日本
日期:2015-04-28 13:32:012015年亞洲杯之朝鮮
日期:2015-05-06 10:16:442015年亞洲杯之日本
日期:2015-05-06 10:21:342015年亞洲杯紀(jì)念徽章
日期:2015-05-13 17:16:442015亞冠之北京國安
日期:2015-05-13 17:18:292015亞冠之鹿島鹿角
日期:2015-05-13 17:19:062015亞冠之德黑蘭石油
日期:2015-05-27 16:47:402015亞冠之塔什干棉農(nóng)
日期:2015-05-28 15:24:122015亞冠之卡爾希納薩夫
日期:2015-06-01 13:52:392015亞冠之柏斯波利斯
日期:2015-06-04 17:37:292015亞冠之阿爾納斯?fàn)?日期:2015-06-16 11:31:202015亞冠之塔什干火車頭
日期:2015-06-23 10:12:33
10 [報告]
發(fā)表于 2018-01-17 11:28 |只看該作者
回復(fù) 1# danieluec

回帖以標(biāo)注成精華帖,感謝您對社區(qū)內(nèi)容的貢獻(xiàn)
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP