iT邦幫忙

2025 iThome 鐵人賽

DAY 2
0
自我挑戰組

利用生成式AI等工具來學習資安系列 第 13

Day 13:動態分析實作(在隔離環境監控程式行為)

  • 分享至 

  • xImage
  •  

今日目標(3 項)

在隔離 VM/容器執行 sample,監控並記錄系統呼叫(文件、process、network)。

使用 strace / ltrace(Linux)或 Procmon(Windows)與 tcpdump 捕捉關鍵證據(IO、出站連線、spawn process)。

彙整行為摘要、產生 IOC(檔案路徑、IP、命令)並寫出下一步偵測/緩解建議。

必做指令(在隔離 VM 執行)

建快照(重要)

# VM 或 Docker snapshot 視環境不同

strace(捕系統呼叫)

sudo strace -f -o run_strace.log ./sample.bin

ltrace(追 library 呼叫)

sudo ltrace -f -o run_ltrace.log ./sample.bin

tcpdump(捕本機網路)

sudo tcpdump -i lo -w run_day13.pcap

(在程式執行期間啟動;結束後 Ctrl+C)

若為 Windows sample,用 Procmon(GUI)錄製並過濾 process 名稱。

捕捉產生的檔案與 hash:

find /tmp -type f -mmin -10 -exec sha256sum {} \;

實作步驟(照做)

在隔離 VM 建快照。

啟 strace/ltrace 與 tcpdump(同時在不同 terminal)。

執行 sample,等待其完成或觸發可疑行為,再停止抓取。

讀取 run_strace.log、run_ltrace.log,搜尋 open, write, execve, connect, sendto, fopen, system。

用 tshark -r run_day13.pcap -T fields -e ip.src -e ip.dst -e tcp.port -Y "ip" 提取出站 IP/port,並計算檔案 hash。

撰寫行為摘要(最多 10 行):列出發現的檔案寫入、外連 IP、執行命令與建議的 IOC。

交付物(貼給我檢查)

run_strace.log 中顯示的 20–40 行重點片段(包含 execve/open/connect)。

tshark 或 tcpdump 摘要:出站 IP 與 port 列表。

一頁行為摘要(5–10 行)與至少 3 個 IOC(格式:type:value,如 ip:1.2.3.4、file:/tmp/mal、cmd:system('...'))以及 2 條偵測建議。

注意與安全

嚴禁在非隔離環境執行未知 sample。

捕獲的 pcap 與 logs 含敏感資料,請安全保存或加密。

若 sample 嘗試對外連線,可考慮用 socat / netcat 模擬 C2 回應,或先使用 iptables 阻斷實際外網。

今天完成 Day13:在隔離 VM 用 strace、ltrace 與 tcpdump 進行動態分析,成功捕獲到程式的檔案寫入、外連嘗試與 exec 呼叫。透過行為紀錄我整理出初步 IOC(出站 IP、寫入路徑、命令字串),並擬定偵測規則與下一步的 C2 模擬計畫。動態分析讓靜態發現的疑點得到驗證,收穫豐富。


上一篇
Day 12:靜態分析實作(對 single binary 做靜態分析)
下一篇
Day 14:自動化腳本入門 — 用 Python 進行簡易安全檢測
系列文
利用生成式AI等工具來學習資安30
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言