混在運維部的安全員說「埠與口令安全」
1. 前言
先簡單自我介紹一下,其實,我是一個安全工程師。現就職於某互聯網金融企業負責公司整體網路安全。
剛到公司時首先是了解一些企業規則和規則制定者,當然了我的工作主要是安全。初來乍到,先了解下公司的IT資產,收集完IT資產後,做一個IP資產開放埠的梳理,埠信息的收集這是一個很重要的過程,因為滲透實戰中對埠的滲透是常用手段。
埠收集過程中關注幾個問題:
1. 常見應用的默認埠
2. 埠的banner信息
3. 埠上運行的服務
4. 可能存在漏洞
埠信息的獲取,最為常見的應該就是nmap(埠信息比較詳細)、御劍(只顯示開放的埠,速度很快),也可以結合其他的主機漏洞掃描工具對埠掃描,如天鏡、極光、nusses都可以掃描埠和一些漏洞。
2. 常見埠威脅
通過埠來進行滲透會很大提升滲透成功效率,在工作中發現運維人員開放了很多埠,很多網上曝過的漏洞可以找到,對於個人來說,這是個學習、實踐的機會,連環境都搭好了,但對於企業來說這是個很危險的事情。
為什麼有這麼多埠開放,甚至有些已經關閉了的埠過段時間又會重新開啟。還有些埠要求去整改,但卻沒有整改,這裡面有很多因素,也包括人員安全意識和水平不一樣。在公司也發起過安全意識培訓和一些安全技術規範,但人員流動,各自專業不一樣,關注點不一樣。甚至一些人認為安全檢查是找茬的,影響發版進度。還一個因素,運維部的安全員在執行安全管理時大部分情況是從下往上推,更尷尬的是還換了領導了。也遇到過幫別的甲方企業發現漏洞,告訴了封埠、打補丁,可是運維人員沒有去整改,然後大概一個星期後就被黑客入侵了,再花一筆不小的費用讓我去封埠、打補丁。一入甲方深似海。。。
在運維部這邊遇到安全問題大部分是跟埠、口令相關,開發部那邊的情況另說。這裡例舉了一些常見的埠及可能存在的安全問題,當然了,埠還是要結合服務來看。這裡的埠也並不全,我一般看到埠就會去想它的服務,去百度查可能有哪些安全漏洞,大部分是從CVE、CNVD、安全廠商公證號、各大安全論壇也包括freebuf獲取漏洞信息。也做過針對企業具體IP的埠、服務、軟體版本的資產服務列表,這樣有新的漏洞曝出來,就能很快知道哪些伺服器可能有安全風險。
3. 埠漏洞測試
埠漏洞也是挺多的,以下3種漏洞在企業內網比較常見,在外網一般都是做了畢竟嚴埠控制,外網埠控制簡單很多,不像內網架構那麼複雜。
3.1 Rsync未授權訪問漏洞
3.1.1漏洞信息
漏洞名稱:Rsync未授權訪問漏洞
漏洞詳情:Rsync因配置不當,導致未授權訪問,可未授權上傳、下載伺服器文件。
Rsync 是一個通過檢查文件的時間戳和大小,來跨計算機系統高效地傳輸和同步文件的工具。通常情況下,管理程序在啟動Rsync 服務後,會直接運行傳輸任務。如果 Rsync 服務未經過安全加固,出現未授權訪問等安全問題;其直接後果是傳輸數據裸露在網路中,可以被任何人訪問獲取,帶來嚴重的數據泄露風險。
漏洞等級:高危
3.1.2 漏洞測試
一、查看泄露文件
root@kali:~# rsync 192.168.3.XXX::
root@kali:~# rsync 192.168.3.XXX::routing
查看routing目錄
二、下載文件
下載routing目錄中MFPRDAPP_192.168.3.xxx_report_OS_2018-01-14-01:05:01.txt文件到攻擊電腦的root目錄:
可以看到成功下載文件到攻擊電腦root目錄了:
三、上傳文件
把攻擊電腦root目錄中ylr180119.jsp文件上傳到靶機伺服器routing目錄:
登錄192.168.3.xxx伺服器,看到ylr180119.jsp文件成功上傳了:
後續的操作姿勢看個人喜好了,這裡只是驗證這個漏洞可以被利用入侵伺服器。
3.2 Redis伺服器遠程執行漏洞
3.2.1 漏洞信息
漏洞名稱:Redis伺服器遠程執行漏洞
利用原理:主要是通過無密碼登錄redis,然後往redis緩存寫入資料庫,再通過redis緩存保存到redis伺服器任意目錄。
漏洞等級:高危
3.2.2 漏洞測試
為了驗證漏洞影響,搭建了測試redis伺服器,進行漏洞攻擊測試。
搭建測試環境:
1)redis伺服器安裝redis_version:2.8.17
2)redis伺服器(靶機)IP:192.168.20.105
3)攻擊電腦,IP:192.168.20.102
測試過程(利用反彈shell控制伺服器):
1、由於redis伺服器默認是沒有設redis訪問密碼,攻擊電腦可直接向rides伺服器緩存寫入一個反彈shell,每分鐘執行一次
2、登錄redis伺服器redis服務,進行備份/創建一個/var/spool/cron目錄root文件
3、攻擊電腦上監聽反彈shell,成功連接了redis伺服器,可執行任意操作
當然還有其他的利用姿勢,如:
1)寫入SSH的key,然後利用key遠程登錄;
2)替換redis伺服器passwd文件;
3)寫入網馬(前提需要找到網站路徑);
3.3 ApacheActiveMQ遠程代碼執行漏洞
3.3.1 漏洞信息
漏洞名稱:Apache ActiveMQ遠程代碼執行漏洞
利用原理:主要是通過破解賬號密碼登錄Apache ActiveMQ,然後往Apache ActiveMQ目錄寫入資料庫,再通過MOVE保存數據到伺服器任意目錄。
漏洞等級:高危
3.3.2 漏洞測試
一、上傳小馬
首先 PUT 一個 jsp 的 Webshell 到 fileserver 目錄
1、修改PUT /fileserver/%20/%20為PUT/fileserver/xiaoma.jsp
2、在下方空白處填寫小馬內容
3、訪問http://192.168.20.101:8161/fileserver/xiaoma.jsp,輸入賬號密碼admin/admin登錄成功,看到小馬上傳成功
二、移動小馬到tomcat目錄
三、使用小馬上傳大馬
使用小馬客戶端上傳大馬shell.jsp
四、訪問大馬成功
可以使用大馬去管理伺服器為所欲為…為所欲為…
4. 關於埠與口令安全
縱觀埠與口令安全威脅,很多情況是因為默認配置有著諸多不足,而運維同學為了簡單,都直接使用了默認配置。對於埠與口令的安全使用,建議可以參考如下措施:
1、採用白名單形式配置主機防火牆/網路防火牆訪問控制策略,設置僅允許某IP訪問服務某埠。
2、關閉非必要埠,尤其是非必要埠不要開放外網訪問。
(很多木馬工具也有特定的埠,一些埠由於配置原因容易被惡意人員利用。)
3、設置強壯口令,並定期修改口令。
(密碼爆破技術最簡單,往往採用字典和社工結合能進行最大效果的爆破。)
4、盡量採用密碼防爆破,配合使用如限制次數、驗證碼等。
5、重要系統盡量使用雙因子驗證。
6、不要以明文方式傳輸賬號密碼。
7、遠程運維盡量採用VPN連接方式。
8、盡量以非管理員用戶運行服務程序。
9、及時升級版本、打補丁。
強壯口令是指有以下特徵的密碼:
1) 同時具備大寫和小寫字元;
2) 同時具備字母、數字和特殊符號,特殊符號例如:!@#$%^&*()_+|~-=`{}[]:」;』?,./) ;
3) 8個字元或者以上;
4) 不是字典上的單詞或者漢語拼音;
5) 不基於個人信息、名字和家庭信息。
5. 關於安全整改
當收集完埠信息後,我發現很多問題,跟運維人員、開發人員聊過人生。發現運維人員、開發人員不太懂安全,而安全人員也不太懂運維和開發,至少我之前是這樣的。拿埠和弱口令來說,對於安全人員來說,發現了這個問題一般的建議:改口令、關埠;限制IP訪問;打補丁/升級版本;刪除一些配置文件。實際情況中運維或開發會反饋:
1)口令更改會涉及一些應用調用,需要同時改好幾個地方的配置;
2)有其他系統需要調用這些埠,整改起來很麻煩;
3)linux防火牆還好限IP,windows防火牆有不少坑,網路防火牆限IP可能要改好幾個防火牆,而且防火牆策略已經很亂;
4)一些補丁打不上,版本不能升不了級,甚至不能升級和打補丁;
5)這個問題好像沒什麼影響,我慢點改,最後可能不了了之;
6)有沒有更簡單的方法,我選更簡單的。
我只是個安全工程師,招入職我的領導升上去了,堅強的後盾沒了,還好這麼多年的工作經驗在運維和開發都懂一些,安全工作也還是要繼續:
1)把整改的方法一一分析,討論可行性,甚至還把一些操作步驟給做成手冊,甚至還寫過殺毒軟體的安裝和配置使用手冊;
2)把問題風險列出來,甚至進行成功滲透,必要時發個安全通告、安全預警之類,主要是要引起對問題的重視,同時也要避免出問題擔責。
漏洞成功利用了,整改操作手冊也有了,各位大佬同意整改了,然後就是漏洞跟蹤形成閉環。
※安全開發之掃描器迭代記:W9Scan
※微軟聯手英特爾,在Windows更新中推送Sepctre微代碼升級
TAG:瘋貓網路 |