Web安全之點擊劫持


    Web安全之點擊劫持文章,原文連接:http://www.cnblogs.com/lovesong/p/5248483.html

Web安全之點擊劫持(ClickJacking)

點擊劫持(ClickJacking)是一種視覺上的欺騙手段。大概有兩種方式,一是***者使用一個透明的iframe,覆蓋在一個網頁上,而後誘使用戶在該頁面上進行操做,此時用戶將在不知情的狀況下點擊透明的iframe頁面;二是***者使用一張圖片覆蓋在網頁,遮擋網頁原有位置的含義;html

iframe覆蓋nginx

直接示例說明web

1. 假如咱們在百度有個貼吧,想偷偷讓別人關注它。因而咱們準備一個頁面:瀏覽器

複製代碼

<!DOCTYPE HTML><html><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><head><title>點擊劫持</title><style>
     html,body,iframe{
         display: block;
          height: 100%;
          width: 100%;
          margin: 0;
          padding: 0;
          border:none;
     }
     iframe{
          opacity:0;
          filter:alpha(opacity=0);
          position:absolute;
          z-index:2;
     }
     button{
          position:absolute;
          top: 315px;
          left: 462px;
          z-index: 1;
          width: 72px;
          height: 26px;
     }</style></head>
     <body>
          那些不能說的祕密          <button>查看詳情</button>
          <iframe src="http://tieba.baidu.com/f?kw=%C3%C0%C5%AE"></iframe>
     </body></html>

複製代碼

PS:頁面看起來就這樣,固然真正***的頁面會精緻些,不像這麼簡陋。安全

2. 網址傳播出去後,用戶手賤點擊了查看詳情後,其實就會點到關注按鈕。app

PS:能夠把iframe透明設爲0.3看下實際點到的東西。ide

3. 這樣貼吧就多了一個粉絲了。post

解決辦法網站

使用一個HTTP頭——X-Frame-Options。X-Frame-Options能夠說是爲了解決ClickJacking而生的,它有三個可選的值:ui

DENY:瀏覽器會拒絕當前頁面加載任何frame頁面;

SAMEORIGIN:frame頁面的地址只能爲同源域名下的頁面;

ALLOW-FROM origin:容許frame加載的頁面地址;

PS:瀏覽器支持狀況:IE8+、Opera10+、Safari4+、Chrome4.1.249.1042+、Firefox3.6.9。

具體的設置方法:

Apache配置:

Header always append X-Frame-Options SAMEORIGIN

nginx配置:

add_header X-Frame-Options SAMEORIGIN;

IIS配置:

複製代碼

<system.webServer>
    ...    <httpProtocol>
        <customHeaders>
            <add name="X-Frame-Options" value="SAMEORIGIN" />
        </customHeaders>
    </httpProtocol>
    ...</system.webServer>

複製代碼

圖片覆蓋

圖片覆蓋***(Cross Site Image Overlaying),***者使用一張或多張圖片,利用圖片的style或者可以控制的CSS,將圖片覆蓋在網頁上,造成點擊劫持。固然圖片自己所帶的信息可能就帶有欺騙的含義,這樣不須要用戶點擊,也能達到欺騙的目的。

PS:這種***很容易出如今網站自己的頁面。

示例

在能夠輸入HTML內容的地方加上一張圖片,只不過將圖片覆蓋在指定的位置。

<a href="http://tieba.baidu.com/f?kw=%C3%C0%C5%AE">
     <img src="XXXXXX" style="position:absolute;top:90px;left:320px;" /></a>

解決辦法

在防護圖片覆蓋***時,須要檢查用戶提交的HTML代碼中,img標籤的style屬性是否可能致使浮出。

總結

點擊劫持算是一種不少人不大關注的***,他須要誘使用戶與頁面進行交互,實施的***成本更高。另外開發者可能會以爲是用戶犯蠢,不重視這種***方式。

相關文章
相關標籤/搜索