滲透測試中關于(At)反向代理的(of)研究分析
閱讀 2388 · 發布日期 2021-03-31 16:19:04本文主要(want)介紹反向代理和(and)内部網絡滲透的(of)簡單概念和(and)使用(use)場景。教你如何建立自己的(of)反向代理服務器進行内部網絡滲透。背景。首先,我(I)們(them)要(want)看一(one)個(indivual)場景。有一(one)天你學了(Got it)一(one)個(indivual)新的(of)Web框架,拿到(arrive)一(one)個(indivual)HelloWorld後很興奮,想給朋友show(因爲(for)隻是(yes)暫時(hour)的(of)show,所以(by)你沒有考慮把網站部署到(arrive)服務器上)。此時(hour)更尴尬了(Got it),您的(of)寬帶沒有獨占IP,公司是(yes)獨占IP,但您沒有權限配置路由器轉發表。您發現您的(of)網頁隻能在(exist)局域網上訪問,在(exist)外網上的(of)朋友不(No)能訪問。此時(hour)有兩種方法,一(one)種是(yes)将網站部署到(arrive)有公共網絡IP的(of)服務器上,另一(one)種是(yes)使用(use)反向代理進行内部網絡穿透。
反向代理-ReserveProxy。
事實上,反向代理并不(No)是(yes)什麽新鮮事,它本質上和(and)正向代理一(one)樣,都是(yes)将流量做轉發。而且正向代理最典型的(of)例子就是(yes)每個(indivual)人(people)使用(use)的(of)梯子。假設客戶端A到(arrive)服務端B之間有一(one)堵防火牆,屏蔽了(Got it)所有A到(arrive)B的(of)流量,而設備C、A到(arrive)C、C到(arrive)B的(of)路由都是(yes)通的(of)。此時(hour)我(I)們(them)可以(by)先将流量發送給C,C收到(arrive)後再将流量發送給B,這(this)樣我(I)們(them)就可以(by)訪問B上的(of)資源。那就是(yes)正向代理比較直觀的(of)例子。
假如正面代理是(yes)客戶端,那麽反面代理是(yes)服務器端。比較直觀的(of)例子是(yes)負載平衡。比如我(I)訪問百度的(of)域名,我(I)的(of)請求會先到(arrive)服務器C,C會根據我(I)的(of)網絡情況從很多例子服務器中給我(I)分配一(one)個(indivual)最快的(of)例子服務器。這(this)裏的(of)C做的(of)工作(do)其實是(yes)反向代理。從這(this)裏可以(by)看出(out),正面代理大(big)多管理流量,反面代理大(big)多管理流量。
反向代理的(of)作(do)用(use)是(yes)。
對于(At)客戶端隐藏服務器(集群)的(of)IP地(land)址安全:作(do)爲(for)應用(use)層防火牆,爲(for)網站提供基于(At)的(of)攻擊行爲(for)(如DoS/DDoS)的(of)保護,更容易檢查惡意軟件,爲(for)後端服務器(集群)提供統一(one)的(of)加密和(and)SSL加速(如SSL終端代理)負載平衡。如果服務器集群負載較高,反向代理通過URL重寫。根據連接請求,從負載較低的(of)人(people)獲得相同的(of)資源或備份。對于(At)靜态内容和(and)短時(hour)間内有大(big)量訪問請求的(of)動态内容,提供緩存服務來(Come)壓縮一(one)些内容,以(by)節省帶寬或爲(for)網絡帶寬差的(of)網絡提供服務。
内部網絡穿透,在(exist)文章開頭,我(I)們(them)舉了(Got it)一(one)個(indivual)例子,外部網絡的(of)設備不(No)能直接訪問内部網絡的(of)資源。因爲(for)各種路由(運營商自己的(of))屏蔽了(Got it)我(I)們(them)内部網絡的(of)設備。就像你不(No)能直接訪問百度最下層的(of)例子服務器一(one)樣。這(this)時(hour)候可以(by)利用(use)反向代理暴露内部網絡服務,稱爲(for)内部網絡滲透。具體流程是(yes)這(this)樣的(of)。我(I)們(them)需要(want)一(one)個(indivual)有公共網絡IP的(of)服務器C,然後從本地(land)A訪問C,握手C,建立穩定的(of)通道。外部網絡設備B向C發送請求,C通過剛才建立的(of)穩定通道将請求轉發給A。a收到(arrive)請求後,将響應發送給C,C将響應返還給B。這(this)樣B就可以(by)訪問内部網絡A的(of)資源。