iT邦幫忙

2026 iThome 鐵人賽

0

DAY45 沙箱與沙箱逃避

  • 一. 什麼是沙箱?
  • 二. 沙箱可能觀察到哪些行為?
    • 2.1 檔案活動
    • 2.2 程序活動
    • 2.3 登錄檔活動
    • 2.4 網路活動
  • 三. 沙箱逃避
    • 3.1 常見的逃避方式一 延遲執行
    • 3.2 常見逃避方式二 使用者互動
    • 3.3 常見逃避方法三 環境偵測
  • 四. 相關比對表格
    • 4.1 逃避與逃逸
    • 4.2 動態與靜態分析

DAY44 中的惡意程式要如何安全的跑起來觀察

一. 什麼是沙箱?

Sandbox 沙箱
一個被隔離、受限制的測試環境
用來安全的執行可疑程式,並觀察行為

假設今天下載了一個.exe檔

但我不確定它是不是正常的程式

這時如果直接在電腦上執行

電腦就有被感染的風險

所以就可以改成先把這程式放進沙箱中

觀察它做了什麼事

確定安全後再移植到正常電腦中

沙箱Sandbox = 隔離執行可疑程式+觀察行為
屬於:
動態分析 Dynamic Analysis
程式真正跑起來,再觀察行為

二. 沙箱可能觀察到哪些行為?

假設一個可疑程式執行後:

2.1 檔案活動

例如:

  1. 建立新檔
  2. 修改系統檔
  3. 刪除檔案
  4. 加密大量文件 (勒索軟體)

2.2 程序活動

執行了A程式後

自動啟動B程式

父程序->子程序
的關係可以去分析

2.3 登錄檔活動

觀察登錄檔是否被修改
例如:

修改某些設定,讓電腦重新開機後自動啟動惡意程序

DAY34提到的持久化就是屬於這個

2.4 網路活動

例如程式執行後:
突然連接到某個未知的IP

並開始下載檔案/傳送資料等等


三. 沙箱逃避

Sandbox Evasion 沙箱逃避
惡意程式會嘗試判斷自己是不是正在沙箱或自動分析環境中執行
故意不表現真正的惡意行為,以躲避偵測

簡單來說就是它在裝乖,因為它知道有人在看

假設有一個惡意程式它的功能是:

  • 偷密碼
  • 下載後門
  • 加密檔案

如果它在沙箱環境中直接釋出這些惡意功能

分析就很明顯知道它是惡意程式

所以惡意程式可能會:

先檢查這個環境
只要像是沙箱
它就不做壞事,讓分析結果是正常的

3.1 常見的逃避方式一 延遲執行

假設有一個自動沙箱

它會觀察程式10分鐘

那惡意程式如果設計成

啟動後等待1小時才會執行惡意行為

那沙箱觀察10分鐘後可能就會覺得

什麼事也沒發生
判定沒有惡意行為
分析結束

時間延遲
躲過短時間的自動分析

3.2 常見逃避方式二 使用者互動

惡意程式可能設計成

必須有真人進行電腦操作才會啟動

例如:

  • 滑鼠移動
  • 滑鼠點擊
  • 鍵盤輸入

IPAS 115-1 Q32
某惡意程式執行初期會延遲數十分鐘
並要求使用者進行滑鼠、鍵盤互動
條件沒滿足就結束不執行
最主要是削弱哪個防護機制?
D 自動化沙箱動態分析

這題在詢問的就是沙箱逃避

3.3 常見逃避方法三 環境偵測

有些惡意程式會檢查

這台機器像不像分析環境

例如:

  • 系統的硬體特徵
  • 是否存在虛擬化的跡象
  • 執行中的分析工具
  • 系統的使用時間
  • 使用者的活動痕跡

如果發現有可能是分析環境

就停止不執行惡意行為


四. 相關比對表格

4.1 逃避與逃逸

名稱 沙箱逃避 沙箱逃逸
英文 Evasion Escape
意思差異 躲避分析/偵測 程式突破隔離邊界,逃到主機或其他環境

4.2 動態與靜態分析

名稱 動態分析 靜態分析
英文 Dynamic Static
用途 程式跑起來,看它實際行為 不執行可疑程式,直接分析它

而
沙箱 屬於動態分析
特徵碼掃描 屬於靜態分析

發現可疑程式可以怎麼做?

假設今天遇到一個可疑程式:

  1. 特徵碼掃描 (靜態分析)
  2. 自動沙箱分析 (動態分析)
  3. 觀察惡意程式的行為

上一篇
DAY44 惡意程式分類
系列文
格鬥教練想轉職學資安是否搞錯了什麼(自學第一步)IPAS初級筆記 共 44 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言