1、HTML

1.1 Web頁面幾乎全由HTML構建

HTML是為了發送Web上的超文本而開發的標記語言。

超文本是一種文檔系統,可將文檔中任意位置的信息與其他信息(文本或圖片)建立關聯,即超鏈接文本。

標記語言是指通過在文檔的某部分穿插特別的字元串標籤,用來修飾文檔的語言。

由HTML構成的文檔經過瀏覽器的解析、渲染後,呈現出來的結果就是Web頁面。

1.2 設計應用CSS

CSS的理念就是讓文檔的結構和設計分離,達到解耦的目的。

2、動態HTML

2.1 讓Web頁面動起來的動態HTML

所謂動態HTML,是指使用客戶端腳本語言將靜態的HTML內容變成動態的技術的總稱。

2.2 更易控制HTML的DOM

通過調用JS等腳本語言對DOM的操作,可以以更為簡單的方式控制HTML的改變。

3、Web應用

3.1 通過Web提供功能的Web應用

原本應用HTTP協議的Web的機制就是對客戶端發來的請求,返回事前準備好的內容,現在更需要引入由程序創建HTML內容的做法。

類似這種由程序創建的內容稱為動態內容。而事先準備好的內容稱為靜態內容。Web應用則作用於動態內容上。

3.2 與Web伺服器及程序協作的CGI

CGI(通用網關介面)是指Web伺服器在接收到客戶端發送過來的請求後轉發給程序的一組機制。在CGI的作用下,程序會對請求內容作出相應的動作,比如創建HTML等動態內容。

3.3 因Java而普及的Servlet

Servlet是一種能在伺服器上創建動態內容的程序。Servlet是Java語言實現的一個介面,屬於面向企業級Java的一部分。

Web的攻擊技術

互聯網上的攻擊大都將Web站點作為目標

1、針對Web的攻擊技術

應用HTTP協議的伺服器和客戶端,以及運行在伺服器上的Web應用等資源才是攻擊目標。

1.1 HTTP不具備必要的安全功能

整體上看,HTTP就是一個通用的單純協議機制。

1.2 在客戶端即可篡改請求

在HTTP請求報文被載入攻擊代碼,就能發起對Web應用的攻擊。

1.3 針對Web應用的攻擊模式

主動攻擊

主動攻擊是指攻擊者通過直接訪問Web應用,把攻擊代碼傳入的攻擊模式。直接針對伺服器上的資源進行攻擊,攻擊者需要能夠訪問那些資源。

代表性:SQL注入、OS命令注入

被動攻擊

被動攻擊是指利用圈套策略執行攻擊代碼的攻擊模式。

利用用戶的身份攻擊企業內部網路

2、因輸出值轉義不完全引發的安全漏洞

實施Web應用的安全對策可大致分為兩部分

客戶端驗證

Web應用端(服務端)的驗證(輸入值驗證、輸出值轉義)

保留客戶端驗證只是為了儘早地辨識輸入錯誤,起到提高UI體驗的作用。

輸入值驗證通常是指檢查是否是符合系統業務邏輯的數值或檢查字元編碼等預防對策。

2.1 跨站腳本攻擊

XSS是指通過存在安全漏洞的Web網站註冊用戶的瀏覽器內運行非法的HTML標籤或JS進行的一種攻擊。

造成的影響:騙取用戶個人信息、利用cookie,幫助攻擊者發送惡意請求。

在動態生成HTML處發生、XSS是攻擊者利用預先設置的陷阱觸發的被動攻擊。

對用戶Cookie的竊取攻擊

2.2 SQL注入攻擊

是指針對Web應用使用的資料庫,通過運行非法的SQL而產生的攻擊。

2.3 OS命令注入攻擊

指通過Web應用,執行非法的操作系統命令達到攻擊的目的。只要在能調用Shell函數的地方就有存在被攻擊的風險。

2.4 HTTP首部注入攻擊

攻擊者通過在響應首部欄位內插入換行,添加任意響應首部或主體的一種攻擊。屬被動攻擊。

(兩個換行)向首部主體內添加內容的攻擊稱為HTTP響應截取攻擊。

影響:設置任何Cookie信息、重定向至任意URL、顯示任意的主體(HTTP響應截斷攻擊)

另外,濫用HTTP/1.1 中彙集多響應返回功能,會導致緩存伺服器對任意內容進行緩存操作。這種攻擊稱為緩存污染。

2.5 郵件首部注入攻擊

2.6 目錄遍歷攻擊

2.7 遠程文件包含漏洞

3、因設置或設計上的缺陷引發的安全漏洞

3.1 強制瀏覽

3.2 不正確的錯誤消息處理

3.3 開放重定向

4、因會話管理疏忽引發的安全漏洞

4.1 會話劫持

4.2 會話固定攻擊

4.3 跨站點請求偽造 (CSRF)

5、其他安全漏洞

5.1 密碼破解

5.2 點擊劫持

5.3 DoS攻擊

是一種讓運行中的服務呈停止狀態的攻擊。

5.4 後門程序

推薦閱讀:

相关文章