「第五章」点击劫持(ClickJacking)
生活随笔
收集整理的這篇文章主要介紹了
「第五章」点击劫持(ClickJacking)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
「第二篇」客戶端腳本安全批注[……]?? ?表示他人、自己、網絡批注參考資料來源于* CSDN* GitHub* Google* 維基百科* YouTube* MDN Web Docs由于編寫過程中無法記錄所有的URL所以如需原文,請自行查詢{……}?? ?重點內容*……*?? ?表示先前提到的內容,不贅述「第二篇」客戶端腳本安全0.6本書結構就當前比較流行的客戶端腳本攻擊進行了深入闡述,當網站的安全做到一定程度后,黑客很難找到類似注入攻擊、腳本執行等高風險的漏洞,從而可能將注意力轉義到客戶端腳本攻擊上客戶端腳本安全于瀏覽器的特性息息相關,因此對瀏覽器的深入理解將有助于做好客戶端腳本安全的解決方案「第五章」點擊劫持(ClickJacking)[UI-覆蓋攻擊通過覆蓋不可見的框架誤導受害者點擊雖然受害者點擊的是他所看到的網頁,但其實他所點擊的是被黑客精心構建的另一個置于原網頁上面的透明頁面這種攻擊利用了HTML中<iframe>標簽的透明屬性修復方法* X-FRAME-OPTIONS(修改中間件配置)X-FRAME-OPTIONS是微軟提出的一個http頭,專門用來防御利用iframe嵌套的點擊劫持攻擊,并且在IE8、Firefox3.6、Chrome4以上的版本均能很好的支持頭的值* DENY拒絕任何域加載 * SAMEORIGIN允許同源域下加載 * ALLOW-FROM可以定義允許frame加載的頁面地址 下載SAPI(The OWASP Enterprise Security API)包解決的簡單方法* esapi-2.1.0.1.jar,下載地址https://www.owasp.orghttps://download.csdn.net/download/chengcm/11072723* 將esapi-2.1.0.1.jar放到web應用的lib目錄下* 在web.xml中增加ClickjackFilter過濾器的設置* 重啟服務器* 增加js的防御(代碼層面的防御)]「5.1什么是點擊劫持」安全專家Robert Hansen與Jeremiah Grossman發現了一種被他們稱為ClickJacking(點擊劫持)的攻擊,這種攻擊幾乎影響了所有的桌面平臺,包括IE、Safari、Firefox、Opera以及Adobe Flash點擊劫持是一種視覺上的欺騙手段,攻擊者使用一個透明的、不可見的iframe,覆蓋在一個網頁上,然后誘使用戶在該網站上進行操作,此時用戶將在不知情的情況下點擊透明的iframe頁面通過調整iframe頁面的位置,可以誘使用戶恰好點擊阿茲iframe頁面的一些功能性按鈕上通過控制iframe的長、寬,以及調整top、left的位置,可以把iframe頁面內的任意部分覆蓋到任何地方,同時設置iframe的position為absolute,并將z-index的值設置為最大,以達到讓iframe處于頁面的最高層,再通過設置opacity來控制iframe頁面的透明度,值為0是完全不可見點擊劫持攻擊與CSRF攻擊 *第四章 跨站點請求偽造(CSRF)* 有異曲同工之妙,都是在用戶不知情的情況下誘使用戶完成一些動作,但是在CSRF攻擊過程中,如果出現用戶交互的頁面,則攻擊可能會無法順利完成但是點擊劫持沒有這個顧慮,它利用的就是與用戶產生交互的頁面「5.2Flash點擊劫持」攻擊者通過通過Flash構造出了點擊劫持,在完成一系列復雜操作下,最終控制用戶電腦的攝像頭* 攻擊者制造一個Flash游戲,并誘使用戶來玩此游戲* 該游戲就是誘使用戶點擊click按鈕,每一次點擊,這個按鈕的位置都會變化* 在一步步操作后,打開了用戶的攝像頭其實該網頁隱藏了一個iframe頁面,一步步誘使用戶點擊功能鍵,從而打開攝像頭「5.3圖片覆蓋攻擊」點擊劫持是一種視覺欺騙,順著這個思路,還有一些攻擊方式也可以起到類似的作用,如圖片覆蓋安全研究者sven.vetsch最先提出了這種Cross Site Image Overlaying攻擊,簡稱XSIOsven.vetsch通過調整圖片的style使得圖片能夠覆蓋在他所指定的任意位置XSIO不同于XSS,它利用的是圖片的style,或者能夠控制CSS如果應用沒有下肢style的position為absolute的話,圖片就可以覆蓋到頁面上的任意位置,形成點擊劫持百度空間也曾出現過此問題http://hi.baidu.com/aullik5/blog/item/e031985175a02c685352416.html圖片還可以偽裝得像一個正常的鏈接、按鈕,或者在圖片中構造一些文字覆蓋在關鍵的位置,這樣就不需要用戶點擊,也可以達到欺騙的作用由于<img>標簽在很多系統中是對用戶開放的,因此在現實中有非常多的站點存在被XSIO攻擊的可能在防御XSIO時,需要檢查用戶提交的HTML代碼中,<img>標簽的style屬性是否可能導致浮出「5.4拖拽劫持、數據盜取」安全研究者Paul Stone在BlackHat 2010大會上發表了題為Next Generation Clickjacking的演講,在該演講中提出了瀏覽器拖拽事件導致的安全問題目前很多瀏覽器都支持使用Drag & Drop的API對于用戶來說,拖拽使他們的操作更加簡單瀏覽器中的拖拽對象可以是鏈接、文字、窗口,因此拖拽不受同源策略的限制拖拽劫持的思路是誘使用戶從隱藏的iframe中拖拽出攻擊者希望得到的數據,然后放到攻擊者能控制的另一個頁面中,從而盜取數據在JavaScript或Java API的支持下,這個攻擊過程會變得非常隱蔽,因為它突破了傳統ClickJacking一些先天的局限,所以這種新型的拖拽劫持能夠造成更大的破壞國內安全研究者xisigr曾經構造了一個針對Gmail的POChttp://hi.baidu.com/blog/item/2c2b7a110ec848f0c2ce79ec.html「5.5觸屏劫持」手機上的觸屏劫持攻擊被斯坦福的安全研究者公布,這意味著ClickJacking的攻擊方式跟進一步,斯坦福安全研究者的將其稱為TapJackinghttp://seclab.stanford.edu/websec/framebusting/tapjacking.pdf從手機OS的角度看,觸屏實際上是一個事件,OS捕捉這些事件,并執行相應的操作一次觸屏可能對應一下操作* touchstart,手指觸摸屏幕時產生* touchend,手指離開屏幕時產生* touchmove,手指滑動時發生* touchcancel,系統可取消touch通過將一個不可見的iframe覆蓋到當前網頁上,可以劫持用戶的觸屏操作2010年12月,研發者發現TapJacking可以更改系統安全設置http://blog.mylookout.com/look-10-007-tapjacking/http://vimeo.com/17648348「5.6防御ClickJacking」5.6.1frame busting可以寫一段JavaScript代碼,禁止iframe的嵌套,這種方法叫frame busting但frame busting存在一些缺陷由于他是JavaScript寫的,控制能力不是特別強,因此有許多方法饒過它此外,像HTML5中iframe的sandbox屬性、IE中iframe的security屬性等,都可以限制iframe頁面中的JavaScript腳本執行,從而可以使得frame busting失效斯坦福的Gustav Rydstedt等人總結了一片關于攻擊frame busting的paperhttp://seclab.stanford.edu/websec/framebusting/framebust.pdf5.6.2X-Frame-Options因為frame busting容易被繞過,所以我們需要一個更好的解決方案----HTTP頭的X-Frame-OptionsX-Frame-Options可以說是專門為ClickJacking準備的,一下瀏覽器已開始支持X-Frame-Options* IE 8+* Opera 10.50+* Safari 4+* Chrome 4.1.249.1042+* Firefox 3.6.9(or earlier with NoScript)它有三個可選的值* DECY拒絕訪問任何iframe* SAMEORIGN只能訪問同源域名下的iframe* ALLOW-FROM Origin允許frame加載頁面地址[Content Security Policy網頁安全政策(CSP(Content Security Policy)),一種白名單制度]「5.7總結」XSS與CSRF需要誘使用戶與界面產生交互,而ClickJacking在未來仍然有可能被攻擊者利用在釣魚、欺詐、廣告作弊等方面,不可不察
總結
以上是生活随笔為你收集整理的「第五章」点击劫持(ClickJacking)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: js实现农历时间代码
- 下一篇: Vacuum tube 真空管/电子管