巧用代理猎手揪出局域网中的二级代理
生活随笔
收集整理的這篇文章主要介紹了
巧用代理猎手揪出局域网中的二级代理
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
什么是二級代理?這里不想做概念上的解釋。
?
在這里,內網根據IP范圍分成兩部分,一部分為可上網區,一部分為不可上網區,如果不可上網區的電腦通過可上網區的某臺電腦的“中轉”而上網,那么我們就可以說這臺“中轉”電腦就是(非法)二級代理(圖1中的B)。二級代理是很令網管朋友們頭痛的,因為通常情況下,通過二級代理上網并沒有什么異常之處,所以要在網內查出二級代理也是有些難度,不過,俗話說得好,要想人不知,除非已莫為,通過一些方法,我們是可以揪出這些二級代理的。
二級代理實現的大致方法
知已知彼,百戰不殆。要想找出二級代理,就得先看看它實現的大致原理和方法。圖1中不可上網區的電腦C之所以要通過二級代理B進行上網,是因為它要向代理服務器A隱藏自己的IP,因為如果代理服務器A知道了源地址是C,那么它將拒絕C上網,所以二級代理的關鍵是第一要能隱藏源IP,二要能轉發數據,從網絡分層結構來說,在網絡層,我們可以通過NAT來到達隱藏源IP和轉發數據的要求,從應用層來說,常見的應用代理服務器(如CCproxy)也能實現我們的要求,只是NAT由于工作在網絡層,它基本上適用于任何網絡程序,而代理服務器工作在應用層,所以不同協議的網絡程序需要不同的代理程序,比如IE需要HTTP代理,而wmv在線電影需要mms代理,不過現在流行的代理服務器都集成了很多種代理功能,比如CCproxy就有HTTP/FTP/RTSP/MMS/TELNET等多種代理功能,而NAT方法最大的缺點是它需要二級代理有兩個網絡連接,也就是需要兩塊網卡,這對那種“偷偷摸摸”的二級代理是不現實的,因為這很容易被發現,一般情況下也不容易實現,因為這需要一條多余的網線和多余的網絡接口,所以這里將重點探討應用代理服務器這種二級代理(以CCproxy為例)的查找。
巧用代理獵手發現內網的二級代理
CCproxy既然是服務器,那么它也就需要在某個或某些端口上進行監聽,這樣才能提供代理服務,由于CCproxy集成多種代理功能,所以它需要在多個端口上進行監聽,基于此,我們可以通過掃描端口的方法來發現可疑機器,比如常見的HTTP代理端口是8080,如果掃描發現內網有機器正在監聽8080端口,那這臺機器就很可能是一臺HTTP代理服務器了,但如果對方使用非常規的端口這種方法就不行了,所以通常的端口掃描并不實用,我們需要一種既能進行端口掃描又能進行端口驗證的掃描程序,這樣不管二級代理使用什么端口,都能被準確識別,微軟的portqry可以識別一些特定的服務,但支持的數量有限,并且多與代理無關,這時我們可以使用常用的代理尋找工具,比如用“代理獵手”來完成這個工作(看來這個工具對網管也是很有用的,下面是大致使用步驟:
1.先進行一些必要配置。在網管機上運行代理獵手,選擇菜單“系統”下的“參數設置”,在“搜索驗證設置”*“搜索方法”下勾選上“啟用先PING后連的機制”,這樣可以避開掃描那些不在線IP的端口,從而提高掃描速度,然后切換到“驗證數據設置”標簽,點擊下方的“添加”按鈕,在新窗口的驗證名中填入WEB,驗證地址填入一個連接速度很快的WEB服務器地址,最好是內部的WEB服務器,在特征字串中填入上面WEB服務器首頁源代碼中包含的一個字串,比如<title></title>標簽中的。
2.完成后在主窗口中進入“搜索任務”標簽,添加一個任務,在“任務類型”選擇“搜索網址范圍”,然后在下一個窗口添加上要掃描的內網地址范圍,我這里是192.168.0.1-192.168.0.254,在“端口和協議”窗口中添加端口范圍0-65535(即全掃描),協議為HTTP/FTP/SOCKS,都設置為必搜。
這樣將掃描內網每一臺在線機器上的每一個端口,絕無漏網之魚,完成之后點擊上面的三角形按鈕開始掃描,然后在右邊的“搜索結果”欄里會有掃描結果,如果發現結果是“free”或“要密碼”就表明這臺機器是代理服務器。
其他方法
除了上面的端口掃描和端口驗證的方法,還可以選用其他方法,比如:進行流量監控,但如果二級代理流量比較小,發現它也不容易。
在上級代理服務器(這里是代理服務器A)上的日志中尋找線索,這需要代理服務器日志本身支持記錄一些特殊信息,比如如果上級代理服務器使用的是ISA,而客戶端又是使用的防火墻客戶端,那么在防火墻日志中就會有相關客戶端運行的程序名,比如能夠在日志搜索到CCproxy.exe字樣。
防止被揪出的方法
我們就知道獵手對于server所發出的信息:
GET htttp://www. xxx.com?
HTTP/1.1?
Host: www. xxxx.com?
Accept: */*?
Pragma: no-cache?
User-Agent: ProxyHunter 1.0
也就是說,在發出了這樣一個命令序列后,如果對方是proxy server 的話,獵手就會收www.xxx.com的首頁,然后下來的應該是在 主頁中搜尋預先定義在獵手中的KEYWORD,如果為真,則目標是代理服務器。于是我猜想如果直接的發KEYWORD給它,會不會通過它的檢驗了?答案是:ON!架上sniffer,上一個代理,然后再找一個有限制的,測試完后趕緊斷開連接。下面是真代理服務器的log:?
HTTP/1.1 200 OK?
肯定它還檢查了另外的特征串,但沒有什么好的辦法, 只好一個一個的試了。而在驗證有限制或不能訪問的代理是LOG如下: HTTP/1.1 404 ERROR進一步的研究表明,僅發出 "HTTP/1.1 404" 的字符串就可以欺騙從而通過驗證,獵手顯示“要密碼。2.8版的獵手中還增加的對socks的驗證,但結果同上。
?
在這里,內網根據IP范圍分成兩部分,一部分為可上網區,一部分為不可上網區,如果不可上網區的電腦通過可上網區的某臺電腦的“中轉”而上網,那么我們就可以說這臺“中轉”電腦就是(非法)二級代理(圖1中的B)。二級代理是很令網管朋友們頭痛的,因為通常情況下,通過二級代理上網并沒有什么異常之處,所以要在網內查出二級代理也是有些難度,不過,俗話說得好,要想人不知,除非已莫為,通過一些方法,我們是可以揪出這些二級代理的。
二級代理實現的大致方法
知已知彼,百戰不殆。要想找出二級代理,就得先看看它實現的大致原理和方法。圖1中不可上網區的電腦C之所以要通過二級代理B進行上網,是因為它要向代理服務器A隱藏自己的IP,因為如果代理服務器A知道了源地址是C,那么它將拒絕C上網,所以二級代理的關鍵是第一要能隱藏源IP,二要能轉發數據,從網絡分層結構來說,在網絡層,我們可以通過NAT來到達隱藏源IP和轉發數據的要求,從應用層來說,常見的應用代理服務器(如CCproxy)也能實現我們的要求,只是NAT由于工作在網絡層,它基本上適用于任何網絡程序,而代理服務器工作在應用層,所以不同協議的網絡程序需要不同的代理程序,比如IE需要HTTP代理,而wmv在線電影需要mms代理,不過現在流行的代理服務器都集成了很多種代理功能,比如CCproxy就有HTTP/FTP/RTSP/MMS/TELNET等多種代理功能,而NAT方法最大的缺點是它需要二級代理有兩個網絡連接,也就是需要兩塊網卡,這對那種“偷偷摸摸”的二級代理是不現實的,因為這很容易被發現,一般情況下也不容易實現,因為這需要一條多余的網線和多余的網絡接口,所以這里將重點探討應用代理服務器這種二級代理(以CCproxy為例)的查找。
巧用代理獵手發現內網的二級代理
CCproxy既然是服務器,那么它也就需要在某個或某些端口上進行監聽,這樣才能提供代理服務,由于CCproxy集成多種代理功能,所以它需要在多個端口上進行監聽,基于此,我們可以通過掃描端口的方法來發現可疑機器,比如常見的HTTP代理端口是8080,如果掃描發現內網有機器正在監聽8080端口,那這臺機器就很可能是一臺HTTP代理服務器了,但如果對方使用非常規的端口這種方法就不行了,所以通常的端口掃描并不實用,我們需要一種既能進行端口掃描又能進行端口驗證的掃描程序,這樣不管二級代理使用什么端口,都能被準確識別,微軟的portqry可以識別一些特定的服務,但支持的數量有限,并且多與代理無關,這時我們可以使用常用的代理尋找工具,比如用“代理獵手”來完成這個工作(看來這個工具對網管也是很有用的,下面是大致使用步驟:
1.先進行一些必要配置。在網管機上運行代理獵手,選擇菜單“系統”下的“參數設置”,在“搜索驗證設置”*“搜索方法”下勾選上“啟用先PING后連的機制”,這樣可以避開掃描那些不在線IP的端口,從而提高掃描速度,然后切換到“驗證數據設置”標簽,點擊下方的“添加”按鈕,在新窗口的驗證名中填入WEB,驗證地址填入一個連接速度很快的WEB服務器地址,最好是內部的WEB服務器,在特征字串中填入上面WEB服務器首頁源代碼中包含的一個字串,比如<title></title>標簽中的。
2.完成后在主窗口中進入“搜索任務”標簽,添加一個任務,在“任務類型”選擇“搜索網址范圍”,然后在下一個窗口添加上要掃描的內網地址范圍,我這里是192.168.0.1-192.168.0.254,在“端口和協議”窗口中添加端口范圍0-65535(即全掃描),協議為HTTP/FTP/SOCKS,都設置為必搜。
這樣將掃描內網每一臺在線機器上的每一個端口,絕無漏網之魚,完成之后點擊上面的三角形按鈕開始掃描,然后在右邊的“搜索結果”欄里會有掃描結果,如果發現結果是“free”或“要密碼”就表明這臺機器是代理服務器。
其他方法
除了上面的端口掃描和端口驗證的方法,還可以選用其他方法,比如:進行流量監控,但如果二級代理流量比較小,發現它也不容易。
在上級代理服務器(這里是代理服務器A)上的日志中尋找線索,這需要代理服務器日志本身支持記錄一些特殊信息,比如如果上級代理服務器使用的是ISA,而客戶端又是使用的防火墻客戶端,那么在防火墻日志中就會有相關客戶端運行的程序名,比如能夠在日志搜索到CCproxy.exe字樣。
防止被揪出的方法
我們就知道獵手對于server所發出的信息:
GET htttp://www. xxx.com?
HTTP/1.1?
Host: www. xxxx.com?
Accept: */*?
Pragma: no-cache?
User-Agent: ProxyHunter 1.0
也就是說,在發出了這樣一個命令序列后,如果對方是proxy server 的話,獵手就會收www.xxx.com的首頁,然后下來的應該是在 主頁中搜尋預先定義在獵手中的KEYWORD,如果為真,則目標是代理服務器。于是我猜想如果直接的發KEYWORD給它,會不會通過它的檢驗了?答案是:ON!架上sniffer,上一個代理,然后再找一個有限制的,測試完后趕緊斷開連接。下面是真代理服務器的log:?
HTTP/1.1 200 OK?
肯定它還檢查了另外的特征串,但沒有什么好的辦法, 只好一個一個的試了。而在驗證有限制或不能訪問的代理是LOG如下: HTTP/1.1 404 ERROR進一步的研究表明,僅發出 "HTTP/1.1 404" 的字符串就可以欺騙從而通過驗證,獵手顯示“要密碼。2.8版的獵手中還增加的對socks的驗證,但結果同上。
總結
以上是生活随笔為你收集整理的巧用代理猎手揪出局域网中的二级代理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【测试用例】一支笔的测试用例
- 下一篇: 关于word页眉页脚的设置-页码不连续的