竇桂英
【摘要】 通過一個實際案例---一個公司服務器遭到攻擊,來剖析在現實生活中,我們遭遇到網絡安全時的應對策略,并詳細介紹了網絡安全加固以及怎么預防的方法。在民航中,民航氣象的飛速發展,使得民航氣象信息在民航中占有非常重要的地位,民航信息安全也就顯得尤為重要。
【關鍵字】 操作系統 ssh arp攻擊
一、前言
在計算機網絡安全的圈子里流傳著這么一句話:“計算機并沒有漏洞,漏洞在于人的身上。” 其實網絡是人、組織機構與電腦之間相互聯系的迷宮。網絡攻擊最簡單的方式就是找出關系中的薄弱環節。通常人是這三者中最弱的一環,因此也就成了攻擊進入任何電腦網絡最簡單的方式。
現代黑客已經將攻擊目標由組織機構的系統轉為人類的操作系統。由于個體攻擊需要一套不同的工具和從蠻力轉變為策略的技巧,而網絡攻擊就利用了人的弱點和個人習慣。俗話說:積習難改。我們長期養成的薄弱的網絡安全意識和帶有明顯個人及組織特征的網絡操作習慣,就往往成為個人與所維護設備組成的一體系統中最大的安全漏洞。下面以一個案例為背景,淺談下網絡安全加固。
二、案例背景
2014年10月份公某司一臺服務器異常,且經網絡特征分析得出此服務器成為“肉雞”的結論。
由于此服務器為私網地址,是與外網隔離的,從安全性上來說是比架設在公網上的平臺穩固性高的。維護人員對此服務器進行檢查,發現所謂的私網其實并不封閉,此服務器就是一個公網接入點。原來此服務器為綜合網管告警監控系統的前置機,為了完成與監控系統采集機的連接,前置機映射了公網地址,而采集機是在公網上的。這樣,就給外網對私網提供了一個攻擊通道。連接了公網就一定要受到攻擊么?那架設在公網上的平臺怎么辦?我們的個人計算機平時就與公網連接的,有沒有一些安全措施來保證我們電腦不被攻擊或減少攻擊的可能性呢?
鑒于這些想法,我們根據網絡安全知識在主機層面進行安全加固工作。下面就對本案例的問題解決過程所涉及的內容對網絡安全分析進行分享,提供一些簡單通用的安全加固內容。
三、問題解決方案及安全分析
3.1 服務器斷網并更換操作系統
不聯網的設備是無法進行攻擊的,在檢查時將傀儡服務器斷網。對服務器,原操作系統為windows 2003。根據設備硬件信息可以更換操作系統為Linux。
通常評定網絡安全等級的客觀的方法是跟蹤一個特定的操作系統發布的修復漏洞的補丁數量。而windows與Linux進行比較發現,Windows似乎安全漏洞似乎更多。一份美國計算機應急反應小組發表的安全漏洞測評報告表明,Windows出現了250次安全漏洞,而Red Hat Linux只有46次安全漏洞。而兩者存在這種差別是有充分理由的。原因是Linux的開放源代碼的軟件開發方式有助于更容易地暴露錯誤,而Windows由于其許多應用程序依靠遠程程序調用,遠程程序調用是計算機內部的一種通信方式,無法提前預知和主動地分配通信方法。而Linux是限制使用遠程程序調用的,相比之下,就迫使Windows的防火墻沒有Linux那樣嚴格
由于維護人員熟悉windows系統的操作,因此也往往形成對windows的習慣性依賴。而且,現在網絡上的攻擊多是針對windows操作系統的,我們不妨換一種操作系統,既有較高的安全性又能豐富我們的維護知識。
3.2 更換遠程登錄方式telnet為ssh
在更換操作系統后,對服務器的遠程登錄進行設置,禁用Telnet,使用SSH遠程登錄。
1、#chkconfig telnet off (關閉telnet)
#chkconfig --del telnet(開機不啟動命令)
2、#service xinet restart (重啟)
3、#rmp -e telnet -server –nodeps(刪除包)
4、#vi /etc/services (注釋掉23端口)
由于物理距離的限制,很多維護人員都是通過遠程登錄進行設備維護的。一般的網絡服務程序,如:telnet、ftp和pop在本質上都是不安全的,原因是在網絡上它們都是用明文傳送數據和口令。而SSH(安全外殼協議) 是建立在傳輸層和應用層基礎上的安全協議,是目前較為可靠,專門為遠程登錄會話和其他網絡服務提供安全性的遠程登錄協議。簡言之:Telent是明碼傳輸,SSH是加密傳輸。
而Telnet訪問遠程計算機用的TCP/IP協議是以控制網絡設備,就好比在離開某個建筑時大喊用戶名和口令。就會有人進行監聽,并且會利用你安全意識的缺乏,把這些數據和口令截獲了。同時這些服務程序的安全驗證方式也是有弱點的,也就是很容易受到“中間人”的攻擊。就是“中間人”冒充真的服務器接收你傳給服務器的信息,然后再冒充你把信息傳給真的服務器。你和服務器之間的信息傳送被“中間人”做了手腳之后,就會出現很糟糕的問題。
而SSH提供的一種基于密鑰的安全認證,則為自己創建一對密匙,并把公用密匙放在需要訪問的服務器上。用這種方式,你必須知道自己密匙的口令,而口令是不需要在網絡上傳送的。這種認證方式不僅加密所有傳送的信息,而且“中間人”這種攻擊方式也是不可能的(因為他沒有你的私人密匙)。
3.3 弱口令問題
弱口令問題恐怕是最能體現個人習慣和暴露個人信息的。有人說破解密碼的高手都是一個優秀的心理學家,他可以通過對你個人的所有網絡信息和生活習慣的了解經過縝密的推理來破解你的密碼。而你是防不勝防的。因為密碼是我們最容易麻痹和偷懶的網絡信息。
這就要說到密碼破解方法。攻擊者一般都會使用一些常用的弱口令先進行手工試探,我們平時所用的一些系統服務、數據庫、web應用等都有其默認的弱口令,這更是需要我們注意和更改的地方。
手工試探失敗,是可以暴力破解的。理論上密碼都是可以破解的,但是理論歸理論,現實歸現實,暴力破解是需要成本的,稍微復雜的密碼,一臺普通設備都要破解很長時間。
因此,關于登錄密碼最好的弱口令問題的解決方案:不使用空口令或系統缺省的口令;口令長度不小于8個字符;口令應該為大寫字母、小寫字母、數字和特殊字符的組合;不使用與自己個人信息有關的密碼,如生日、姓名簡寫等;定期更換口令密碼,防止未被發現的入侵者繼續使用該口令等等。這些措施都能給攻擊者破解密碼帶來很大的障礙,保證了口令破解的難度。
為了防止維護人員偷懶,可以進行密碼復雜度配置:
參數含義:常識次數5;最少不通字符4;最小密碼長度8;最少大寫字母1;最少小寫字母:1;最少數字1。
參數含義:
PASS_MAX_DAYS 90 #密碼最長過期天數
PASS_MIN_DAYS 80 #密碼最小過期天數
PASS_MIN_LEN 8 #密碼最小長度
PASS_WARN_AGE 7 #密碼過期警告天數
3.4 更改遠程登錄端口號
從一臺設備到另一臺設備或幾臺設備可能建立多個連接,所以需要某種多路復用功能區分不同連接。多路復用確保傳輸層可以從某個應用程序將數據發送到恰當的接收站,并且從接收站接受數據時,把數據傳送到恰當的應用程序。為了擁有這種本領,傳輸層為每個連接分配一套唯一的號碼,這些號碼成為端口(prot)。每個連接有一個源端口號和一個目的端口號。發送方設備所指定的目的端口號成為公共端口號,公共端口號中包括一些常用應用程序的“默認端口號”。比如:FTP,默認端口號為21;SSH,默認端口號為22;Telnet,默認端口號為23;TFTP(Trivial File Transfer Protocol ),默認端口號為69;QQ,默認的端口號為1080;…
遠程攻擊所使用的端口號基本都是默認的端口號,我們在維護工作中也習慣于記憶和使用默認端口號。而修改遠程端口號,會使得該遠程登錄只能在此更改的端口進行,即使知道賬號和口令,端口號不對依然無法登錄,這就使得我們的遠程登錄安全又增加了一份防護。
修改ssh端口號的方法:步驟一修改/etc/ssh/sshd_config文件
[root@localhost ssh]# more sshd_config#$OpenBSD: sshd_config,v 1.69 2004/05/23 23:59:53 dtucker Exp$
# This is the sshd server system-wide configuration file. See# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/bin:/bin:/usr/ bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options change a
# default value.
#Port 22 //先把22注釋掉
port 2501 //添加一個新的端口
#Protocol 2,1
步驟二
[root@localhost ~]# service sshd restart
Stopping sshd:[ OK ]
Starting sshd:[ OK ]
步驟三
用SecureCRT測試3.5 ARP攻擊防護
在此案例中維護人員還發現同一網段中的一些設備存在嚴重的丟包行為,甚至影響了客戶端正常登錄平臺。最后的故障判斷為:存在ARP攻擊。所謂ARP攻擊就是通過偽造MAC地址和IP地址實現ARP欺騙,同時在網絡上產生大量的ARP通信量使網絡阻塞,攻擊者只要不斷的發出偽造的ARP響應包就能更改目標主機ARP緩存中的IP-MAC條目,造成網絡中斷或中間人攻擊。
為了保證服務器的順暢和業務的正常運行,對于ARP攻擊的防范工作必須要做,在此介紹三種常用的防范措施:一是在路由器和終端上都進行IP-MAC地址綁定,這可以對ARP欺騙的兩邊偽造網關和截獲數據,都具有約束的作用。二是通過在防火墻軟件中開啟ARP防護來對終端電腦上網關進行綁定,以防止不受網絡中假網關的影響,實現保護自身數據不被竊取。三是通過劃分VLAN和交換機端口綁定來實現。做法是通過細致地劃分VLAN,以減小廣播域的范圍,從而使ARP在小范圍內起作用,不至于發生大面積影響。而針對一些網管交換機具有MAC地址學習的功能,學習完后,再關閉這個功能,就可以把對應的MAC和端口進行綁定,避免了病毒利用ARP攻擊篡改自身地址。
四、結論
通過對本案例的解決方案分析,回頭再去看前言的第一句話,不禁感受頗深。以上的安全加固策略其實都是基本的安全常識,也并不是多么復雜的操作。但是維護人員自身所具有的安全意識程度,卻反映了設備存在的漏洞大小和多少。在維護人員和設備組成的一體系統,具有了良好的安全操作和維護習慣以及預警意識,你就會成為維護設備外面一層最堅實的“防火墻”。
參 考 文 獻
[1] 鳥哥 著 鳥哥的Linux私房菜:服務器架設篇(第三版)機械工業出版社2012.7出版
[2] 閆宏生 王雪莉 楊軍等編著計算機網絡安全與防護(第二版)電子工業出版社 2010.11出版
[3]俞朝暉 王長征 趙怡程著 系統防護網絡安全與黑客攻防實用寶典中國鐵道出版社 2013.2出版