iT邦幫忙

2026 iThome 鐵人賽

0

DAY37 SAST 靜態應用程式安全測試

  • 一. SAST是什麼?
  • 二. 白箱測試 White Box Testing
  • 三. 與DAY36的安全軟體開發生命週期SDLC連在一起

一. SAST是什麼?

其中一個方法就是SAST

SAST (Static Application Security Testing)
靜態應用程式安全測試

Static 靜態
不用等完整系統實際跑起來,就能先分析程式

SAST是一個能夠直接分析應用程式原始碼、位元組碼或二進位碼來找出安全漏洞的測試方法

如果問題不出在程式碼那SAST就可能找不到漏洞
例如:

  • 系統部署時把敏感檔案公開

優點:

  1. 能在開發早期發現問題,降低修復成本
  2. 可以精確指出有問題的程式碼行數和位置
  3. 容易整合到CI/CD流程中實現自動化掃描

可偵測的漏洞有:

  • SQL Injection
  • Cross-Site Scripting (XSS)
  • Buffer Overflow 緩衝區溢位
  • 硬編碼的密碼或金鑰
  • 不安全的加密用法等

缺點:

  • 誤報率通常較高,需要人工複審
  • 對於不同的程式語言需要不同的分析引擎

二. 白箱測試 White Box Testing

測試者可以看到程式內部,就像箱子是透明的
可以看到:

  • 原始程式碼
  • 內部邏輯
  • 程式結構

SAST就屬於一種白箱測試,它直接讀取原始碼來分析

能夠查看完整的原始碼,從內部進行分析

Source Code Scan 原始碼掃描也屬於白箱測試

三. 與DAY36的安全軟體開發生命週期SDLC連在一起

在SDLC中有提到
安全問題越早被發現越好
所以

  1. 在開發階段加入SAST
  2. 來分析原始程式碼
  3. 找出可能的安全弱點
  4. 在開發階段提早做修正

上一篇
DAY36 安全軟體開發生命週期
下一篇
DAY38 DAST 動態應用程式安全測試
系列文
格鬥教練想轉職學資安是否搞錯了什麼(自學第一步)IPAS初級筆記 共 37 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言