Firewall characteristics and access policy

  • 設計目標:
    • 所有從內部到外部,以及從外部到內部的流量,都必須通過防火牆
    • 只有依照本地 security policy 所定義的被授權的流量才會被允許通過
    • 防火牆本身必須能抵抗入侵

  • Access Policy
    • 在規劃與實作中的一個關鍵組成要素: 制定一個 suitable access policy
    • 列出哪些類型的流量是被授權允許的
    • 此政策是根據組織的資訊安全風險評估與安全政策所制定出來的

Characteristics for Control Access

使用不同的條件做 Control Access

  • IP address and protocol values
    • 用於: packet filter and stateful inspection firewalls
    • 用來限制對特定服務的存取
  • Application protocol
    • 用於: app-level gateway
    • 負責轉送並監控特定應用協定的資訊交換
    • 檢查 SMTP 電子郵件是否包含垃圾郵件
  • User identity
    • 使用安全認證技術 (ex: IPSec) 來辨識內部使用者身份
  • Network activity
    • 考慮時間或請求條件
      • ex: 只允許在上班時間存取
    • 分析請求頻率或行為模式
      • 偵測掃描攻擊行為

Capabilities and Limitations

  • Capabilities
    • 單一管制點 (choke point): 可以阻擋未授權流量,並簡化管理
    • 一個用來監控安全相關事件的位置
    • 一個方便提供網路功能的平台
      • ex: NAT
    • 也是 IPSec 的運作平台,用來實作 VPN
  • Limitations
    • 無法防禦繞過防火牆的攻擊
    • 無法完全防止內部威脅
    • 若無線網路設定不安全,可能會被外部存取
    • 在外部感染的裝置,一旦接入內部網路就會被當作攻擊媒介使用

Types of firewalls

Packet filtering firewall

  • 對每一個進入與離開的 IP 封包套用一組規則
    • 規則是根據封包在 IP 或 TCP 標頭中的資訊進行比對
    • Matches: 決定是否要轉送或丟棄該封包
    • No match: 採取預設動作
      • Discard: 除非明確允許,否則一律禁止
      • Forward: 除非明確禁止,否則一律允許
  • 過濾規則是基於網路封包中所包含的資訊
    • Source IP address
    • Destination IP address
    • Source and destination transport-level address
    • IP protocol field
    • Interface

Example

  • 目標: 允許進出的電子郵件流量,但封鎖所有其他流量
    • SMTP 使用 25 port
Rule Direction Src address Dest address Protocol Dest port Action
1 In External Internal TCP 25 Permit
2 Out Internal External TCP >1023 Permit
3 Out Internal External TCP 25 Permit
4 In External Internal TCP >1023 Permit
5 Either Any Any Any Any Deny
  • What problems exist in this rule set?
    • Rule 4 允許外部流量進入內部,且目的 port 為 >1023
    • New Rule 4 允許外部主機用來源 port 25 向內部發送封包
    • Rule 3/4 的本意: 讓任何內部主機都可以對外寄送郵件

Pros and Cons

  • 優點:
    • Simplicity
    • Transparent to users and are very fast
  • 缺點:
    • 無法防止利用特定應用程式漏洞或功能的攻擊
    • 日誌記錄功能有限
    • 由於缺乏上層 (應用層) 功能,因此不支援進階的使用者身份驗證
    • 容易受到 TCP/IP 協定層問題的攻擊
    • 容易因為設定不當而導致安全漏洞

Possible Attacks

  • IP address spoofing
    • 攻擊者從外部發送封包,但將來源 IP 偽裝成內部主機的 IP 位址
    • Countermeasure: 丟棄所有來源 IP 為內部網段的外部進入封包
  • Source routing attacks
    • 攻擊者指定封包應該經過的路徑 (source routing)
    • Countermeasure: 丟棄所有使用 source routing 選項的封包
  • Tiny fragment attacks
    • 攻擊者利用 IP fragmentation 機制,將封包切成極小的碎片,迫使 TCP header 被拆到不同的封包片段中
    • 藉此繞過依賴 TCP header 判斷的防火牆規則
    • Countermeasure: 強制第一個封包分片必須包含足夠的 transport layer header

Weakness

  • 單一封包為單位做判斷與決策
    • 不會考慮任何更高層的上下文資訊
  • 對於 TCP 流量,必須允許所有目的 port ≥ 1024 的進入流量
    • Server port: < 1024 (well-known)
    • Client port: 1024 ~ 65535 (弱點來源)

Stateful Inspection Firewalls

  • 建立對外 TCP 連線目錄 (connection table) 來加強 TCP 流量的規則控制
    • 對每一個目前已建立的連線建立一筆紀錄
    • 只允許那些存在於紀錄中的連線所對應的 high numbered ports 的進入流量
    • 追蹤 TCP sequence number
      • 藉此防止 session hijacking (連線劫持) 攻擊
  • 有些還會檢查其他協定 (例如 FTP、SIPS 等)
Source Address Source Port Destination Address Destination Port Connection State
192.168.1.100 1030 210.9.88.29 80 Established
192.168.1.102 1031 216.32.42.123 80 Established
192.168.1.101 1033 173.66.32.122 25 Established
192.168.1.106 1035 177.231.32.12 79 Established
223.43.21.231 1990 192.168.1.6 80 Established
219.22.123.32 2112 192.168.1.6 80 Established
210.99.212.18 3321 192.168.1.6 80 Established
24.102.32.23 1025 192.168.1.6 80 Established
223.21.22.12 1046 192.168.1.6 80 Established

Application Proxy Firewall

  • 一種負責轉送應用層流量的機制: app proxy
    • 使用者透過 TCP/IP 應用程式 (例如 Telnet 或 FTP) 連接到代理伺服器
    • 代理伺服器再去連接遠端主機上的應用程式,並在雙方之間轉送 TCP 封包
      • 形成兩條被 spliced (拼接) 起來的連線
    • 必須針對特定應用程式撰寫對應的 proxy 程式碼
    • 可能會限制某些應用功能
  • 優點:
    • Packet filtering firewall 更安全
    • 不依賴 TCP/IP 層級的各種封包組合來判斷安全性
  • 缺點:
    • 每一條連線都會增加額外的 processing overhead

Circuit-level Proxy Firewall

  • 將一條 TCP 連線拆分成兩段
    • 形成兩條 TCP 連線
    • 將 TCP segments 在兩條連線之間進行轉送
    • 不檢查封包內容
  • 安全性主要在於決定哪些連線可以建立
    • 通常用在內部使用者被信任的環境
  • 減少應用層代理防火牆的負擔:
    • Inbound: app-level proxy firewall
    • Outbound: circuit-level proxy

SOCKS

  • 一個框架,讓 TCP/UDP 的 client-server 應用程式可以方便且安全地使用網路防火牆的服務
    • 用戶端應用程式會先連線 SOCKS 伺服器,進行身分驗證,並送出轉送請求
    • SOCKS 伺服器會評估該請求

Firewall basing

Stand-alone firewall (bastion host)

  • 由防火牆管理員指定的一個系統,作為網路安全中的關鍵防禦強點
    • 作為 app-level/circuit-level gateway 的運作平台
  • 運行安全強化的作業系統,只提供必要服務
    • hardened (加固) 系統
  • 可能需要使用者驗證才能存取該代理或主機
  • Proxy 原則:
    • Can restrict features, hosts accessed
    • Small, simple, checked for security
    • Independent, non-privileged
    • Limited disk use, hence read-only code

Host-based (Server-based) firewall

  • 軟體模組: 用來保護單一 host 的安全
    • 在許多作業系統中都有提供: 以附加套件形式存在
    • 用來過濾並限制封包的流動
    • 常見部署位置: server
  • 優點:
    • 過濾規則可以依照該主機的環境進行客製化
    • 保護機制不依賴拓樸 (topology)
    • 提供額外的一層防護
      • 通常會與 stand-alone firewalls 一起使用

Personal firewall

  • 安裝在個人電腦上的軟體模組
    • 可用於家庭與企業環境
    • 也可以內建在路由器中,用來保護所有連接該路由器的家用電腦
    • 比 server-based/stand-alone firewalls 更簡單
  • 主要功能: 拒絕未授權的遠端存取
    • 也可以監控對外流量 (例如蠕蟲與惡意程式)
  • 所有進入 (inbound) 的連線都會被拒絕,除非使用者明確允許
  • 對外 (outbound) 連線通常是允許的

Firewall location and configurations

DMZ Networks

Demilitarized Zone

  • 一個與內部私有網路隔離的小型網路
  • 位於 DMZ 網路中的系統 (網站): 可以被外部存取,但仍需要一定的保護

VPN

Virtual Private Networks

  • 由多台電腦所組成
    • 透過相對不安全的網路進行互連
    • 利用加密與特殊通訊協定來提供安全性
  • 在較低層的通訊協定中使用加密與身分驗證,以在不安全的網路上建立安全連線
    • 在 IP 層最常見的協定是 IPSec

Distributed firewalls

  • Local protection: 用來對抗內部攻擊
    • 可針對特定機器與應用程式進行客製化設定
    • 在數百台伺服器與工作站上部署 Host-based firewalls
    • 在本地與遠端使用者系統上部署 Personal firewalls
  • Global protection: 同時對抗內部與外部攻擊
    • Stand-alone firewalls
  • 可能同時使用內部與外部 DMZ
  • 外部 DMZ: 防護較少 (Web servers)
    • 通常不包含高敏感資訊
    • 仍由 host-based firewalls 保護
  • 需要安全監控

Summary of firewall locations and topologies

Intrusion prevention systems

IPS

  • IPS 是 IDS (入侵偵測系統) 的延伸: 可以阻擋或防止已偵測到的惡意活動
  • 和 IDS 類似
    • Types: host-based, network-based, or distributed/hybrid
    • Approaches: anomaly detection, or signature/heuristic detection

Host-based IPS

HIPS

  • Anomaly detection: 行為模式是否屬於正常合法使用者
  • Signature/heuristic detection: 尋找已被識別為惡意的行為模式
  • 功能可以依不同平台進行客製化
    • 可用於一般桌面或伺服器系統
    • 也可針對特定伺服器提供保護
  • Alternative solution: a sandbox approach
    • 適用於行動程式碼,例如 Java applets 或腳本語言
    • 將這些程式隔離在系統的受控區域

The Role of HIPS

  • 駭客與犯罪者的主要攻擊目標: enterprise endpoint
    • 包括桌面電腦與筆記型電腦系統
    • 相較於網路設備更常成為攻擊目標
  • 資安廠商越來越專注於 endpoint 安全產品
    • 提供整合式的單一產品套件
    • 防毒、反間諜軟體、反垃圾郵件與個人防火牆
  • 優點:
    • 多種安全工具可以緊密協作
    • 威脅防護更加完整
    • 管理也更容易
  • If HIPS is sophisticated enough, can we get rid of network-level devices?

Defense in Depth

DiD

  • 一系列防禦機制以分層方式保護重要的資料與資訊
    • 這是一種多層次的方法,並且刻意設計冗餘機制
    • 如果某一層防護失效,另一層會立即補上以阻擋攻擊
  • 將 HIPS 作為 DiD 策略中的一個組成元素
    • 並與 network-level devices 一起使用,例如防火牆與 network-based IPS

Network-based IPS

NIPS

  • Inline with NIDS: 可以修改或丟棄封包,甚至中斷 TCP 連線
    • Approaches: anomaly detection, or signature/heuristic detection

Distributed or Hybrid IPS

紅字整理

P38: The Role of HIPS, If HIPS is sophisticated enough, can we get rid of network-level devices?

  • 考慮 Defense in Depth (Did)
    • 應該以分層方式保護重要的資料與資訊
    • 配合 network-level devices 一起使用