成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

網(wǎng)絡(luò)安全攻防:Web安全之URL結(jié)構(gòu)

安全 應(yīng)用安全
本文針對URL(Uniform Resource Locator)簡單介紹URL的結(jié)構(gòu)和URL的編碼與解碼等問題。

 [[396149]]

本文針對URL(Uniform Resource Locator)簡單介紹URL的結(jié)構(gòu)和URL的編碼與解碼等問題。為什么需要對 URL 進行編碼,對其編碼的好處體現(xiàn)在哪里?首先,URL是統(tǒng)一資源標識,通常所說的URL只是URI的一部分。典型的URL的格式如圖1所示。

圖1  URL格式

而下面所提到的URL編碼,實際也應(yīng)該指的是URI編碼。

需要進行編碼的部分通常來說是不方便傳輸或會造成歧義的。原因還有很多,對于URL來說,需要編碼是因為 URL 中的某些字符會造成歧義。例如,在傳輸?shù)倪^程中,通常會使用鍵值對的方式,username=12345;這種方式對于人而言很好理解,這是一個賦值的過程,而接收URL的服務(wù)器卻不知道“=”這個字符是字符串數(shù)據(jù)的一部分還是賦值的需要,所以這里的字符在傳輸過程中是需要進行編碼的。

又例如,URL的編碼格式采用的是ASCII碼,而不是Unicode,這也就是說URL中不能包含任何非ASCII字符,如中文。否則,如果客戶端瀏覽器和服務(wù)端瀏覽器支持的字符集不同,中文可能會造成問題。

所以,URL編碼的原則是使用安全字符去表示那些不安全的字符,如百分號編碼。

1. 百分號編碼

在介紹百分號編碼前,還要了解URL需要對哪些字符進行編碼。

RFC3986文檔規(guī)定,URL中只允許包含英文字母(a~z、A~Z)、數(shù)字(0~9)、“-”“_”“.”“~” 4個特殊字符以及所有保留字符。

所謂的保留字符就是劃分URL的,分隔不同組件的字符。

RFC3986中指定了以下字符為保留字符,如圖2所示。

圖2  RFC3986保留字符

百分號編碼的編碼方式非常簡單,使用百分號(%)加上兩個字符(0123456789ABCDEF),表示為一個字節(jié)的十六進制的形式。URL編碼默認使用的字符集是ASCII碼。例如,井號(#)對應(yīng)的十六進制是0x23,所以它的URL編碼就為%23。對于非ASCII字符,需要使用ASCII字符集的超集進行編碼得到相應(yīng)的字節(jié),然后對每個字節(jié)執(zhí)行百分號編碼。

2. URL解析

在傳輸前,瀏覽器會對 URL 進行編碼。接收 URL 的服務(wù)器主要負責對接收到的 URL進行解析。URL的使用過程當中,由于互聯(lián)網(wǎng)上的每個網(wǎng)頁大多會引用與它同服務(wù)器甚至是同級目錄下的文件,就會使用到相對URL的概念。在介紹URL編碼時,展示的是絕對URL,這就相當于電腦中的相對路徑與絕對路徑的區(qū)別。所以在解析的時候,服務(wù)器需要區(qū)分相對URL與絕對URL。

按照規(guī)范里的說法,要區(qū)分兩者非常簡單。如果 URL 字符串不是一個有效的協(xié)議名,后面跟的不是冒號(:)或雙斜杠(//),那么它就是一個需要被引用的相對 URL。其實在實際應(yīng)用中,對于相對 URL 的解析是有規(guī)范的,因為不同瀏覽器的具體實現(xiàn)千差萬別,有效協(xié)議名稱的字符集也各有不同,還有各種替代雙斜杠(//)分隔符的方法,因此,接下來會對相對URL的解析進行一個歸類。

(1)有協(xié)議名稱,但沒有授權(quán)信息(http:abc.txt)。這是一個比較有名的漏洞,它的產(chǎn)生是由RFC3986規(guī)范疏忽所致。在規(guī)范中將這些地址描述為無效的絕對地址,但在提供的解析算法中又將這種地址的解析搞錯了。所以這種形式的URL,在執(zhí)行過程中會被理解為相對地址來進行處理。例如,在某些情況下,http:abc.txt會被理解為相對地址,而https:example.com會被解釋為絕對地址。

(2)沒有協(xié)議名,但有授權(quán)信息(//example.com)。這種寫法在規(guī)范中給出了較為完整的處理。面對這種URL,瀏覽器會自動補全該URL。

(3)沒有協(xié)議名,沒有授權(quán)信息,但有路徑(../robots.txt)。這是一種比較常見的用法,協(xié)議和授權(quán)信息都從引用URL里復制過來,然后將這個相對地址進行補全。

(4)沒有協(xié)議名,沒有授權(quán)信息,沒有路徑,但有查詢的字符串(?username=abc)。在這種情況下,協(xié)議、授權(quán)信息、路徑全都會原封不動地從原引用 URL 復制過來。查詢字符串和字段ID則來自于相對URL。

(5)只有片段 ID(#bunnies)。這種方式也是如此,其他部分全部原封不動地從原引用URL復制,只替換字段ID的部分。 

 

責任編輯:龐桂玉 來源: 計算機與網(wǎng)絡(luò)安全
相關(guān)推薦

2021-05-07 14:12:50

網(wǎng)絡(luò)安全Web安全CSRF

2021-04-30 19:38:42

網(wǎng)絡(luò)安全WebHTTP

2021-05-13 20:38:30

2021-05-08 15:22:31

網(wǎng)絡(luò)安全Web安全SQL

2021-06-16 09:40:44

網(wǎng)絡(luò)安全物聯(lián)網(wǎng)代碼

2021-04-25 21:45:25

網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全攻防ZigBee安全

2021-04-23 13:35:41

網(wǎng)絡(luò)安全藍牙Wi-Fi

2021-03-15 13:50:24

網(wǎng)絡(luò)安全Android安全機制

2021-03-22 10:52:58

網(wǎng)絡(luò)安全Android數(shù)據(jù)安全

2021-04-01 10:40:22

網(wǎng)絡(luò)安全軟件

2021-04-13 11:30:09

網(wǎng)絡(luò)安全無線網(wǎng)絡(luò)WEP

2021-04-15 11:55:40

網(wǎng)絡(luò)安全無線網(wǎng)絡(luò)WPA

2021-02-02 14:02:48

網(wǎng)絡(luò)安全對稱密碼密鑰

2021-04-06 10:30:49

網(wǎng)絡(luò)安全暗網(wǎng)互聯(lián)網(wǎng)

2021-05-24 11:40:50

網(wǎng)絡(luò)安全數(shù)據(jù)庫安全服務(wù)器

2019-01-10 15:44:00

2021-02-23 09:12:46

網(wǎng)絡(luò)安全系統(tǒng)安全OpenSS

2021-02-22 08:35:41

網(wǎng)絡(luò)安全Linux系統(tǒng)安全

2021-03-02 14:02:19

網(wǎng)絡(luò)安全系統(tǒng)安全iptables

2021-03-24 09:46:46

網(wǎng)絡(luò)安全軟件反匯編
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 国产精品一区二区三区久久久 | 成人av一区二区三区 | 九九热久久免费视频 | 亚洲综合激情 | 特级黄一级播放 | 精品一区二区在线观看 | 欧美精品一区二区三区在线 | 亚洲精品一区二区在线观看 | 中文字幕日韩在线观看 | 久久精品国产亚洲 | 91av视频| 免费网站国产 | 免费日韩网站 | 中文字幕三区 | 国产精品1区2区 | 亚洲va欧美va天堂v国产综合 | 香蕉久久a毛片 | 在线国产一区二区三区 | 成人小视频在线观看 | 男人的天堂亚洲 | 亚洲视频在线免费观看 | 91中文字幕在线 | 欧美一级欧美三级在线观看 | 日韩成人在线观看 | 亚洲精品久久久久久久久久久 | 欧美亚洲国产一区二区三区 | 亚洲精品区 | 亚洲va在线va天堂va狼色在线 | 99久热在线精品视频观看 | 超碰在线97国产 | 久久这里只有精品首页 | 玖玖国产精品视频 | 日日操日日舔 | 久热久| www.99热.com| 国产一级在线视频 | 午夜精品久久久久久久久久久久久 | 久久精品国产亚洲一区二区三区 | 金莲网| 99久久中文字幕三级久久日本 | 中文字幕 在线观看 |