iT邦幫忙

2022 iThome 鐵人賽

DAY 22
1
Security

建構安全軟體開發系列 第 22

建構安全軟體開發 EP 22

  • 分享至 

  • xImage
  •  

Hello, 各位 iT 邦幫忙 的粉絲們大家好~~~

本篇是 建構安全軟體開發 系列文的 EP22。


Architecture Disscuss Part2

Embedded Software

注意 Embedded Sofware (嵌入式軟體)通常不是指 firmware 這個部分,在這裡的定義會比較偏向上層應用的討論。

其核心精神是對應特定的應用目的而設計的軟體,並且依照其應用目的的設計通常輸入與控制的方式會受到限制,雖然可降低其安全風險的考慮,但其安全威脅的重要性也依然要慎重考量。

並其設計應考慮其運作如何達成安全性更新等問題。

Cloud Architectures

從雲端運算概念出現一段時間後,大約在 2011 年底 2012 年初時 NIST 所發佈的 SP800-145 中就整理雲端運算有三大服務模式與四大部屬模型:

Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. This cloud model is composed of five essential characteristics, three service models, and four deployment models.

開發者們對於雲端架構的服務模式概念應該不陌生:

  • Software as a Service (SaaS)
  • Platform as a Service (PaaS)
  • Infrastructure as a Service (IaaS)

而雲端運算的部屬模型則可分:

  • Private Cloud (由單一組織自行建置,例如:金融業者、高強度政府單位...等)
  • Community Cloud (由類似組織共同建置,例如:健康資訊管理業者、中低強度政府單位...等)
  • Hybrid Cloud (應用部分運作在公有雲部分運作在私有雲)
  • Public Cloud (由雲端服務業者建置,透過網際網路連線即可取得運用)

綜合以上的運作與部屬模型來看安全議題,在雲端運算當中就會有很多不同變因,當選擇不同的雲端服務模型或不同的部屬模式就有不同,所以當應用程式運作在雲端服務當中時,要注意的兩大主要的安全風險概念來掌握:

  • Multi-tenancy (多租戶技術)
  • Third-party administration (第三方主管理權)

相關的安全責任模型對照表:

Shared Security Model

對於使用雲端運算時,對於資源管理有以下兩大觀點:

  • 運算資源:
    • CPU
    • RAM
    • GPU
  • 資料儲存方式:
    • SAN (儲存區域網路)
    • NAS (網路附接儲存)

而透過管理計畫去進行對應的授權整合、存取控制、日誌紀錄與活動監測其資源。而截至今時的觀察雲端運算的管理計畫,通常最到的風險來自於軟體漏洞的存在,在制定相關管理計畫時應特別注意。

Mobile Applications

雖然行動裝置應用的安全風險透過 OWASP Mobile Top 10 來歸納時,可分類為:

  • Improper Platform Usage
  • Insecure Data Storage
  • Insecure Communication
  • Insecure Authentication
  • Insufficient Cryptography
  • Insecure Authorization

這樣的觀點,但從整體的智慧型行動裝置的觀點來看時,現代的智慧型手機會仰賴到如下圖所示的科技技術:
Mobile Device Technology Stack
上圖擷取自 NIST 起草撰寫的 Assessing Threats to 2
3 Mobile Devices & Infrastructure
第 10 頁 Figure 1

並且其通訊方式等技術又可看到:
Mobile Device Communication Mechanisms
上圖擷取自 NIST 起草撰寫的 Assessing Threats to 2
3 Mobile Devices & Infrastructure
第 11 頁 Figure 2

所以其實在 NIST 制定的 SP800-124 : Guidelines for Managing the Security of Mobile Devices in the Enterprise 中就有描述對於安全高度威脅的有:

  • Mobility and lack of physical security (不可靠的硬體製造商)
  • Untrust devices (被劫持或 root 的裝置)
  • Untrust network (使用不安全的連線方式到網際網路)
  • Untrust applications (來源不明的應用程式)
  • Untrust content (不可靠的內容)
  • Intraction with other devices (與其他裝置溝通運作時)

由於手持式行動裝置的大小大約設計為人類可手持的大小,對於無論輸入或輸出的操作控制,都會相當依賴系統與應用的指示與設計,因此有一個良善與友好的畫面設計是可協助使用者去降低運用的安全風險。

另外,基於一些運用情境的考量,許多企業或組織逐漸地採行 BYOD (Bring your own device) 的措施,可達成組織與個人資料共用一個裝置設備,當然這也就又帶來一些新的安全風險出現,而目前大多採用 MDM、MAM 等概念來管控 BYOD。



上一篇
建構安全軟體開發 EP 21
下一篇
建構安全軟體開發 EP 23
系列文
建構安全軟體開發30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言