NSA 攻擊工具事件分析報告 臺灣學術網路危機處理中心團隊 (TACERT) 製 2019 年 6 月
一 事件簡介 1. 在 2019/3 月底本中心發現在學術網路內從 2019/3 起陸續有來自 http:// 47[.]106[.]217[.]147/svchosa.exe 與 http://m9f[.]oss-cn-beijing[.]aliyuncs[.]com /svchosa.exe (IP: 59.110.185.187) 的惡意程式攻擊事件, 該惡意程式名稱為 svchosa.exe, 與系統檔 svchost.exe 之名稱僅一個字母之差, 為了解該惡意程式的攻擊行為, 本中心進行該程式的鑑識分析作業 二 事件檢測 1. 首先, 使用兩台在同一區域網路的 Win 7 虛擬機 (155 主機與 137 主機 ) 進行 svchosa.exe 檢測, 並在 155 主機 (IP:192.168.195.155) 上執行 svchosa.exe 2. 程式 svchosa.exe 經 Virustotal 檢測, 其惡意比例為 55/70, 多家防毒軟體公司 以 Downloader 或 CoinMiner 命名它 1
3. 檢視主機對外連線狀況, 發現 svchosa.exe 會連線中國 IP:47.104.110.131:8090 與中國 IP:47.106.217.147:80, 它也會針對區域網路內各 IP 進行兩個 port 的掃瞄 (port scan:139port 與 445port), 而因執行 svchosa.exe 產生的 oysks.exe 會連線新加坡 IP:139.99.72.56:80 與日本 IP:103.101.30.10:80 在 svchosa.exe 執行一段時間後, 會發現 svchostlong.exe 與 serverlong.exe 會連線區域網路內 137 主機的 445port, 而 svchosa.exe 會在區域網路的 portscan 作業結束後連線中國 IP:60.2.77.229:1433 2
4. 查看連線中國 IP:47.106.217.147:80 之封包內容, 發現它會下載 SMB445.exe 與 services.exe 兩程式至主機內 3
5. 查看連線日本 IP:103.101.30.10:80 與新加坡 IP:139.99.72.56:80 之封包內容, 發現這兩個連線皆為向礦池報到來進行挖礦作業之連線行為 4
6. 查看連線中國 IP: 60.2.77.229:1433 之封包內容, 發現在區域網路的 portscan 作業結束後會透過 1433 port 進行 ms-sql 資料庫的連線 7. 檢視背景程式運作情形, 發現在 svchosa.exe 執行後會循環式地執行 ipconfig.exe ( 清除 DNS 快取 ) taskkill.exe( 強制結束 ipconfig.exe) oysks.exe( 執行挖礦 ) 與 taskkill.exe( 強制結束 oysks.exe) 等程序, 其中會在 C:\$aywke 產生 oysks.exe 來執行挖礦 5
在執行上述程序一段時間後, 會開始執行 S.exe PING.EXE ( 檢查 TCP/IP) 刪除 S.exe 執行 Svchostlong.exe Serverlong.exe Taskkill.exe ( 強制結束 oysks.exe) 與刪除 C:\ProgramData\*.txt 等程序 6
其中 Svchostlong.exe(Eternalblue) 與 Serverlong.exe(Doublepulsar) 執行後會在 C:\ProgramData 產生 IP address.txt 與 IP address-dll.txt 兩個文字檔, 例 如 :192.168.195.137.txt 或 192.168.195.137-dll.txt 在執行完 svchostlong.exe 與 serverlong.exe 後會刪除所有在 C:\ProgramData 資 料夾的 *.txt 文字檔 8. 查看 IP address.txt 與 IP address-dll.txt 兩個文字檔內容, 發現它可能為程式 svchostlong.exe 與 serverlong.exe 執行後的紀錄檔, 但在整個 svchosa.exe 執行 過程的最後程序裡這些紀錄檔將被刪除 7
9. 檢視程式在主機開機後執行情形, 發現 svchosa.exe 會在主機重新開機後自動 執行, 並且呼叫 oysks.exe 來進行挖礦 10. 查看 oysks.exe 所在位置, 發現它存放於 C:\ 一個隱藏式資料夾 $aywke 中, 經 Virustotal 檢測其惡意比例為 31/70, 多家防毒軟體公司以 CoinMiner 命名 它, 可以確認它為一個挖礦程式 8
11. 查看區域網路內被駭入的主機受感染情形, 發現它會在受感染主機之 C:\programData 資料夾內存放 services.exe Svchostlong.exe Serverlong.exe VNC.exe 與 vbs.vbs 等檔案, 而且會產生一個隱藏式的亂數命名的資料夾存放挖礦程式, 如 :Fgols.exe 存於 C:\$gyomw\ 內, 也會依照 vbs.vbs 內容去執行命令下載惡意程式 12. 本個案在執行 svchosa.exe 後, 所發現的惡意程式彙整如下表, 其中 VNC.exe 的檔案大小是 0 KB, 而 Virustotal 檢測為 0/58, 無法檢測出其是否為惡意, 但在檢測時發現 svchosa.exe 會在感染區域網路內其他主機時, 透過 vbs.vbs 的執行下載 http://fuckyoupassword.top:20190/spread.exe, 並將 spread.exe 下載 至主機後存成 c:\programdata\vnc.exe 惡意程式名稱 所在位置 所在電腦 惡意程式功能 Virustotal Oysks.exe C:\$aywke\ 155 主機 挖礦程式 31/70 S.exe C:\ProgramData\ 155 主機 執行過程中 --- 被刪除, 無 檔案可檢測 Svchostlong.exe C:\ProgramData\ 155 主機 137 主機 EternalBlue 59/70 Serverlong.exe C:\ProgramData\ 155 主機 137 主機 DoublePulsar 60/70 VNC.exe C:\ProgramData\ 137 主機 0/58 檔案 0 KB 檢測不出 Services.exe C:\ProgramData\ 137 主機 Downloader CoinMiner 56/71 Backdoor 9
惡意程式名稱所在位置所在電腦惡意程式功能 Virustotal Vbs.vbs C:\ProgramData\ 137 主機 VBS 6/56 Downloader Fgols.exe C:\ProgramData\ 137 主機挖礦程式 19/69 三 事件攻擊行為示意圖 1. 從惡意網站感染與下載惡意程式 2. 執行 svchosa.exe (1) 執行 ipconfig.exe 清除 DNS 快取 (2) 強制結束 ipconfig.exe (3) 執行 oysks.exe 進行挖礦 (4) 執行 taskkill.exe 結束 oysks.exe (5) 執行 S.exe (6) 執行 Ping.exe 檢查 TCP/IP (7) 刪除 S.exe (8) 執行 Svchostlong.exe (9) 執行 serverlong.exe 10
(10) 執行 taskkill.exe 結束 oysks.exe (11) 刪除 C:\programData\*.txt 3. 連線中國 IP:47.104.110.131:8090 4. 對區域網路內各主機進行 139port 與 445 port 的 Port Scan 作業 5. 連線新加坡 IP:139.99.72.56:80 與日本 IP:103.101.30.10:80 兩個礦池進行挖礦作業 6. 連線中國 IP:47.106.217.147:80 下載 SMB445.exe 與 Services.exe 7. 連線中國 IP:60.2.77.229:1433 來進行 ms-sql 資料庫連線 四 建議與總結 1. 本個案的攻擊手法是透過惡意程式 svchosa.exe 感染受害主機後, 該主機會使用美國國安局 (NSA) 外洩的著名攻擊工具 EternalBlue(Svchostlong.exe) 與 DoublePulsar (Serverlong.exe) 來攻擊區域網路內含有 SMB 漏洞的主機 2. Svchosa.exe 會在受害主機之 C:\ 建立一個含有挖擴程式的隱藏資料夾, 來進行挖礦, 而其資料夾命名與挖礦程式的檔案命名皆是亂數命名, 不固定資料夾名稱與檔案名稱 3. 區域網路內受感染的主機會執行惡意的 VBScripts 來下載惡意程式, 並且執行隱藏的挖擴程式 4. 檢視本個案之情況, 有下列幾點建議措施提供參考 (1) 修補 Windows 系統 SMB 服務漏洞 (2) 將駭客常使用來攻擊的 port 鎖住, 如 445 port (3) 不隨意開啟不明來源的網頁 信件或檔案 (4) 定期進行系統與病毒碼更新作業 (5) 定期進行系統掃毒作業 11