[發明專利]JavaScript路徑枚舉在審
| 申請號: | 201710705774.8 | 申請日: | 2017-08-17 |
| 公開(公告)號: | CN107808097A | 公開(公告)日: | 2018-03-16 |
| 發明(設計)人: | K·A·威廉姆斯;S·A·米勒;S·D·哈德曼 | 申請(專利權)人: | 安提特軟件有限責任公司 |
| 主分類號: | G06F21/57 | 分類號: | G06F21/57 |
| 代理公司: | 北京德琦知識產權代理有限公司11018 | 代理人: | 康泉,宋志強 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | javascript 路徑 枚舉 | ||
背景技術
可以測試web頁/應用程序以確保可開發的漏洞的來源。這些漏洞的一個來源可以是可執行的JavaScript代碼。因為這些應用程序通常是大型的、復雜的并與web服務相互關聯,所以可以執行JavaScript分析以暴露可攻擊的入口點。
附圖說明
以下詳細描述參考附圖,其中:
圖1是用于JavaScript路徑枚舉的示例環境的框圖;
圖2是用于JavaScript路徑枚舉的示例方法的流程圖;
圖3是用于文檔對象模型調整和枚舉的另一示例方法的流程圖;
圖4是用于JavaScript路徑枚舉的示例方法的流程圖;
圖5是用于JavaScript路徑枚舉的示例系統的框圖。
具體實施方式
在正常操作期間,瀏覽器中的web頁可以執行JavaScript代碼并對定時器事件、實時用戶事件(諸如按鍵和鼠標點擊)等做出反應。所得到的調用鏈和代碼流可以構成一組允許的或計劃的執行。作為示例,針對在JavaScript代碼中的“if-else”分支路徑,代碼可以遵循由當前程序狀態所指示的路徑。它可以運行“if”或“else”,但不是兩者均運行。
該正常代碼流是正確的程序操作,但是可以不包括來自惡意施動者(actor)的可能攻擊點。然而,正確的瀏覽器執行可以不是對于這些施動者的約束。惡意施動者可以分析源代碼并進行關于代碼如何與web服務器交互的推論以確定JavaScript代碼的非計劃(unintended)執行。示例是上述的相同的“if-else”。瀏覽器的計劃(intended)執行可以指示在某個情境中采取“if”路徑。該計劃路徑可以稱作“正常”路徑。然而,兩種代碼路徑可以包含對服務器的AJAX網絡調用并且該AJAX調用可以是將被利用的入口點。熟練的攻擊者可以修改一組攻擊以通過遵循非計劃路徑來嘗試并制作如果代碼替代“if”路徑而進入“else”路徑將發生的網絡請求。該非計劃路徑可以稱作“黑暗路徑”。
在此所述的JavaScript路徑枚舉技術可有助于自動地探索在正常瀏覽器操作期間不會發生但是如果執行黑暗路徑則可以由入侵者用作攻擊點的這些黑暗路徑。用于JavaScript路徑枚舉的示例方法可以包括接收與包括多個可執行JavaScript代碼的HTML頁面結構對應的代碼以及枚舉JavaScript代碼中的分支路徑。該方法可以包括確定在瀏覽器執行JavaScript代碼的正常操作期間將不會執行的分支路徑的分支。該方法還可以包括生成用于分支的人工條件以及使用人工條件執行分支。
圖1是JavaScript路徑枚舉可以是有用的示例環境100的框圖。環境100可以包括具有文檔對象模型104、執行引擎106以及瀏覽器108的堆棧102。文檔對象模型(DOM)104是超文本標示語言(HTML)頁面結構的內部表示,即,它是反映web頁的樹型結構。初始頁面可以來自web服務器并可以渲染至瀏覽器中作為HTML以及可以在HTML頁面加載之后執行的其他代碼(諸如JavaScript(JS)代碼)。一旦渲染,則可以與頁面交互(例如通過點擊、按鍵、和定時器事件等)以引起頁面改變。這些交互可以引起將DOM 104改變為添加至DOM、從DOM刪除、DOM改變等的形式。這些對DOM的改變可以稱作“DOM突變”。
執行引擎106可以執行來自HTML頁面結構的代碼。例如,執行引擎106可以是執行JavaScript代碼的JavaScript引擎。瀏覽器108可以用于解釋HTML頁面結構以及由DOM 104表示的可執行代碼。在一些方面中,瀏覽器108可以是模擬人類操作者并且還內部追蹤DOM狀態變化的“無頭(headless)”瀏覽器。無頭瀏覽器可以使用異步的JavaScript和XML協議(AJAX)對服務器進行調用。無頭瀏覽器可以模擬傳統的瀏覽器如何動作但是可以不渲染圖形用戶界面(GUI)。通過不渲染GUI,環境100可以提高安全掃描/分析的速度。瀏覽器108還可以訪問由傳統瀏覽器所禁止和/或隱藏的某些值和動作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安提特軟件有限責任公司,未經安提特軟件有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710705774.8/2.html,轉載請聲明來源鉆瓜專利網。





