滲透測(cè)試中關(guān)于反向代理的研究分析

閱讀 4752  ·  發(fā)布日期 2021-03-31 16:19:04

本文主要介紹反向代理和內(nèi)部網(wǎng)絡(luò)滲透的簡(jiǎn)單概念和使用場(chǎng)景。教你如何建立自己的反向代理服務(wù)器進(jìn)行內(nèi)部網(wǎng)絡(luò)滲透。背景。首先,我們要看一個(gè)場(chǎng)景。有一天你學(xué)了一個(gè)新的Web框架,拿到一個(gè)HelloWorld后很興奮,想給朋友show(因?yàn)橹皇菚簳r(shí)的show,所以你沒有考慮把網(wǎng)站部署到服務(wù)器上)。此時(shí)更尷尬了,您的寬帶沒有獨(dú)占IP,公司是獨(dú)占IP,但您沒有權(quán)限配置路由器轉(zhuǎn)發(fā)表。您發(fā)現(xiàn)您的網(wǎng)頁(yè)只能在局域網(wǎng)上訪問,在外網(wǎng)上的朋友不能訪問。此時(shí)有兩種方法,一種是將網(wǎng)站部署到有公共網(wǎng)絡(luò)IP的服務(wù)器上,另一種是使用反向代理進(jìn)行內(nèi)部網(wǎng)絡(luò)穿透。

20210331161731_7ekt6d.jpg

反向代理-ReserveProxy。

事實(shí)上,反向代理并不是什么新鮮事,它本質(zhì)上和正向代理一樣,都是將流量做轉(zhuǎn)發(fā)。而且正向代理最典型的例子就是每個(gè)人使用的梯子。假設(shè)客戶端A到服務(wù)端B之間有一堵防火墻,屏蔽了所有A到B的流量,而設(shè)備C、A到C、C到B的路由都是通的。此時(shí)我們可以先將流量發(fā)送給C,C收到后再將流量發(fā)送給B,這樣我們就可以訪問B上的資源。那就是正向代理比較直觀的例子。

假如正面代理是客戶端,那么反面代理是服務(wù)器端。比較直觀的例子是負(fù)載平衡。比如我訪問百度的域名,我的請(qǐng)求會(huì)先到服務(wù)器C,C會(huì)根據(jù)我的網(wǎng)絡(luò)情況從很多例子服務(wù)器中給我分配一個(gè)最快的例子服務(wù)器。這里的C做的工作其實(shí)是反向代理。從這里可以看出,正面代理大多管理流量,反面代理大多管理流量。

20210331161754_7dkt0a.jpg

反向代理的作用是。

對(duì)于客戶端隱藏服務(wù)器(集群)的IP地址安全:作為應(yīng)用層防火墻,為網(wǎng)站提供基于的攻擊行為(如DoS/DDoS)的保護(hù),更容易檢查惡意軟件,為后端服務(wù)器(集群)提供統(tǒng)一的加密和SSL加速(如SSL終端代理)負(fù)載平衡。如果服務(wù)器集群負(fù)載較高,反向代理通過URL重寫。根據(jù)連接請(qǐng)求,從負(fù)載較低的人獲得相同的資源或備份。對(duì)于靜態(tài)內(nèi)容和短時(shí)間內(nèi)有大量訪問請(qǐng)求的動(dòng)態(tài)內(nèi)容,提供緩存服務(wù)來壓縮一些內(nèi)容,以節(jié)省帶寬或?yàn)榫W(wǎng)絡(luò)帶寬差的網(wǎng)絡(luò)提供服務(wù)。

20210331161832_tgmo4p.jpg

內(nèi)部網(wǎng)絡(luò)穿透,在文章開頭,我們舉了一個(gè)例子,外部網(wǎng)絡(luò)的設(shè)備不能直接訪問內(nèi)部網(wǎng)絡(luò)的資源。因?yàn)楦鞣N路由(運(yùn)營(yíng)商自己的)屏蔽了我們內(nèi)部網(wǎng)絡(luò)的設(shè)備。就像你不能直接訪問百度最下層的例子服務(wù)器一樣。這時(shí)候可以利用反向代理暴露內(nèi)部網(wǎng)絡(luò)服務(wù),稱為內(nèi)部網(wǎng)絡(luò)滲透。具體流程是這樣的。我們需要一個(gè)有公共網(wǎng)絡(luò)IP的服務(wù)器C,然后從本地A訪問C,握手C,建立穩(wěn)定的通道。外部網(wǎng)絡(luò)設(shè)備B向C發(fā)送請(qǐng)求,C通過剛才建立的穩(wěn)定通道將請(qǐng)求轉(zhuǎn)發(fā)給A。a收到請(qǐng)求后,將響應(yīng)發(fā)送給C,C將響應(yīng)返還給B。這樣B就可以訪問內(nèi)部網(wǎng)絡(luò)A的資源。