微服務應用開發的 網路資安架構...2020/07/09  · Traditional Delivery Architecture...

Post on 12-Jul-2020

0 views 0 download

Transcript of 微服務應用開發的 網路資安架構...2020/07/09  · Traditional Delivery Architecture...

微服務應用開發的 網路資安架構

| © 2018 F5 NETWORKS 2

現代應用需要現代架構

• 三層 J2EE 式架構

• 複雜協定(HTML、SOAP)

• 持久部署

• 固定靜態基礎架構

• 大版本發布

• 獨立團隊(開發、測試、操作)

• 微服務

• 輕量級(REST,Messaging)

• 容器、VM

• SDN、 NFV、 雲

• 持續交付

• DevOps 文化

...to dynamic From monolithic...

| © 2018 F5 NETWORKS 3

單體應用及優缺點 • 一個安裝檔案(可以是JAR、WAR、或其它檔案格式)包含所有功能的應用程式。業務系統的模組是緊耦合的,各模組運行在一個進程中。

• 優點

• 便於共用

• 易於測試

• 易於部署

• 缺點

• 過高耦合的風險,複雜性高

• 新語言、新技術引入的阻力,阻礙技術創新

• 技術債務

• 水準擴展的問題

• 難以可持續發展

| © 2018 F5 NETWORKS 4

微服務架構

• 微服務架構風格是一種將單一應用程式開發為一組小型服務的方法,服務間通信採用輕量級通信機制。這些服務圍繞業務能力構建並且可通過全自動部署機制獨立部署。這些服務共用一個最小型的集中式的管理,服務可用不同的語言開發,使用不同的資料存儲技術。

• 優點

• 輕量級的服務

• 耦合的系統,易於開發、測試、部署

• 按需可擴展

• 積木式的系統,技術架構不受限制

• 問題

• 高度自動化與集中運維管理

• 架構重組

• 高品質的文檔

• 分散式系統的複雜性

| © 2018 F5 NETWORKS 5

現代化應用的挑戰

多個雲平臺、新架構和工具集

隨著容器和微服務的興起,威脅表面區域正

在爆炸式增長

基本的雲原生服務總是不夠用(Not Good

Enough)

雲端缺乏可視性和控制力

DevOps / AppDev 對傳統 NetOps /

SecOps 造成壓力

AppDev/DevOps

• 虛擬化應用 • 容器 • 微服務

. .

NetOps/SecOps

• 服務不一致 • 安全性漏洞 • 合規差距 • 沒有集中控制

網路攻擊和資料丟失 APP停機 損害賠償

. .

| © 2018 F5 NETWORKS 6

服務描述

常用的服務描述方式包括 RESTful API、XML 配置以及 IDL 文件三種。

RESTful API 方式通常用於 HTTP 協定的服務描述,並且常用 Wiki 或者Swagger來進行管理。下面是一個 RESTful API 方式的服務描述的例子。

XML 配置方式多用作 RPC 協定的服務描述,通過 *.xml 設定檔來定義介面名、參數以及返回數值型別等。下面是一個 XML 配置方式的服務描述的例子。

IDL 檔方式通常用作 Thrift 和 gRPC 這類跨語言服務調用框架中,比如 gRPC 就是通過 Protobuf 檔來定義服務的介面名、參數以及返回值的資料結構

ABC

| © 2018 F5 NETWORKS 7

服務框架 用戶端與服務端建立網路連接

HTTP通信、Socket通信

服務端處理請求

同步阻塞方式(BIO)、同步非阻塞方式(NIO)、非同步非阻塞方式(AIO)

資料傳輸採用什麼協議

最常用的就是HTTP協定、也有私有協定

數據的序列化和反序列化

文本類如 XML/JSON、二進位類如 PB/Thrift

支援資料結構類型的豐富度、跨語言支援、性能

| © 2018 F5 NETWORKS 8

服務監控

監控對象

使用者端監控、介面監控、資源監控、基礎監控

監控指標

請求量、回應時間、錯誤率

監控維度

全域維度、分機房維度、單機維度、時間維度、核心維度

監控系統

資料獲取

資料傳輸

資料處理

數據展示

| © 2018 F5 NETWORKS 9

API 是新一代雲原生應用建構的核心技術 從單體服務到微服務

| © 2018 F5 NETWORKS 10

The New Normal 新常態 應用為王時代的預期

應用程式交付

專業知識期望

應用程式體系結構

MONOLITHS CONTAINERS

MAINFRAME

3-TIER SERVERLESS

CLIENT-SERVER

Web SPAs Mobile MSA Cloud-native

NETOPS

NOOPS

TRADITIONAL NETWORKING 傳統

MODERN NETWORKING現代

AS A SERVICE

DEVOPS

| © 2018 F5 NETWORKS 11

The New Normal 新常態 統計數字

應用程式交付

專業知識期望

應用程式體系結構

MONOLITHS CONTAINERS

MAINFRAME

3-TIER SERVERLESS

CLIENT-SERVER

Web SPAs Mobile MSA Cloud-native

NETOPS

NOOPS

TRADITIONAL NETWORKING

MODERN NETWORKING

AS A SERVICE

DEVOPS 47% 部署容器,因為它們提供了更簡單的管理

(SDxCentral, Container and Cloud Orchestration Report, 2017)

33% 在過去一年中部署了無伺服器應用

(Digital Ocean, Q2 Developer Survey, 2018)

53% 將容器用作無伺服器部署的基礎

(The New Stack, Serverless Survey, 2018)

85% 基於容器的作業

(Cisco, Global Cloud Index: 2016-2021, 2018)

| © 2018 F5 NETWORKS 12

The New Normal 新常態 控制和混亂

• 高可靠性(內置於容錯移轉)

• 低抗干擾能力

• 共用資源

• 受控版本

Traditional Delivery Architecture (N-S)

• 可靠性低(built to fail)

• 高抗干擾性

• 專用資源

• Per App

Modern Delivery Architecture (E-W)

MONOLITHS MICROSERVICES

MAINFRAME

3-TIER SERVERLESS

CLIENT-SERVER

Web SPAs Mobile MSA微服務 Cloud-native

雲原生

控制

LOWER

HIGHER

混亂 LOWER HIGHER

| © 2018 F5 NETWORKS 13

The New Normal 新常態 NORTH-SOUTH MEETS EAST-WEST當南北遇上東西

NORTH-SOUTH (傳統交付模式)

• 傳統網路模式

• 單一、受控、線性資料路徑

• 共用基礎架構

• 低抗干擾能力

• 對可靠性的高要求

• 固定定址

• 受控版本

| © 2018 F5 NETWORKS 14

The New Normal 新常態 NORTH-SOUTH MEETS EAST-WEST當南北遇上東西

EAST-WEST (現代交付模式)

• 現代網路模型

• 多個動態資料路徑

• 專用基礎設施

• 高抗幹擾性

• 對可靠性的較低

• 基於發現定址

• 每個應用按需發佈

| © 2018 F5 NETWORKS 15

EAST-WEST (現代資料路徑) NORTH-SOUTH (傳統資料路徑)

| © 2018 F5 NETWORKS 16

為了速度犧牲安全

The New Normal 新常態

62% 57% 應用團隊說

NO

運維團隊說

NO

SOURCE: THREAT STACK, BRIDGING THE GAP BETWEEN SECOPS AND REALIT Y, 2019

| © 2018 F5 NETWORKS 17

API : 微服務發展的基石

| © 2018 F5 NETWORKS 18

軟體之間的通訊協定

Application應用:在行動裝置或個人電腦上使

用的軟體應用程式。

Programming:程式開發

Interface介面:如何與應用進行互動,以及可以

接收哪些類型的回應

Application Programming Interface : API 應用程式介面

| © 2018 F5 NETWORKS 19

Web應用程式演進中的 API

現代Web應用程式

{ }

https://object/...

HTML

https://api/...

JSON JSON JSON

傳統網頁應用

| © 2018 F5 NETWORKS 20

API應用對比WEB應用

• JSON

• XML

• 幾乎都是後臺操作

• HTML

• 分靜態和動態,流量

大部分是靜態

• HTTP 層JWT認證

• HTTP層Oauth2認證

HTTP層無認證,通過

應用進行認證,認證後

分配session id

API(新)

WEB(舊)

內容 認證

使用WEB應用不需要單獨

瞭解每個URI,只需要知道

入口,入口頁面具備連結組

成應用頁面

每個API為一個URI,正常

用戶明確知道每個URI的用

法,如HTTP方法,變數名,

變數類型

HTTP形態

API安全需要充分理解,並利用API應用的特性提供應用層安全防護功能

| © 2018 F5 NETWORKS 21

在組織/企業內使用

• 電子商務網站(如PCHOME/MOMO)

• 信用卡公司(業務單位內部資訊共用)

• 醫療保健(在醫院內記錄和共用醫療記錄)

1-API使用模型–內部/私有

| © 2018 F5 NETWORKS 22

在合作夥伴間使用

• Partner Use-Cases

− 銀行間(銀行賬戶查詢、無現金支付、風險評分檢查)

− 協力廠商服務業者(TSP)與銀行間

− 政府與銀行間

2.API使用模型–合作夥伴

https://blog.moneybook.com.tw/2019/10/16/%E9%A6%96%E5%AE%B6%E8%88%8720%E5%AE%B6%E9%8A%80%E8

%A1%8C%E4%B8%B2%E6%8E%A5api%E7%9A%84%E9%87%91%E8%9E%8D%E5%B8%B3%E5%8B%99%E6%95

%B4%E5%90%88%E6%9C%8D%E5%8B%99%E8%AA%95%E7%94%9F%EF%BC%8C%E3%80%8Cmoneyb/

| © 2018 F5 NETWORKS 23

| © 2018 F5 NETWORKS 24

• Public Use-Cases − 地圖, 交通, 天氣, 日曆….

− 社交媒體

− 政府的開放資料

3.API使用模型–公開/Web

| © 2018 F5 NETWORKS 25

API面臨的威脅

| © 2018 F5 NETWORKS 26

API安全挑戰之非授權訪問

美國郵政

房地產估價

| © 2018 F5 NETWORKS 27

安全問題:DDoS攻擊

| © 2018 F5 NETWORKS 28

API安全挑戰之內容檢驗

CVE-2019-1002100 高危

擁有補丁許可權的惡意用戶通過發送特定超長的“json-patch”補丁請求

| © 2018 F5 NETWORKS 29

API 威脅 不斷變化的動態應用安全

漏洞與利用 自動化攻擊 非授權訪問

憑證和數據竊取 視覺化 DDoS攻擊

| © 2018 F5 NETWORKS 30

API 安全與管理 – Gartner/IDC觀點

| © 2018 F5 NETWORKS 31 © F5 Networks, Inc 31

到2022年,API濫用將成為最常見的攻擊媒介,從而導致企業Web應用數據外洩。

| © 2018 F5 NETWORKS 32 © F5 Networks, Inc 32

API Gateway 和安全工具

* Gartner: Choosing the Right API Gateway to Protect Your APIs and Microservices

到 2022 年,API 濫用將成為最常見的攻擊媒介,

導致企業 Web 應用程式發生數據洩露。

| © 2018 F5 NETWORKS 33

傳輸安全(TLS/SSL)

自動攻擊防護&機器人檢測

API用戶端認證

內容檢查

傳輸安全

配額管理&

流量控制

敏感資訊標記

XML和JASON的內容檢查

存取控制

管理整合

警報&視覺化 審計日誌

用戶端

API服務

來源:Gartner2017API安全防護架構設計

構建最完整有效的API安全防護架構

| © 2018 F5 NETWORKS 34

簡化和統一API管理

超過半數的API優先戰略的企業面臨使用多種 API管理工具的調整。企業應部署一致性的API 管理系統與工具,並統一和簡化API部署架構。

IDC關於成功實施API戰略的關鍵建議

視覺化分析

企業應充分重視視覺化分析是API運行成功的

關鍵保障。企業應將視覺化分析作為API戰略的

重要Roadmap

理解並解決API管理的複雜性

API運維具有高度複雜性,應從企業高度認識這

一挑戰。確保構建健壯穩定的API管控策略。

API性能是制勝的關鍵

高性能API幫助企業在快速多變的業務中保持競爭

力,並提供最好的用戶體驗。企業或組織需要圍繞

API性能方面構建強健的流量管理和負載均衡環境

在任何時候,任何地方確保API安全

安全需作為API建設的第一重要考慮要素。企業應

確保通過有效機制保護API,這包含基於架構、功能

並結合可觀測、監控等多種手段。

構建面向未來的架構

微服務和容器環境下管理和跟蹤API依賴關係需求將

會持續增長。企業應著眼長遠構建前瞻性的雲原生 架構。

| © 2018 F5 NETWORKS 35

API數位經濟的資安框架

| © 2018 F5 NETWORKS 36

Gartner API架構模型

| © 2018 F5 NETWORKS 37

API數位經濟的資安框架

API A

API B

API C

D

E

F G

H API安全閘道 • TLS 卸載 • 認證 • WAF/DDOS 安全防護 • 南北向負載均衡

API管理閘道 • API管理 • 服務發現 • HTTP請求路由 • 東西向負載均衡

AWAF

APM

Swagger(OpenAPI)

OAuth

OIDC

JWT

OWASP Top 10 for API

Rate Limiting (TPS)

JSON/XML Schema Validation

DDOS protection

BOT Protection

Datasafe

CONFIGURE

MONITOR

TUNE

NGINX 控制器

任何環境

• 輕量

• 易部署

• 易於消費

• 雲原生

DevOps/AppDev

運維

NetOps/SecOps

運維

不同角色的人管理不同的解決方案

| © 2018 F5 NETWORKS 38 © F5 Networks, Inc 38

API安全閘道

API

API

Protection

Authentication

• TLS Termination

• API OWASP

• Bot protection

• DDoS protection

• Authentication & Authorization with Oauth 2.0

Attackers

Legitimate users

{“filter”:”|cat /etc/password“,”order”:”asc”,”limit”:50}

{“filter”:”user=ewen“,”order”:”asc”,”limit”:50}

API數位經濟的資安框架

API管理閘道

| © 2018 F5 NETWORKS 39

下一代整合架構 : Kubernetes/微服務

Microservices-oriented application

….

Node 1

Node N

• Ingress Control with Service Discovery

• Sidecar proxy • Application Proxy • Mutual TLS • East/West traffic

inspection • JWT Validation • Response Caching

• API Traffic Steering

• TLS Optimization

• Resiliency API Architecture

• API Protection

• OAuth2.0

• Bot Defense

• Threat Protection

• REST Payload Validation

• Sensitive Data Blocking

Ingress control

E/W control東西向

Microgateway微閘道

N/S control 南北向

| © 2018 F5 NETWORKS 40

API 安全閘道

| © 2018 F5 NETWORKS 41

AWAF

APM CONFIGURE

MONITOR

TUNE

NGINX Controller

API安全閘道

API傳輸安全

API存取控制

API內容防護

API Bot&DDoS 防護

API安全視覺化

API管理閘道

認證、授權

速率限制

橫向擴展

服務發現

請求路由

| © 2018 F5 NETWORKS 42 © F5 Networks, Inc 42

認證授權

識別校驗

API

API防護策略

傳輸安全

攻擊防護

訪問可視

APP

Geo Protection / IPI

Oauth 2.0 / JWT / OIDC

Programmability

Credential Stuffing protection

BOT Protection

SDK for Mobile

OWASP 10

Protocol/Scheme Compliance

DDOS protection

Encryption and TLS fingerprinting

| © 2018 F5 NETWORKS 43 © F5 Networks, Inc 43

Traditional WAF:

SSL/TLS 深入檢測 SSL/TLS 深入檢測

惡意攻擊語法 惡意攻擊語法

OWASP Top 10 OWASP Top 10

Advanced WAF:

自動化機器人防護

動態資料混淆加密防護

API 攻擊防護

SSL/TLS

OWASP Top 10

Advanced WAF 領先資安偵測防護技術

惡意攻擊語法

| © 2018 F5 NETWORKS 44

API 傳輸安全 API加密傳輸

提供全面加密方式

支援國際通用演算法

SSL視覺化編排

針對不同加密協定,根據動態

服務鏈進行視覺化編排

高性能的SSL處理能力

不同平臺支持從2100 - 128萬 tps處理

能力

防禦中間人攻擊

支持HSTS,可以有效防禦PC端或

移動端出現的中間人攻擊

SSL卸載

| © 2018 F5 NETWORKS 44

F5 ADC SSL/SSLO

Anti-Bot Mobile SDK

Mobile

Users

Attackers

Bots

USERNAME

APIs

API

Gateway

| © 2018 F5 NETWORKS 45

API 存取控制 API認證、授權

實現統一的認證和授權

支持OAuth, OpenID, JWT等授權,

對API訪問源,訪問方式等控制

速率與大小限制

根據不同應用,不同存取權限等

進行API介面速率限制和API介面

資料大小限制

零信任安全架構

對所有API介面內、外部訪問者進行

可信驗證

提供完整的存取控制日誌

即時記錄所有API介面訪問的日誌,

並即時對接日誌平臺或SIEM分析平

APM

| © 2018 F5 NETWORKS 45

Users

IDaaS Provider

Directory Services

APM

SAML SP Kerberos/ Header Based

Reverse Proxy

SAML Redirect

On Prem

Continuous Posture Assessment

Mobile

MAC & MS Windows

VPN

VPN

| © 2018 F5 NETWORKS 46

API 內容安全 API協定、內容的校驗與防護

全面協議校驗

對XML, JSON, GWT等協議進行校

驗,如校驗每個API請求的Method

快捷導入

支持Swagger和JSON schema導

入,API安全與API Server快捷整

合,無縫防護

精細化內容檢測

對各種API協定的內容進行精細化內

容檢測,如檢查簽名特徵,元字

元,參數,長度等

AWAF

| © 2018 F5 NETWORKS 46

Anti-Bot Mobile SDK

Mobile

Users

Attackers

Bots

USERNAME

APIs

API

Gateway F5

Advanced WAF

| © 2018 F5 NETWORKS 47

API Bot及DDoS攻擊 基於API的自動化攻擊防護

暴力破解

策略自動化構建,無須人工幹

預,對AJAX / JSON登陸表單進行

學習與防護

Bot攻擊

通過驗證碼挑戰,Web端

JavaScript主動挑戰,移動App SDK

等來防禦Bot攻擊

DDoS攻擊

通過TPS限速來緩解基於API的DDoS

攻擊,通過Behavioral DDoS防禦手段

對API請求進行機器學習分析,更加

高效的防禦基於API的DDoS攻擊

| © 2018 F5 NETWORKS 47

Anti-Bot Mobile SDK

Mobile

Users

Attackers

Bots

USERNAME

APIs

API

Gateway F5 Advanced WAF

| © 2018 F5 NETWORKS 48

API 安全閘道功能:視覺化

| © 2018 F5 NETWORKS 49

API 視覺化 視覺化呈現API安全態勢

API整體態勢評估

對API服務狀態進行整體評估與展

多維度分析

基於API服務類型,訪問類型,使

用者區域,安全事件類型等眾多

維度進行分析

流量和攻擊事件即時展現

對所有API服務的訪問情況,安全情

況即時分析、統計和展現

BIG-IQ&HSL大資料引擎

| © 2018 F5 NETWORKS 49

| © 2018 F5 NETWORKS 50

巨量輸出

Kafka

Kafka

Logstash

Logstash

Elasticsearch

Elasticsearch

Elasticsearch

Elasticsearch

Kibana

Kibana

高度定製

可視化

原始資料

完整全量效能/安全分析

即時呈現

彈性擷取

Kafka

Kafka

Elasticsearch

| © 2018 F5 NETWORKS 51

API 管理閘道 : 東西向

| © 2018 F5 NETWORKS 52

AWAF

APM CONFIGURE

MONITOR

TUNE

NGINX Controller (API Module)

API安全閘道

API傳輸安全

API存取控制

API內容防護

API Bot&DDoS 防護

API安全視覺化

API管理閘道

認證、授權

速率限制

橫向擴展

服務發現

請求路由

| © 2018 F5 NETWORKS 53

Kubernetes 概述

• 跨電腦集群運行容器化應用程式 • 通過重新開機失敗的工作負載來增加應用程式的彈性 • 管理應用程式-擴展,輪流升級 • 連接應用程式——內部服務發現和負載平衡 • 支援運行有狀態的應用程式 • 和更多的……

• 基於穀歌的Borg • 2014年開源,現由CNCF維護 • 領先的容器編制技術 • 最大的開源社區之一,來自數千個組織的貢獻 • 所有主要的雲提供商(AWS、Azure和GCP)都提供一

個託管的Kubernetes解決方案 • 充滿活力的服務提供者和供應商生態系統

MORE INFORMATION AT NGINX.COM

Kubernetes Ingress Controller

• Kubernetes只提供入口資源,而不是負載等化器

• Ingress Controller(IC) -應用進入規則到特定負載

的軟體

• 用於軟體/硬體/雲負載平衡器的幾種IC實現

• 通常將負載等化器和IC軟體都稱為IC

Kubernetes API

Ingress Controller

Load Balancer

Watches Ingress resources

Configures

| © 2018 F5 NETWORKS 55

BENEFITS:

• 在Kubernetes和OpenShift環境中獲得更大的靈活性

• 加速跨Pod部署

• 確保部署的一致性和可靠性

• 在擴展時保持應用程式的性能

• 縮小差距,調整開發和專案事務處的優先順序

Kubernetes Ingress Controller

| © 2018 F5 NETWORKS 56

東西向管理與安全

| © 2018 F5 NETWORKS 57

東西向應用安全

適應微服務架構

搭配CI/CD

NGINX App Protect

| © 2018 F5 NETWORKS 58

安全即為程式碼Security as Code

從一開始就整合應用安全

自動設置安全防護,加速 DevOps 工作流程

使用 DevOps 使用 SecOps 管理原則

DEV SEC OPS

| © 2018 F5 NETWORKS 59

三種部署模式

| © 2018 F5 NETWORKS 60

1. 現況強化 F5 API 安全閘道GW

D

D

D

E

E

E

應用路由與高可用

TLS卸載

機器人防禦

DDoS 保護

Oauth2,OIDC, JWT

JSON檢查

資訊防洩露

應用混淆處理

BIGIP WAF

APM + AWAF, BIG-IQ

OpenAPI規範, Swagger導入,

簡化API資源維護

安全視覺化面板: 結合BIG-IQ,AVR,HSL 實現API視覺化洞察

RBAC能力適應

| © 2018 F5 NETWORKS 61

2. Cloud Native(容器/K8S) NGINX API管理閘道

D

D

D

E

E

E

JWT,ACL

負載均衡

限流、熔斷

路由,配額,高性能

安全

REST API

微閘道 API GW

JWT,ACL

負載均衡

限流、熔斷

路由,配額

安全

統一控制

API視覺化洞察

API門戶

| © 2018 F5 NETWORKS 62

簡化複雜性

統一API管理

企業資料中台

API認證

API安全

邊界安全

平臺級 API閘道

現有環境API GW

現代應用,微服務,雲原生API GW

關注API安全

關注API性能

關注API視覺化洞察

兼顧傳統與未來的架構

| © 2018 F5 NETWORKS 63

3. 下一代整合架構

D

D

D

E

E

E

TLS卸載

機器人防禦

DDoS 保護

Oauth2,OIDC, JWT

JSON檢查

資訊防洩露

BIGIP WAF

邊界安全

JWT,ACL

負載均衡

限流、熔斷

路由,配額

安全

SSO JWT Bearer 微閘道 API GW

JWT,ACL

負載均衡

限流、熔斷

路由,配額

安全

統一控制

API視覺化洞察

API門戶

| © 2018 F5 NETWORKS 64

CONFIDENTIAL

| © 2018 F5 NETWORKS 65

微服務安全防護方案總結

完整的平臺解決方案,100%覆蓋Gartner提出的安全能力矩陣

API安全閘道

API傳輸安全

API存取控制

API內容防護

API Bot&DDoS 防護

API安全視覺化

API管理閘道

認證、授權

速率限制

橫向擴展

服務發現

請求路由