關於mirai的一些研究
配置好對應的go開發環境,即可進行編譯,生成了主要的檔案 badbot為殭屍節點的可執行檔案,cnc為主控端的可執行檔案,其它一些為輔助工具。
如下圖所示編譯主控端源**(go語句編寫)生成可執行檔案cnc,執行cnc,在本地開啟了23和101的埠監聽
主控端的**主要由go語言編寫,主要實現了對bot的控制和管理功能。
在main.go 中可以看到資料庫連線的資訊。
匯入原始碼中的sql語句,連線資料庫,可以看到資料庫的一些結構資訊。
c&c連線資訊會被初始化在一張表中,當mirai回連c&c時,會從表中取出c&c進行連線。
防止外來者搶占資源
mirai有乙個特點就是具有排他性,裝置一旦感染,其會通過埠來關閉telnet(23)、ssh(22,編譯時可選刪除項)、http(80,編譯時可選刪除項)服務並且會阻止這些服務進行重啟,其主要實現方法是通過kill強制關閉這三個服務程序,並強行占用這些服務開啟時所需要的埠。此舉mirai既可以防止裝置被其他惡意軟體感染,也可以防止安全人員從外部訪問該裝置,提高mirai的取證難度。此功能實現在killer.c檔案中。
bot確保每次只有乙個例項執行(通過連線本地埠48101),並通過此埠號關閉相對應的程序。
我們大致可以通過在shodan上搜尋開放48101埠的ip情況,來檢視已感染mirai病毒的資料情況。
目前為止開放48101埠的ip有62萬之多,中國有9萬之多。隨便開啟乙個ip的詳細資訊,如下
該ip只是開放了48101埠,且由wps_device.xml資訊判斷該裝置很有可能是已被感染的一台路由器。
mirai其強大的感染能力源於它的掃瞄探測能力,其掃瞄**在scanner.c 中,其中內建了常見的弱口令,受感染的bot會不斷的去對隨機的白名單列表中的ip進行掃瞄探測,進行下一步的感染。
基本上就搞了這些後面領導說先不搞了,就去搞其它的了,還有因為自己功力不夠的原因,關於mirai還有很多東西可以挖掘qaq
關於mirai的一些研究
關於mirai的一些研究 配置好對應的go開發環境,即可進行編譯,生成了主要的檔案 badbot為殭屍節點的可執行檔案,cnc為主控端的可執行檔案,其它一些為輔助工具。如下圖所示編譯主控端源 go語句編寫 生成可執行檔案cnc,執行cnc,在本地開啟了23和101的埠監聽 主控端的 主要由go語言編...
關於A 演算法的一些研究
公式 f g h 代價計算,尋路代價最小的就是我們要找的 g 表示從起點 a 移動到網格上指定方格的移動耗費 可沿斜方向移動 h 表示從指定的方格移動到終點 b 的預計耗費 h 有很多計算方法,這裡我們設定只可以上下左右移動 下面拿個例子說明一下 原文參考 假如從a尋路到b 尋路步驟 1.從起點a開...
關於socket的一些初步研究
這些天在研究tornado的原始碼,說實話它的 過於艱深了,需要繞很多彎才能弄清。我想其中的問題主要是我不太懂socket,於是就花了些時間學習socket,算是有了些收穫,順便記錄在此。首先是socket的概念。實 客戶端則也通過socket 建立socket 再呼叫connect 連線到伺服器端...