iT邦幫忙

2025 iThome 鐵人賽

DAY 3
0
自我挑戰組

30天的資訊安全讀書筆記系列 第 3

Side Blue - 惡意程式行為與常見AP

  • 分享至 

  • xImage
  •  

Keylogger:

  • SetWindowsHookEx:安裝 hook 來攔截系統或視窗事件
  • GetAsyncKeyState:取得某個虛擬鍵的當前狀態。
  • GetKeyboardState:取得所有虛擬鍵的狀態。
  • GetKeyNameText:取得按下的鍵的名稱。

Downloader:

  • URLDownloadToFile:從網路下載檔案並儲存至本地。
  • WinHttpOpen:初始化 WinHTTP 連線。
  • WinHttpConnect:使用 WinHTTP 與遠端伺服器建立連線。
  • WinHttpOpenRequest:建立 HTTP 請求並與伺服器通信。

Command and Control:

  • InternetOpen:初始化與網際網路連線的工作階段。
  • InternetOpenUrl:開啟指定的 URL 以進行下載。
  • HttpOpenRequest:建立 HTTP 請求。
  • HttpSendRequest:送出 HTTP 請求,並接收遠端命令或資料。

Data Exfiltration:

  • InternetReadFile:讀取網路資源內容。
  • FtpPutFile:將檔案上傳到 FTP 伺服器。
  • CreateFile:建立或開啟檔案或裝置。
  • WriteFile:將資料寫入檔案或裝置,可用於儲存欲外洩的資料。
  • GetClipboardData:取得剪貼簿上的資料。

Dropper:

  • CreateProcess:建立新程序並執行惡意程式。
  • VirtualAlloc:配置記憶體空間,用來存放惡意程式碼。
  • WriteProcessMemory:將惡意程式碼寫入記憶體中的其他程序。

API hook - 透過抓API來攔截或修改系統行為,規避防毒軟體偵測:

  • GetProcAddress:取得 DLL 中函式的位址,供後續勾取使用。
  • LoadLibrary:載入 DLL 模組,注入額外惡意程式碼。
  • SetWindowsHookEx:安裝 hook 來攔截系統或視窗事件。

Anti-Debugging / VM Detection:

  • IsDebuggerPresent:偵測是否正在被除錯。
  • CheckRemoteDebuggerPresent:檢查是否有遠端除錯器。
  • NtQueryInformationProcess:查詢進程資訊,偵測除錯環境。
  • GetTickCount:取得系統開機以來的毫秒數,用來偵測虛擬機延遲行為。
  • GetModuleHandle:檢查特定模組是否載入,可用來偵測分析工具。
  • GetSystemMetrics:取得系統硬體/軟體資訊,用來識別虛擬機。

Process Hollowing:

  1. 建立一個合法但暫停執行的process
  2. 清空原本的程式碼區段
  3. 注入惡意程式碼
  4. 重新啟動process,此時進程外觀看起來是合法的,但實際上執行的是惡意程式碼。

API :

  • CreateProcess(含 CREATE_SUSPENDED):建立暫停的進程
  • ZwUnmapViewOfSection 或 NtUnmapViewOfSection:清空原始程式碼
  • VirtualAllocEx:配置記憶體
  • WriteProcessMemory:寫入惡意程式碼
  • SetThreadContext:設定執行點
  • ResumeThread:執行程式

上一篇
Side Blue - PE
系列文
30天的資訊安全讀書筆記3
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言