iT邦幫忙

2024 iThome 鐵人賽

DAY 18
0
Security

腳本小子的滲透測試學習筆記系列 第 18

第18天:CEH第六章系統入侵(清除日誌)

  • 分享至 

  • xImage
  •  

清除日誌 (Clearing Logs)

在上一節中,我們探討了攻擊者如何使用各種隱寫術技術、NTFS 資料流及其他技術來在目標電腦上隱藏惡意檔案,並保持對目標系統的持續存取權。一旦攻擊者成功完成了這些惡意操作,他們接下來的步驟通常是移除系統中所有可能留下的活動痕跡或追蹤紀錄,以防止被發現。這個過程稱為清除日誌,目的是掩蓋攻擊者的行動並避免被防禦系統或管理員發現。

為何攻擊者會清除日誌?

  1. 隱藏活動痕跡:清除日誌可以移除所有關於攻擊行為的痕跡,例如惡意指令執行、檔案修改、系統異常行為等,讓系統管理員無法追查攻擊源頭。
  2. 逃避防禦系統:大部分的防禦系統(如入侵偵測系統、行為監控系統等)都依賴日誌記錄來偵測可疑行為。透過清除日誌,攻擊者可以降低被偵測的風險。
  3. 防止取證分析:如果攻擊者希望在未來繼續滲透或進行持久性攻擊,清除日誌可以讓他們的行為不易被取證分析工具偵測,減少被發現的可能性。

常見的清除日誌技術

  1. 刪除系統事件日誌 (Event Logs):Windows 系統中使用 wevtutilClear-EventLog 命令來清除系統的安全性日誌、應用程式日誌及系統日誌。

    • 刪除特定日誌檔案:使用此命令可以分別刪除 Windows 安全性日誌、應用程式日誌及系統日誌。

      wevtutil cl Security
      wevtutil cl Application
      wevtutil cl System
      
  2. 手動刪除 NTFS 日誌檔:在 Windows 系統中,攻擊者可能會手動刪除或修改 NTFS 資料流中的日誌檔案,這些日誌通常記錄著系統檔案的變更及存取資訊。

  3. 清空 shell 歷史紀錄:在 Linux 系統中,攻擊者可能會刪除或覆蓋 ~/.bash_history 或其他 shell 紀錄檔案。

    • 清除歷史紀錄:或直接刪除紀錄檔案:

      history -c
      
      rm ~/.bash_history
      
  4. 刪除或修改第三方日誌文件:如 Web 伺服器、資料庫系統、應用程式日誌等,攻擊者會搜尋系統中的特定日誌文件,並刪除或修改其中的紀錄。

  5. 使用清除工具:攻擊者可能會使用專門的日誌清除工具來自動化這些操作。例如 MetasploitMeterpreter 中內建的 clearev 指令來清除日誌。

    • 使用 clearev 清除 Windows 日誌:此命令將清除 Windows 的所有事件日誌(安全性、系統、應用程式)。

      meterpreter > clearev
      

防範清除日誌的策略

  1. 定期備份日誌:將系統日誌及應用程式日誌備份至遠端伺服器,防止日誌被本地刪除後無法恢復。
  2. 啟用日誌完整性檢查:使用文件或日誌完整性檢查工具(如 Tripwire)來監控日誌變更。
  3. 設定檔案變更監控:使用變更監控系統(如 Windows 的文件稽核)來監控日誌檔案的存取及刪除行為。
  4. 限制對日誌檔案的存取權限:僅允許特定角色(如管理員)存取日誌檔案,並設定嚴格的存取控制列表(ACL)。

隱藏痕跡 (Covering Tracks)

當入侵者成功獲得系統管理員權限後,他們會試圖隱藏他們的行為足跡,以避免被偵測或發現。隱藏痕跡的目的主要是讓攻擊行為不易被管理員或防禦系統發現,從而延長攻擊者在系統中的存在時間。

攻擊者隱藏行為痕跡的常用技術

  1. 停用稽核功能 (Disable Auditing)
    • 停用系統稽核功能可以防止系統日誌記錄攻擊者的行為。攻擊者通常會先停用稽核功能,再進行敏感操作,如刪除或修改重要系統文件。
  2. 清除日誌 (Clearing Logs)
    • 攻擊者會刪除系統或應用程式的日誌紀錄,來移除所有可能被偵測到的操作紀錄。這可以防止管理員發現系統異常行為或試圖進行取證分析時找到任何證據。
  3. 操縱日誌 (Manipulating Logs)
    • 除了刪除日誌外,攻擊者有時候會更進一步地修改日誌內容,將其行為更改為看似合法的操作或覆蓋現有的紀錄,以進一步隱藏其行為痕跡。
  4. 隱藏網路及作業系統痕跡 (Covering Tracks on the Network/OS)
    • 攻擊者會隱藏或修改與網路連線有關的紀錄,如移除連接紀錄、變更 IP 位址或 MAC 位址,甚至使用加密通道來進行隱蔽的連線。
  5. 刪除檔案/隱藏物件 (Deleting Files / Hiding Artifacts)
    • 攻擊者可能會刪除在系統中留下的惡意檔案(如木馬、後門程式等),或者利用隱寫術技術、隱藏資料流(如 NTFS 資料流)等方式來隱藏惡意檔案,使其不易被發現。
  6. 停用 Windows 功能 (Disabling Windows Functionality)
    • 攻擊者會停用一些 Windows 特性或服務(如 Windows Defender、Windows Firewall)來降低偵測風險。他們也可能會禁用特定帳戶的使用者存取控制(UAC),以提升權限及維持持久存取權。

手動清除事件日誌 (Manually Clearing Event Logs)

手動清除日誌是攻擊者為了掩蓋其行為痕跡而採取的一種策略。透過刪除或修改日誌,攻擊者可以隱藏其進入系統後的操作,讓管理者無法從日誌中發現異常行為。以下是針對 Windows 和 Linux 系統中手動清除事件日誌的步驟說明:

在 Windows 系統中清除事件日誌 (For Windows)

  1. 步驟 1
    • 開啟 開始選單 (Start),選擇 控制台 (Control Panel)
  2. 步驟 2
    • 導覽至 系統與安全 (System and Security) 選項,接著點選 Windows 工具 (Windows Tools)
  3. 步驟 3
    • 雙擊 事件檢視器 (Event Viewer) 開啟事件檢視工具。
  4. 步驟 4
    • 找到所有在系統入侵過程中產生的事件日誌,並刪除它們。
  5. 注意
    • 清除日誌可能會觸發某些防禦系統的警告,因此攻擊者通常會嘗試停用防禦機制後再進行清除。

在 Linux 系統中清除事件日誌 (For Linux)

  1. 步驟 1
    • 導覽至 /var/log/ 目錄。這是 Linux 系統中儲存所有日誌文件的路徑。
  2. 步驟 2
    • 使用文字編輯器(例如 nanovim)開啟包含日誌訊息的純文字文件,如 /var/log/<filename>.log
  3. 步驟 3
    • 清空或刪除在入侵過程中產生的所有日誌條目。
  4. 建議
    • 為了確保不留下任何痕跡,攻擊者可能會先檢查是否有其他備份日誌存在,並進一步刪除或修改相關紀錄。

上一篇
第17天:CEH第六章系統入侵(持續存取)
下一篇
第19天: HTB Lame
系列文
腳本小子的滲透測試學習筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言