【Chromium中文文檔】安全瀏覽 -- Chrome中的警告都是怎么來的斤吐?

轉(zhuǎn)載請注明出處:
https://ahangchen.gitbooks.io/chromium_doc_zh/content/zh/General_Architecture/SafeBrowsing.html

全書地址
Chromium中文文檔 for https://www.chromium.org/developers/design-documents
持續(xù)更新ing炒辉,歡迎star
gitbook地址:https://ahangchen.gitbooks.io/chromium_doc_zh/content/zh//
github地址: https://github.com/ahangchen/Chromium_doc_zh

瀏覽保護(hù)

啟動安全瀏覽后,在允許內(nèi)容開始加載前彤悔,所有的URL都會被檢查噪服。URL通過兩個列表進(jìn)行檢查:惡意軟件和釣魚網(wǎng)站。根據(jù)匹配到的列表恨诱,我們會在一個中轉(zhuǎn)頁面顯示不同的警告頁面媳瞪。

檢查安全瀏覽數(shù)據(jù)庫是一個多步驟的過程。

  • URL首先會被哈希照宝,然后會用內(nèi)存中前綴列表進(jìn)行同步的檢查蛇受。
  • 如果前綴得到匹配,會向安全瀏覽服務(wù)器發(fā)起一個異步請求厕鹃,拉取這個前綴的全量哈希列表兢仰。
  • 一旦這個列表返回,完整的哈希會與列表中的每項進(jìn)行比較剂碴,URL請求可以繼續(xù)執(zhí)行或者終止把将。
  • 如果想要知道更多內(nèi)容,你可以查看安全瀏覽協(xié)議的完整描述忆矛。

資源處理器

當(dāng)一個資源被請求時察蹲,ResourceDispatcherHost會創(chuàng)建一串的ResourceHandlers。對于加載資源時的每個事件催训,每個處理器可以選擇取消請求洽议,延遲請求(在決定要做的事情前,做一些異步工作)漫拭,或者繼續(xù)(讓處理鏈中下一個處理器做決策)绞铃。SafeBrowsingResourceHandler在鏈的頭部創(chuàng)建,所以它對于是否允許加載資源有著優(yōu)先權(quán)嫂侍。如果安全瀏覽被關(guān)閉儿捧,SafeBrowsingResourceHandler就不加入鏈中,因此沒有瀏覽相關(guān)的安全瀏覽動作會發(fā)生挑宠。

安全瀏覽中間頁面

當(dāng)資源被標(biāo)識為不安全時菲盾,資源請求會被暫停,并展示一個中間頁面(SafeBrowsingBlockingPage)各淀。用戶可以選擇繼續(xù)懒鉴,這會喚醒資源請求,或者返回,這會取消資源請求临谱,然后返回之前的頁面璃俗。

一些威脅細(xì)節(jié)的收集

如果中間頁面是因為命中下面這些規(guī)則而展現(xiàn):處于威脅列表中(包括惡意軟件,釣魚網(wǎng)站悉默,以及Uws)城豁,頁面是http而非https,標(biāo)簽頁不處于一個匿名窗口中抄课,那么會有一個可選項唱星,讓你發(fā)送關(guān)于這個不安全資源的具體細(xì)節(jié),以進(jìn)行更進(jìn)一步的分析跟磨。

當(dāng)中間頁面出現(xiàn)時间聊,一個IPC會發(fā)送給渲染器進(jìn)程,從DOM收集細(xì)節(jié)抵拘。這些數(shù)據(jù)由一棵URL樹組成哎榴,有各種frame,iframe僵蛛,腳本叹话,和嵌入標(biāo)簽。

如果用戶勾選了忽視中間頁面墩瞳,各種具體細(xì)節(jié)會異步地在瀏覽器端收集驼壶。首先會查詢歷史服務(wù)以獲得所有URL的重定向列表,然后會查詢Cache以獲得這些URL請求的頭喉酌,最后發(fā)送一個報告热凹。

下載保護(hù)

URL檢查

下載檢查操作與瀏覽頁面的操作類似,盡管由于下載的本質(zhì)不同會有一些差異泪电。在接收到頭之前般妙,我們都不知道一個資源請求是否是一個下載請求,因此所有下載也會通過瀏覽檢查相速。同理碟渺,我們不能檢查重定向URL,因為在瀏覽測試中我們已經(jīng)放過它了突诬。相反苫拍,重定向鏈保存在一個URLRequest對象里,一旦我們開始下載檢查旺隙,鏈中所有的URL同時會被檢查绒极。因為下載不像頁面加載那樣具備潛在的敏感,我們也會在內(nèi)存數(shù)據(jù)庫和全量哈希結(jié)果中分發(fā)要檢查的內(nèi)容蔬捷。最后垄提,檢查與下載并行完成榔袋,而不會阻塞下載結(jié)果直到檢查完成,然而直到檢查完成前铡俐,文件都會被賦予一個臨時的名字凰兑。

如果一個下載被標(biāo)記為惡意的,下載欄的這個項目會被替換為一個警告和一個保留或刪除該文件的按鈕审丘。如果選擇了刪除吏够,下載會被取消,文件會被刪除备恤。如果選擇了保留,文件會被重命名為它原來的名字(如果下載仍在進(jìn)行锦秒,后綴會是.crdownload)露泊。

哈希檢查

文件下載時,我們也會計算文件數(shù)據(jù)的哈希值旅择。一旦文件完成下載惭笑,這個哈希值就會與下載摘要列表進(jìn)行對照。當(dāng)前我們在評估哈希檢查的有效性生真,所以不會有UI展示出來沉噩。

這是處理一個請求的代碼流的概覽。一些細(xì)節(jié)被隱藏以保證規(guī)模的合理性柱蟀。綠線意味著一種常見情況川蒙,加載非惡意頁面的頁面時,需要同步檢查內(nèi)存中安全瀏覽數(shù)據(jù)庫长已。短劃線表示異步調(diào)用畜眨。點(diǎn)狀箭頭表示對Google安全瀏覽器的請求。

客戶端釣魚檢測

客戶端釣魚檢測運(yùn)行在用戶訪問的頁面的檢測模式上术瓮,以檢測釣魚網(wǎng)站沒有被列入安全瀏覽列表康聂。啟動時,以及之后的周期中胞四,ClientSideDetectionService會抓取最新的模型恬汁。這個模型會通過IPC發(fā)送給每個渲染進(jìn)程,然后分配給與每個RenderView關(guān)聯(lián)的PhishingClassifierDelegate辜伟。這允許了在渲染進(jìn)程檢查中完成分類氓侧。(渲染進(jìn)程訪問頁面文本。)

資源請求流

這是一個處理請求的代碼流的概覽圖导狡。一些細(xì)節(jié)被隱藏以保證規(guī)模合理性甘苍。綠線意味著一種常見情況,加載非惡意頁面的頁面時烘豌,需要同步檢查內(nèi)存中安全瀏覽數(shù)據(jù)庫载庭。短劃線表示異步調(diào)用。點(diǎn)狀箭頭表示對Google安全瀏覽器的請求。

安全瀏覽資源請求圖

規(guī)范

安全瀏覽柱狀圖使用“SB2.”前綴囚聚。舊版本的柱狀圖使用“SB.”前綴靖榕。也有一些安全瀏覽用戶規(guī)范(可以用“SB”前綴過濾),和一些瀏覽Rappor規(guī)范(前綴是“interstitial”)顽铸。

安全瀏覽數(shù)據(jù)庫

SafeBrowsingService負(fù)責(zé)更新各種安全瀏覽使用的數(shù)據(jù)庫茁计。

TODO(mattm): 提供更多關(guān)于數(shù)據(jù)庫格式和更新過程的信息。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末谓松,一起剝皮案震驚了整個濱河市星压,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌鬼譬,老刑警劉巖娜膘,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異优质,居然都是意外死亡竣贪,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門巩螃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來演怎,“玉大人,你說我怎么就攤上這事避乏∫” “怎么了?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵拍皮,是天一觀的道長畏纲。 經(jīng)常有香客問我,道長春缕,這世上最難降的妖魔是什么盗胀? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮锄贼,結(jié)果婚禮上票灰,老公的妹妹穿的比我還像新娘。我一直安慰自己宅荤,他們只是感情好屑迂,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著冯键,像睡著了一般惹盼。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上惫确,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天手报,我揣著相機(jī)與錄音蚯舱,去河邊找鬼。 笑死掩蛤,一個胖子當(dāng)著我的面吹牛枉昏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播揍鸟,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼兄裂,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了阳藻?” 一聲冷哼從身側(cè)響起晰奖,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎腥泥,沒想到半個月后匾南,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡道川,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年午衰,在試婚紗的時候發(fā)現(xiàn)自己被綠了立宜。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片冒萄。...
    茶點(diǎn)故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖橙数,靈堂內(nèi)的尸體忽然破棺而出尊流,到底是詐尸還是另有隱情,我是刑警寧澤灯帮,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布崖技,位于F島的核電站,受9級特大地震影響钟哥,放射性物質(zhì)發(fā)生泄漏迎献。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一腻贰、第九天 我趴在偏房一處隱蔽的房頂上張望吁恍。 院中可真熱鬧,春花似錦播演、人聲如沸冀瓦。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽翼闽。三九已至,卻和暖如春洲炊,著一層夾襖步出監(jiān)牢的瞬間感局,已是汗流浹背尼啡。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蓝厌,地道東北人玄叠。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像拓提,于是被迫代替她去往敵國和親读恃。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理代态,服務(wù)發(fā)現(xiàn)寺惫,斷路器,智...
    卡卡羅2017閱讀 134,672評論 18 139
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,826評論 6 342
  • 一蹦疑、概念(載錄于:http://www.cnblogs.com/EricaMIN1987_IT/p/3837436...
    yuantao123434閱讀 8,359評論 6 152
  • AJAX 原生js操作ajax 1.創(chuàng)建XMLHttpRequest對象 var xhr = new XMLHtt...
    碧玉含香閱讀 3,201評論 0 7
  • 重述知識 這頁說了什么內(nèi)容(what): CC1 ICE Break作為10個演講訓(xùn)練的第一項內(nèi)容:破冰演講西雀,主要...
    祥祥布魯斯閱讀 480評論 0 0