自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

域名小知識:Public Suffix List

網(wǎng)絡
根據(jù) HTML5 文檔的描述:在 JavaScript 中通過 document.domain 設置當前頁面的 domain 時,如果新值不等于當前值,也不是 IPv4 和 IPv6 格式時,需要判斷新值是否在 PSL(Public Suffix List,公共后綴列表)中,如果存在必須拋出 SecurityError,終止后續(xù)流程。

Webkit 中,通過 document.domain,可以將 domain 設置到最后一級(最后一個點之后的內(nèi)容)。由于域名最后實際上有一個 .(例如https://imququ.com. 可以正常訪問), 所以甚至可以將document.domain 設置為空字符串。

根據(jù) HTML5 文檔的描述:在 JavaScript 中通過 document.domain 設置當前頁面的 domain 時,如果新值不等于當前值,也不是 IPv4 和 IPv6 格式時,需要判斷新值是否在 PSL(Public Suffix List,公共后綴列表)中,如果存在必須拋出 SecurityError,終止后續(xù)流程。

PSL 是由 Mozilla 創(chuàng)建的公共資源,官網(wǎng)是 publicsuffix.org。它由兩部分組成:一部分是由 ICANN(The Internet Corporation for Assigned Names and Numbers,互聯(lián)網(wǎng)名稱與數(shù)字地址分配機構(gòu))提供的 TLD(Top Level Domain,頂級域名)列表;一部分是由個人或機構(gòu)提供的 PRIVATE 列表。完整的 PSL 可以從這個地址獲得。

ICANN 維護的 TLD 列表好理解,例如最常見的 com、net、org 等等都屬于這個列表。為大家所熟知的 TLD 最多也就幾十個,那么完整的 TLD 列表包含多少記錄呢?我統(tǒng)計了一下,截至到當前:

TLD 列表中一共有 7247 條記錄;

最長的記錄有 35 個字符,例如:posts-and-telecommunications.museum;

級別最多的記錄有 4 級,例如:pvt.k12.ma.us;

PRIVATE 列表由個人或機構(gòu)自行添加。例如我想把 imququ.com 的二級域名開放給其它人使用,同時還想讓這些二級域名之間相互隔離,我可以申請在 PRIVATE 列表中加上 imququ.com。目前在 PRIVATE 列表中,有很多都是 Amazon Web Services 添加的,目的就是為了隔離用戶。

現(xiàn)在很多提供 App Engine 服務的廠商一般都會給用戶提供二級域名,例如 example.duapp.com,這會帶來很大的安全隱患:假如用戶將 document.domain 設置為大域;或者在設置 cookie 時指定 domain 為大域,都會導致網(wǎng)站完全暴露給其它二級域名用戶。那如果用戶在使用過程中避免了這些問題,是不是就高枕無憂了呢?也不是!其它用戶如果在大域?qū)懭氪罅? Cookie,一樣可以對你的二級域名造成拒絕服務攻擊,想了解細節(jié)的同學請看這篇文章:超大 Cookie 拒絕服務攻擊。

這也是為什么亞馬遜要把那么多 AWS 域名都加到 PSL 的 PRIVATE 列表中的原因。國內(nèi)的服務商,我看到 Sina 的 SAE 也做了相關(guān)處理,這一點上 SAE 確實比較細致。

目前 PSL 中的 PRIVATE 記錄統(tǒng)計如下:

PRIVATE 列表一共有 557 條記錄;

最長的記錄有 36 個字符,例如:ap-northeast-1.compute.amazonaws.com;

級別最多的記錄有 5 級,例如:s3.cn-north-1.amazonaws.com.cn;

二者加起來,完整的 PSL 一共有 7804 條記錄。

PSL 做為公共資源,可以被用在很多場景上,例如 Firefox 用它在地址欄高亮 URL 的關(guān)鍵部分。PSL 更重要的用途是用在瀏覽器同源策略上:例如通過 document.cookie 設置 cookie,或者通過 document.domain 設置當前 domain,都不允許將 domain 設置為 PSL 中的記錄。

Webkit 一直以來只在設置 cookie 時使用了 PSL,前面提到的 Chrome 的那個 Bug 純屬從 Webkit 繼承而來。大約在兩年前(詳情),Chrome 解決了這個問題。以下分別是用最新的 Chrome、Firefox 以及 Microsoft Edge 的測試結(jié)果:

 域名小知識:Public Suffix List

 域名小知識:Public Suffix List

然而,Safari 至今為止依然沒有修復這個問題,以下是在最新的 Safari 中的測試結(jié)果:

 域名小知識:Public Suffix List

責任編輯:何妍 來源: Jerry Qu的小站
相關(guān)推薦

2018-09-28 09:45:50

2013-07-29 04:46:48

iOS開發(fā)iOS開發(fā)學習iOS小知識

2020-09-08 14:17:00

戴爾

2013-07-08 15:41:07

Ubuntu

2021-09-26 16:08:49

手機屏幕技術(shù)

2009-06-11 14:40:32

Java list

2020-10-12 06:28:05

動態(tài)IP框架

2021-11-30 00:07:31

網(wǎng)絡安全域名

2019-05-17 14:24:09

物聯(lián)網(wǎng)云計算技術(shù)

2024-04-19 13:55:36

python小迭代遞歸

2010-04-23 12:18:31

Aix操作系統(tǒng)

2021-05-09 09:57:26

MySQL數(shù)據(jù)庫索引

2024-01-03 08:53:35

JavaScrip編程語言NodeJS

2021-12-15 12:35:51

C語言編程內(nèi)存

2010-04-19 11:26:52

Unix操作系統(tǒng)

2017-12-04 12:29:15

前端JavaScript性能優(yōu)化

2010-04-30 14:55:09

Unix系統(tǒng)

2020-10-29 10:59:44

Python開發(fā)數(shù)據(jù)

2010-04-19 10:46:08

Unix操作系統(tǒng)

2009-09-14 18:34:32

C# List排序
點贊
收藏

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