<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    無文件惡意軟件怎么取證


    發現錯別字 2年前 提問
    回答
    1
    瀏覽
    428
    請勿發布不友善或者負能量的內容。與人為善,比聰明更重要!
    風險管理(專業級)RM/PL 高級信息系統項目管理師
    最佳答案

    使用命令行進行攻擊取證:

    bindshell啟動后會立即綁定到TCP 31337端口,執行反彈shell操作,開始發送盜取的敏感數據等。可以先使用netstat和ps命令收集攻擊信息。

    通過netstat命令,我們注意到了一個反常的tcp端口,該端口的進程名也很奇怪:

    netstat -nalp

    圖片

    如上圖所示,該進程的PID為14667。下一步通過PS命令查看該進程一些具體信息:

    ps -auxw

    圖片

    我們在進程列表中,看到它的進程名為[kwerker/0:sandfly],這將幫助它隱藏在具有相似名稱的合法進程中。您可以在上面的列表中看到,如果不使用sandfly標識符進行命名,真的很難發現它。

    現在已經找到了可疑進程,下一步就要想辦法獲取該進程的具體信息。由于接下來大多數操作將在/proc目錄中進行,先轉到/proc/目錄,其中PID是可疑進程ID。可以使用以下命令進入該目錄:

    cd / proc / 14667

    在進程目錄中,可以使用ls命令列出文件夾中的內容。Linux內核將實時構建目錄,顯示許多有價值的信息。

    ls -al

    圖片

    通過簡單的ls命令我們可以獲知:1.進程啟動時的日期戳。2.當前的工作目錄(用戶最有可能在/root下啟動進程)。3.EXE鏈接指向一個已刪除的二進制文件的位置。

    最重要的一點是,在Linux上,除了少數用例外,具有deleted標記的二進制文件的進程通常是惡意的。而且,該進程不僅被刪除,還指向一個非常不尋常的位置了/memfd:這是攻擊所使用的內存文件描述符。

    使用Comm和Cmdline參數查找隱藏的Linux進程

    在/ proc目錄下的comm和cmdline文件會記錄進程的命令名和進程的完整命令行信息,這是一個很好的切入點。

    當啟動進程時含有參數時,會在各個參數中使用字符’’進行分割。所以當使用cat命令查看cmdline文件內容時,只能打印出第一個參數,即進程名。所以可以使用cat命令查看comm文件,使用strings命令來查看cmdline文件。

    cat commstrings cmdline

    comm和cmdline文件顯示以下內容:

    圖片

    在在Linux中,大多數情況下,文件應當顯示一個基本上相互匹配的二進制名稱。例如,如果您在nginx這樣的web服務器上運行此程序,您將在這兩個文件中的某個位置看到nginx名稱。但是在這個示例中,comm文件中只是一個數字“3”,這是進程偽裝的一種手段。同樣,cmdline文件夾中的內容也很奇怪。這兩個文件并未正確記錄進程名稱。

    通過進程映射來驗證二進制名稱

    /proc/[pid]/maps文件可以顯示進程的內存區域映射信息。在這里也可以找到二進制名稱,以及運行時正在使用的其他庫文件。通常,該文件的第一部分包含對正在運行的二進制文件的引用(例如/usr/bin/vi)。但是在文件中,我們再一次看到了對/memfd: (deleted)的奇怪引用。

    cat maps

    圖片

    調查Linux進程環境

    很多人可能會忽略在Linux上,當你啟動一個進程時,它通常會附加一系列環境變量。在大多數情況下,由用戶啟動的任何進程都會出現在這里。我們試圖通過查看/proc//environ文件夾獲取進程信息。

    同樣,出于格式化的原因,我們將使用strings命令,這樣更易于閱讀。strings environ

    圖片

    惡意軟件是通過SSH傳入的,縱使攻擊者設法清理的有關IP地址的日志,但是啟動進程時還是會留下蛛絲馬跡。

    抓取二進制文件

    即便二進制文件沒有在磁盤上存在,仍可以非常便捷的恢復注入的二進制文件。

    cp /proc//exe /destination_dir/filename在本示例中,命令如下:cp exe /tmp/malware.recovered

    該文件被恢復到/tmp/malware.recovered下。可以像往常一樣對惡意樣本進行分析,還可以為二進制文件生成hash值:sha1sum exesha1sum /tmp/malware.recovered

    圖片

    收集到的信息

    到目前為止,我們收集到了如下信息:

    1.可疑的可執行文件的路徑。

    2.進程使用的端口號。

    3.進程名。

    4.comm和cmdline文件中沒有引用相同的命令名。

    5.comm文件內容只有一個字符長。

    6.進程當前的工作目錄位于/ root下。

    7.進程試圖鏈接已被刪除的/memfd位置,而不是合法的二進制路徑。

    8.進程映射文件顯示相同的已刪除位置。

    9.惡意軟件是通過SSH傳入的

    回答所涉及的環境:聯想天逸510S、Windows 10。

    2年前 / 評論
    回答數量: 1
    亚洲 欧美 自拍 唯美 另类