如何預防被挖礦?
其實我們常說的“挖礦”并不是真的去地下采礦,更多的是指比特幣挖礦。然而在比特幣火熱的背景下,不少黑客為了獲取更多的計算能力,就動起了歪腦筋,通過攻擊他人電腦及服務器的方式讓其替它“挖礦”。
究竟什么是“挖礦”?所謂的“挖礦”其實是利用計算機去解決復雜的數學問題,以此來保證分布式記賬系統的一致性。我們所說的比特幣等虛擬貨幣其實是區塊鏈技術的一種,而區塊鏈是由許許多多的區塊組成的,我們可以把每個區塊理解為一個賬單(區塊鏈就是“賬本”),任何的交易信息、轉賬信息等都會記錄在區塊里。
“挖礦”就是將一段時間內比特幣系統中發生的交易進行確認并記錄在區塊鏈上形成新區塊的過程,新生的區塊會掛在區塊鏈的末端,而你一旦生成了新區塊就會獲得一定的獎勵!然而生成區塊的操作是極其復雜的,計算結果需要滿足特定的目標值(而且這個目標值很難被滿足),如果想計算出來就需要大量的計算機去計算。
利益驅駛下黑客會去尋找更多的“礦機”上面說到了,想生成新的區塊需要消耗大量的計算才能成功,而且機率很小。所以很多人就動了歪腦筋,通過黑客手段去尋找“礦機”來替自己計算。
“礦機”就是進行“挖礦”計算的計算機,電腦、服務器等都可以作為礦機。
被“挖礦”的表現如何判斷你的電腦或服務器成為了別人的“礦機”了呢?當你的服務器存在以下現象時就需要注意了:
服務器上的應用請求并發并不大,但CPU異常占滿、或長期偏高;
服務器一直對外發包;
服務器中存在異常進程,如:wnTKYg、minerd、AnXqV等;
服務器上的Redis端口外網可以隨意訪問。
服務器被挖礦的主要罪魁禍首目前所知的礦機植入絕大多數都是黑客通過Redis漏洞進行提權植入的。Redis作為主流的NoSQL數據庫,現在被越來越多的平臺所使用,而Redis默認情況下是沒有開啟授權認證的,一旦你的Redis默認端口號沒改防火墻中又是開放的,那別人可以隨意連接上你的Redis服務器,然后進行SSH提權,掌控你的服務器,進行礦機植入。
如何預防被挖礦?作為服務器管理員或者運維工程師而言,我們不能只是簡單掌握服務器的一些命令,更重要的是安全意識!所以我們在日常運維工作中需要注意以下幾點盡可能規避服務器被人挖礦的風險:
1、線上Redis服務器一定要禁止外網連接
Redis服務器只允許本機應用或者可信任IP的連接,其它來源一律不允許連接到Redis,防止惡意提權。
2、定期查看服務器的相關日志
關于服務器日志,很多運維都有個通病就是不喜歡看日志。要知道早期很多攻擊都在日志中留下了足跡,我們一周檢查幾次日志就能及時發現潛在的一些攻擊行為,比如判斷是否有黑客在嘗試登錄服務器。
3、只允許特定IP/用戶遠程訪問服務器
我們可以通過防火墻策略設置只允許特定IP來遠程訪問服務器,另外我們在SSHD里設置禁止root用戶直接登錄。
4、及時刪除不必要的服務及帳號
對于系統中的一些不必要服務及帳號都可以刪掉,防止被黑客利用。
5、異常進程檢查
6、定時任務檢查
以上就是我的觀點,對于這個問題大家是怎么看待的呢?歡迎在下方評論區交流 ~ 我是科技領域創作者,十年互聯網從業經驗,歡迎關注我了解更多科技知識!