1. 程式人生 > >Azure WAF防火牆工作原理分析和配置嚮導

Azure WAF防火牆工作原理分析和配置嚮導

作者:沙濤

轉自:http://www.cnblogs.com/taosha/p/6716434.html 

Azure WAF

本地資料中心往雲端遷移的的趨勢越來越明顯,安全始終是最熱門的話題之一。

本文討論的內容是Azure WAF,即微軟公有云Azure的Web application firewall(下均簡稱WAF)。內容概述:

  1. 什麼是WAF
  2. Azure WAF功能和特點
  3. Azure WAF的工作原理
  4. 一步步配置WAF

1、什麼是WAF

隨著網際網路的進一步發展,Web應用大行其道,承載了客戶越來越多的應用,甚至各種核心應用,針對Web應用的”掘金行動”也越來越多,網上報道的各類受攻擊事件呈直線上升趨勢。WAF全稱Web application firewall,就是網站應用程式防火牆,顧名思義是專門針對Web應用的防火牆,這是一個細分領域的針對性防火牆。

2、Azure WAF功能和特點

微軟在雲端提供了WAF功能,目前這個功能還僅僅在海外版提供使用,國內21V的版本還沒有提供,不過海外有了,國內估計也快了,確實客戶的剛性需求擺在這裡呢。

WAF不僅僅只是防禦Web的http訪問,可以對Web應用做到全方位的立體防護。可以防範:

  • 常見的命令注入攻擊,利用網頁漏洞將含有作業系統或軟體平臺命令注入到網頁訪問語句中以盜取資料或後端伺服器的控制權
  • SQL 注入,找到資料查詢語句漏洞,通過資料庫查詢程式碼竊取或修改資料庫中的資料
  • 跨站指令碼攻擊,利用網站漏洞攻擊訪問該站點的使用者,使用者登陸或認證資訊;
  • 各種HTTP 協議攻擊,利用http的協議漏洞進行攻擊;
  • 機器人、 爬蟲和掃描,通過機器人,爬蟲,和掃描工具自動抓取網站資料以及對網站進行自動攻擊;
  • 常見的應用程式配置錯誤 (如 Apache、 IIS 等),利用Web釋出程式的配置漏洞或者已知bug進行攻擊
  • HTTPS攻擊,使用SSL加密包繞過網路防火牆和普通的WAF進行攻擊;

總結:微軟WAF使用開源的通用OWASP 規則包進行防範,目前支援CRS 2.2.9和CRS 3.0兩個版本的規則集。可以支援:

注意:Azure資料中心自帶防DDOS攻擊,所以WAF沒有防DDOS攻擊的能力。

Azure WAF的特點是配置簡單,功能強大,價格便宜;還可以將現有Application gateway快速升級為WAF。

3、Azure WAF的工作原理

這裡要理解一下微軟WAF的設計理念,專有名詞和相關限制,這樣在後面配置時就比較清晰。

從網路拓撲上來看,WAF是應用程式閘道器的一種,位置介於負載均衡器和後端伺服器組之間,工作在OSI網路堆疊的最高層–第七層,如下圖:

Azure WAF的工作原理

WAF可以分為前端捕獲,規則設定和監控(大腦),規定動作(監控or阻斷),日誌儲存/監控展現四大部分,這四個部分在Azure WAF都有一一對應處理單元如下圖:

前端埠是前端流量入口點,繫結規則的監聽器則負責將流量導向不同的後端伺服器池,Azure WAF提供兩種動作,一種是監控,即發現非法流量僅做記錄;第二種是保護,發現非法流量後會攔截該流量,僅允許合法流量通過WAF;每個後端伺服器池提供一個Web應用服務;

理解上文的專有名詞,(吐槽一下各種名詞多多,很容易搞暈)

  • Back-end server pool/後端伺服器池:後臺要保護的伺服器池IP列表;每個池最大100臺伺服器,一個WAF最大支援20個後端伺服器池;
  • Back-end server pool settings/後端伺服器池設定:每個伺服器池單獨設定埠,協議等,注意配置會應用在該後端池的所有伺服器上,針對不同應用建議設定不同的後端池;
  • Front-end port/前端埠:設定應用閘道器上的公共IP,所有流量通過這個IP進入閘道器,再由閘道器重定向到後端伺服器池;注意一個WAF只有一個公網前端和內網前端;
  • Listener/監聽器:監聽器負責監聽前端埠;一個WAF最大20個監聽器;所有流量都必須經過監聽器處理;可以設定多個監聽器監聽不同埠或者不同協議的流量;
  • Rule/規則:規則必須繫結到監聽器方可發生作用,所有進來的流量經過規則裁定後,再到後端伺服器池,每個監聽器最大10條規則;規則有三個要素:監聽器名,後端伺服器池,http協議及埠設定。只有知道這些要素WAF才知道該把HTTP/HTTPS(也許是非預設埠)流量導向哪一個後端伺服器池。
  • Certificates/認證: 使用Https的時候會用到。

4、一步步配置Azure WAF

理論已經講明白了,接下來配置非常簡單,可以按照如下順序配置:

第一步:首先你得先有個WAF,登陸Azure Global Portal在Application Gateway(應用程式閘道器)建立WAF;建立完成後如下圖,前端IP已經自動生成了。

第二步:配置WAF

配置WAF

選擇開啟防火牆,防火牆模式就是動作模式,有兩種,選擇Detection監測模式,會記錄流量,不會阻斷非法流量;選擇Prevention會主動阻斷非法流量;

第三步:配置後端伺服器池

後端伺服器池就是Web應用伺服器的IP或者域名,可以有多個後端池;在規則設定中區分流量導向哪個後端伺服器池;

第四步:配置Http協議和埠

配置Http協議和埠

我們前面提到過規則的三要素,前端,後端,http配置,這裡可以配置埠,如果你後端伺服器池用的不是通用的80埠,這裡一定要做一下配置;這裡也可以設定HTTP or HTTPS。

第五步:配置監聽器

配置監聽器

如上圖,針對不同埠的流量要用不同的監聽器進行監聽,一個WAF可以配置最大20個監聽器;

第六步:配置規則

配置規則

如果瞭解了WAF的工作原理,理解規則就非常容易,如前文所述,規則繫結在監聽器上,根據流量的型別和埠再將流量導向到指定的後端伺服器池,如下圖所示,

到此為止,WAF就已經配置完成了,是不是非常簡單,但是可以為您的Web應用加上全方位的保護,這下終於可以安心的睡個覺了。

結尾:Azure WAF功能非常強大,不但支援Web應用的安全防護,還可以支援多站點流量分發(一個WAF最大20個站點),還支援將站點不同內容比如圖片PIC,視訊Video等根據需要導向到不同的後端伺服器等等,有這麼強大的WAF您還在等什麼,微軟雲海外使用者可以趕緊用起來啦。

文章來自微信公眾號:運維幫