黑客攻防精通電子版;黑客入門攻防與精通
標題:震驚全網·某站某博主被黑客勒索的事件:如何做好網絡安全,初識防火墻,企業級異地組網方案【好玩的網絡-第6期】
簡介:如何防范黑客攻擊?如何做好網絡安全?初識防火墻/異地組網/遠程訪問
防火墻簡介、異地組網(有些內容在視頻中)
- 網絡安全簡介,如何防范黑客攻擊
- 傳輸層簡介,以及常用端口
- 在武漢(本地,旁路由模式)和北京(云服務器,主路由模式)搭建異地局域網(實操)
- 異地組網配置靜態路由(實操)
- P2P穿透對異地速率的影響
大家好,我是你們的小伙伴果子。
2020年3月某博主花費十幾萬搭建的nas系統被黑客破解并勒索了。果子找到了該博主的那個視頻并且搜尋了一些相關信息,有介紹病毒的運作原理及過程的,也有關于病毒如何入侵內部主機的,也有說黑客掃描開放端口,暴力破解密碼的。由于被病毒加密的數據采用非對稱加密,破解的難度實在是太高了,很多大型安全公司也沒辦法恢復數據。
作為一個網絡科普博主,果子還是很關注這件事的。既然打算做關于網絡的科普視頻,網絡安全肯定會講,不過由于需要的基礎比較多,大多都放在后面了。
這期視頻是2020年5月發布的,現在咱們一起時空穿越,回到2020年5月... ...
事發突然,這期視頻的第一個目的,簡要整理一下攻防要點,聊聊防火墻,讓大家有個粗淺的概念,以后會繼續深入。
第二個目的,是從一個稍微專業的角度提點網絡安全小建議,
也是果子自己使用服務器的一個成長經歷,畢竟用nas的小伙伴還是挺多的,而且也急需這方面的知識。
第三點,主要針對個人和企業用戶,講講如何組建XXX網,實現企業異地組網、nas服務器的安全遠程訪問。
通過這期視頻,如果你能發現自己網絡可能存在的隱患,并能根據果子提供的信息,自行排查,或者找專業的公司來幫助你修復,能幫助你有效防范服務器被黑客攻擊,果子的目的也就達到了。
我們先來看看某乎上火絨發的一個帖子,這個帖子描述了2種情況,
火絨安全實驗室對某博主被黑客勒索事件的推測
第一種情況是計算機已經被病毒感染,或者說病毒已經入侵了內網。這種情況很麻煩,主要防御措施還是做好備份,設置好權限,不要點擊不明鏈接以及打開不明軟件。這不是這一期視頻的重點。這一期的重點是如何防范黑客從外部網絡主動攻擊我們的服務器和nas設備。想要了解黑客怎么攻擊,我們首先需要了解互聯網兩臺主機如何通訊。
大家還記得曾經我們講過的osi模型嗎?交換機在第二層數據鏈路層工作,路由器在第三層網絡層工作。有了這兩層,數據包已經可以在互聯網中的兩臺計算機之間傳輸了。當兩臺主機進行通訊時,實際上是應用程序在交互。那么當主機收到數據包時,計算機怎么判斷這個數據包應該交給哪個應用程序來處理呢?現在我們需要引入的一個新的概念,傳輸層,對應端口號,與數據鏈路層對應mac地址,網絡層對應ip地址類似。傳輸層常見的協議有tcp,udp等,但是最具潛在威脅的其實是tcp協議。
OSI模型
大家可能沒怎么聽過傳輸層這個概念,但是大家應該經常聽到“端口”這個詞。例如2017年永恒之藍爆發,通過samba協議文件共享的445端口進行傳播。
再例如工X部要求運營商封了家庭網絡的80,443,8080端口等。
為了更好地理解傳輸層,我們可以做個類比。假設我想去銀行辦理一個業務,有了數據鏈路層和網絡層,我們已經能從家里走到銀行門口了。但是實際去辦業務時,是需要去銀行的窗口或ATM機辦理實際的業務。每個窗口的工作人員或ATM機就相當于銀行這個“服務器”的應用程序,開放的窗口編號就相當于端口號了。現在,當我們知道端口號后,就可以找到對應的窗口辦理業務,實現兩臺主機應用程序之間的通訊了。
兩臺主機應用程序之間的通訊
從這個圖,我們可以很直觀地看到應用程序和端口之間的對應關系了。在linux系統中,也可以使用netstat命令查看本機與遠程主機建立的連接。
那防火墻是什么呢?防火墻相當于一個關卡,可以對進出的數據包進行控制。
例如,銀行門口坐著一個老大爺,為了預防新冠病毒傳播,給每個進入銀行的人測量體溫,給張三量體溫時發現高燒39度9,就沒放張三進去,這種叫防火墻的filter表的input鏈,實現過濾功能。再例如,假設醫院是一個服務器,張三出車禍被送往醫院,首先訪問通用的端口導醫臺,發現張三胸部被鋼筋貫穿,服務器隨后將張三的目的端口從問診臺修改為胸外科,這種叫防火墻的nat表的prerouting鏈,實現網絡地址轉換功能,也是我們之前講過的端口映射。大家先有個粗略的概念,防火墻就是用來實現類似這樣的功能,以后的視頻我還會更詳細地講解防火墻。
數據包進站流程,防火墻
有了這些概念后,理解網絡攻防就方便得多了。如果想要防御黑客從公網攻擊,那么首先就得知道黑客怎么攻擊,畢竟知己知彼的好處大家還是懂得。
我們首先需要了解黑客是如何進行滲透的。在該博主被黑客勒索之前,2017年5月,全球爆發了勒索病毒“永恒之藍”,是通過windows操作系統S的漏洞進行傳播。
我想熟悉nas的小伙伴應該知道samba是什么,
監聽的端口是445端口。
當時果子學校給出的方法就是關閉對應端口,
或者通過防火墻阻斷對應端口的流量。
某博主被黑客勒索事件,據說是nas直接放在了公網上,并且開啟了windows遠程桌面的3389端口,而且使用了弱密碼,剛上線的第一天就被攻破。那么我們應該如何防范呢?下面果子來舉個自己的例子。
為了講明白網絡攻防,我拿我之前的組網方案來舉個例子,通過這個例子,我想應該能覆蓋到大多數情況了。
果子在家里搭建了nas服務器,開啟了ssh,ftp,http,nfs,transmission等服務。
家中網絡服務,提示:視頻動畫更精彩
其中ftp服務用于手機觀看nas中的影音,
http服務提供本地客戶端下載服務器中的資料,
nfs服務用于電腦外掛網絡硬盤,
transmission服務用于服務器下載種子文件,
這些服務均對磁盤有讀寫權限。ssh類似該博主的nas服務器的windows遠程桌面程序,
用于遠程登錄管理和維護服務器,具有對服務器的最高權限。
現在的基本的需求是, ssh服務必須暴露在公網進行管理和維護。其他服務暫時只供局域網內的客戶端使用。在保證安全的情況下,可以從其他網絡訪問這些服務。
安全訪問的要求
現在我們結合這個例子來看看防御方案吧。
方案1,防火墻封閉對公網的端口。
如果將銀行的金庫直接暴露在任何人都能觸碰到的地方,
NFS服務
張三聽到這個消息高興壞了,一下子就把銀行的金庫給盜了精光。
后來銀行給金庫設置了密碼,
張三和他的同伙繼續契而不舍地不斷嘗試密碼,結果又成功盜取了一次。
黑客通常也會通過開放的端口的漏洞進行破解。張三對這個金庫實在是太心動了,寢食難安,
有一天李四悄悄告訴張三,只要在金庫輸入一個神秘代碼,金庫就開了。
于是張三到銀行按照李四的指點輸入了這個神秘代碼,金庫開了,張三高興壞了。
如果存在漏洞,黑客破解輕而易舉
這種情況的防御非常簡單,因為金庫只有內部人員會用到,那么金庫只對內部人員開放,禁止外界人員接觸,這樣就可以抵御大量來自外部的攻擊了。
如果某個端口經常出現漏洞,或者為了方便設置弱密碼,這種情況很容易被攻擊。我們可以使用防火墻禁止從公網訪問該端口,只允許局域網內部的主機訪問,這樣就相對安全了。我們只需要在防火墻中禁止ftp,http,nfs,transmission的端口從公網訪問,就能阻斷絕大多數攻擊了,而且不影響內網使用,這是我很推薦的方法。
那么如果是必須外界接觸的ATM機呢?需要暴露在公網的ssh呢?這樣就產生了第二個方案。
方案2,主動添加IP黑名單。
眾所周知,張三就是喜歡拿著很多偷來的銀行卡在很多銀行的ATM機嘗試破解密碼,一個一個試。
那張三攻擊我行金融系統,損害用戶利益,是大概率還是小概率?
請在留言區給出你們的答案!
有些銀行卡密碼很弱,張三一下就試出密碼了,張三說:哇,太開心了,好多錢啊。
那我們怎么防御呢?
當你作為銀行的管理人員,明知道張三要來,想要防御這樣的攻擊,如果能識別張三的話,
就可以把張三的IP地址直接加入防火墻的拒絕列表或丟棄列表,
當張三來到銀行門口就沒法進入銀行內部的ATM機了。
果子以前登錄自己的服務器后經常感覺很卡,當時不知道怎么回事。
查詢記錄后發現是有人持續嘗試破解密碼,ssh曾經被好幾個IP使用暴力破解密碼上十萬次!
果子自己的服務器,ssh被黑客嘗試密碼上十萬次
查詢登錄記錄后,果子主動將這些IP地址加入到防火墻drop列表中,服務器就變得不卡了。
類比這樣的機制,大家可以在網上找到惡意破解的黑名單加入自己的防火墻中。
例如東北大學網絡中心提供的網絡威脅黑名單等。
大家可以下載。
其實法外狂徒并不只張三,李四王五王六看到之后也想試試,
但是我們也不能預先知道誰要來,那么怎么辦呢?果子的服務器過了段時間又開始卡了,所以需要一個自動識別的機制。
方案3,自動添加黑名單。
李四今天嘗試了一次金庫遠程控制密碼,沒成功,他準備后面每天都接著再來嘗試密碼。這樣對銀行來說太危險了,萬一有一天李四破解成功了呢?或者萬一王五在一年的第366天破解成功了呢?現在就需要引入一個自動添加黑名單的防御機制了。這樣當王六在第三天嘗試密碼失敗之后,就被限制登錄銀行系統了。以后王六再到銀行來,銀行系統已經丟棄王六的登錄請求了。
這樣的例子很常見,黑客的IP地址也經常發生變化,
果子曾經也編寫過腳本進行類似的防御,通過分析ssh的登錄日志,定時將密碼輸入錯誤過多的IP地址整理出來自動加入防火墻的drop列表。
這種方法適合必須使用密碼登錄的情況,不過不是本期的重點。
果子單獨做了一期視頻介紹這個方法,以及果子自己編寫的ssh防爆破程序。當然大家也可以嘗試一些其他的安全軟件。
因為果子登錄服務器的設備比較固定,所以已經禁止使用密碼登錄服務器而采用非對稱加密的私鑰登錄,
只要ssh不出現漏洞,黑客無論怎么嘗試密碼都是無法破解的。雖然果子現在已經不再使用動態黑名單了,但是定時加入黑名單這種方法還是適用于離不開密碼登錄的小伙伴。
建議登陸設備固定,可使用密鑰登陸,并禁止密碼登陸
現在我們發現,公網能訪問的只有ssh服務的22號端口了。
那么如果想要自己在公司內部所有的設備都能訪問家庭防火墻內部的nas資源呢?這就需要組建XXX網實現局域網的遠程對接了。
方案4,組建XXX網。
下面我來講一個企業級的組網方案并給大家演示一下如何對接兩個異地的局域網。
原理很簡單,我們只需要跨公網搭建一條加密隧道,使兩端局域網互通就可以了。因為跨越公網的隧道是加密的,這個隧道的安全性就能得到保障。
這樣,從公司訪問家里的nas資源就相當于局域網訪問了。家里的nas設備在公網沒有暴露危險端口,這樣也能保證nas在公網的安全了。
果子自己是通過ssh搭建的隧道,不過搭建的難度與使用的操作系統有關,而且至少具有一個公網IP,操作起來比較麻煩,對小白和怕麻煩的企業也不太友好。
本系列視頻/圖文
關注博主,有問題,歡迎評論區留言討論!
圖文編輯:旋律果子 貓小爪
旋律果子: 網絡Geek/Linux開發者/中國科學院大學在讀博士/科技數碼博主/國家二級建造師/優質科技領域創作者