Chromium瀏覽器V8引擎漏洞掃描平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)
【學(xué)位單位】:哈爾濱工業(yè)大學(xué)
【學(xué)位級(jí)別】:碩士
【學(xué)位年份】:2019
【中圖分類】:TP393.092
【部分圖文】:
第2章 Chromium 瀏覽器分析在 Chromium 瀏覽器中,V8 引擎負(fù)責(zé)對(duì)網(wǎng)頁的 JavaScript 腳本進(jìn)行解析和運(yùn)行,在結(jié)構(gòu)上屬于 Chromium 瀏覽器的一個(gè)模塊。為了做到對(duì) Chromium 瀏覽器 V8 引擎的漏洞掃描,必須首先了解 V8 引擎被以何種方式集成到 Chromium瀏覽器中,并以何種方式同 Chromium 瀏覽器進(jìn)行交互。根據(jù) W3C HTML 標(biāo)準(zhǔn)[26],當(dāng)網(wǎng)頁渲染過程需要 JavaScript 腳本參與時(shí)(如處理<script>標(biāo)簽,或是處理 DOM 事件等),V8 腳本引擎才會(huì)啟動(dòng)。為收集 V8 腳本引擎在運(yùn)行時(shí)的關(guān)鍵信息,需要對(duì) Chromium 瀏覽器訪問網(wǎng)頁的全流程,尤其是解析 JavaScript 腳本的流程進(jìn)行詳細(xì)分析,明確 Chromium 瀏覽器調(diào)用 V8 的流程與 V8 獨(dú)立運(yùn)行的流程的不同,以及 Chromium 瀏覽器與 V8 引擎互操作的細(xì)節(jié)。如此一來,對(duì)Chromium 瀏覽器的體系結(jié)構(gòu)的整體分析,勢(shì)在必行。2.1 Chromium 瀏覽器總體結(jié)構(gòu)分析從源代碼結(jié)構(gòu)上來分析,Chromium 瀏覽器的結(jié)構(gòu)如圖 2-1 所示:
圖 2-4 HTML 與 DOM 結(jié)點(diǎn)的對(duì)應(yīng)關(guān)系圖 2-4 是一段簡易 HTML 文本以及其對(duì)應(yīng)的 DOM 樹示意。一開始,DOM樹的當(dāng)前(current)指針停留在根結(jié)點(diǎn)上。讀取到<html>時(shí),新增結(jié)點(diǎn)編號(hào)為 1,類型為 HTMLHtmlNode;并將 current 指針指向編號(hào) 1。然后讀取到<head>結(jié)點(diǎn),新增結(jié)點(diǎn) HTMLHeadNode 編號(hào)為 2,置為 1 的子節(jié)點(diǎn),并將 current 指向 2。不斷重復(fù)上述步驟,直到全部 HTML 標(biāo)記都處理完畢,current 指針此時(shí)應(yīng)回到root 結(jié)點(diǎn)上,DOM 樹生成完畢。若 current 指針未能返回到 root 結(jié)點(diǎn)上,說明存在未能閉合的標(biāo)簽,此時(shí) DOM 樹生成器會(huì)自動(dòng)補(bǔ)全這些標(biāo)簽,但不考慮標(biāo)簽之間的從屬關(guān)系是否正確。若 current 指針提前返回到 root 結(jié)點(diǎn)上,后續(xù)多余的 HTML 閉合標(biāo)簽標(biāo)記將被拋棄,但對(duì)于標(biāo)準(zhǔn)標(biāo)簽標(biāo)記,DOM 樹生成器會(huì)嘗試將其置入<body>標(biāo)簽的末尾。以上操作符合 HTML 標(biāo)準(zhǔn),保證了 HTML 的容錯(cuò)性。2.3 Chromium 瀏覽器的腳本引擎 V8 分析JavaScript 腳本語言因?yàn)槠涮赜械拿嫦驅(qū)ο筇匦訹27]、事件驅(qū)動(dòng)特性、安全性
圖 2-4 HTML 與 DOM 結(jié)點(diǎn)的對(duì)應(yīng)關(guān)系圖 2-4 是一段簡易 HTML 文本以及其對(duì)應(yīng)的 DOM 樹示意。一開始,DOM樹的當(dāng)前(current)指針停留在根結(jié)點(diǎn)上。讀取到<html>時(shí),新增結(jié)點(diǎn)編號(hào)為 1,類型為 HTMLHtmlNode;并將 current 指針指向編號(hào) 1。然后讀取到<head>結(jié)點(diǎn),新增結(jié)點(diǎn) HTMLHeadNode 編號(hào)為 2,置為 1 的子節(jié)點(diǎn),并將 current 指向 2。不斷重復(fù)上述步驟,直到全部 HTML 標(biāo)記都處理完畢,current 指針此時(shí)應(yīng)回到root 結(jié)點(diǎn)上,DOM 樹生成完畢。若 current 指針未能返回到 root 結(jié)點(diǎn)上,說明存在未能閉合的標(biāo)簽,此時(shí) DOM 樹生成器會(huì)自動(dòng)補(bǔ)全這些標(biāo)簽,但不考慮標(biāo)簽之間的從屬關(guān)系是否正確。若 current 指針提前返回到 root 結(jié)點(diǎn)上,后續(xù)多余的 HTML 閉合標(biāo)簽標(biāo)記將被拋棄,但對(duì)于標(biāo)準(zhǔn)標(biāo)簽標(biāo)記,DOM 樹生成器會(huì)嘗試將其置入<body>標(biāo)簽的末尾。以上操作符合 HTML 標(biāo)準(zhǔn),保證了 HTML 的容錯(cuò)性。2.3 Chromium 瀏覽器的腳本引擎 V8 分析JavaScript 腳本語言因?yàn)槠涮赜械拿嫦驅(qū)ο筇匦訹27]、事件驅(qū)動(dòng)特性、安全性
【相似文獻(xiàn)】
相關(guān)期刊論文 前10條
1 周勇生;;善于向漏洞掃描要安全[J];網(wǎng)絡(luò)安全和信息化;2016年03期
2 易永紅;;計(jì)算機(jī)網(wǎng)絡(luò)安全中的漏洞掃描技術(shù)運(yùn)用[J];電子技術(shù)與軟件工程;2017年07期
3 胡駿;;網(wǎng)絡(luò)安全中的系統(tǒng)漏洞掃描以及防病毒技術(shù)設(shè)計(jì)[J];信息與電腦(理論版);2017年18期
4 魏翠紅;;漏洞掃描技術(shù)分析[J];信息與電腦(理論版);2016年06期
5 戴新華;;漏洞掃描工作的有效管理[J];中國金融電腦;2010年11期
6 高凌雯;;網(wǎng)絡(luò)漏洞掃描原理分析[J];福建電腦;2009年09期
7 盧錚;分布式漏洞掃描技術(shù)與系統(tǒng)[J];信息網(wǎng)絡(luò)安全;2005年09期
8 徐海軍;淺析網(wǎng)絡(luò)安全中的漏洞掃描技術(shù)[J];軟件工程師;2005年Z1期
9 王穎;張仕海;胡燏;趙艷玲;;基于互聯(lián)網(wǎng)+的樂山鄉(xiāng)村智慧旅游發(fā)展研究[J];中國新通信;2019年05期
10 周鵬;倪昀澤;;一種評(píng)估漏洞掃描工具效果的測試集生成方法[J];科技視界;2018年18期
相關(guān)碩士學(xué)位論文 前10條
1 楊博文;網(wǎng)絡(luò)漏洞掃描關(guān)鍵技術(shù)研究[D];電子科技大學(xué);2019年
2 秦夢(mèng)遠(yuǎn);Chromium瀏覽器V8引擎漏洞掃描平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[D];哈爾濱工業(yè)大學(xué);2019年
3 于鵬文;基于P2P的分布式漏洞掃描技術(shù)研究[D];北方工業(yè)大學(xué);2019年
4 陳晶潔;高性能Web應(yīng)用漏洞掃描系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];北京郵電大學(xué);2019年
5 肖征;基于網(wǎng)絡(luò)爬蟲的網(wǎng)絡(luò)漏洞掃描檢測系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D];吉林大學(xué);2014年
6 沈佳坤;面向云計(jì)算的漏洞掃描代理的設(shè)計(jì)與實(shí)現(xiàn)[D];北京郵電大學(xué);2013年
7 王良;基于插件技術(shù)的漏洞掃描系統(tǒng)設(shè)計(jì)與應(yīng)用[D];上海交通大學(xué);2012年
8 王熠;基于入侵檢測漏洞掃描聯(lián)動(dòng)機(jī)制攻擊場景模型[D];武漢科技大學(xué);2009年
9 郭俸明;漏洞掃描工具原理與實(shí)現(xiàn)[D];中國地質(zhì)大學(xué)(北京);2008年
10 黃樂;RFID系統(tǒng)安全研究及漏洞掃描工具設(shè)計(jì)[D];電子科技大學(xué);2012年
本文編號(hào):2871847
本文鏈接:http://www.lk138.cn/guanlilunwen/ydhl/2871847.html