使用HTTP代理服務器的安全性簡評
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
由于各種原因,在國內上網,免不了要和HTTP代理服務器打交道。HTTP代理服務器分加密代理服務器和普通代理服務器。如果我們在自己的電腦上運行了某些軟件之后就能訪問之前不能訪問的網站,那么很可能是加密代理;如果我們直接在瀏覽器中設置代理服務器,不用運行任何軟件,那么這種類型的代理服務器就是普通代理。一般來說,如果加密代理軟件沒有問題,加密代理的安全性要好于普通代理。在這里,本文主要還是講述普通代理的安全性。 1、HTTP代理協議簡介 瀏覽器和HTTP代理服務器之間是通過HTTP代理協議進行通訊的。如果我們沒有使用運行在自己的電腦上的加密代理,而是直接在瀏覽器中設置了在互聯網上的代理服務器地址,那么瀏覽器就和代理服務器之間進行的通訊就會發送到互聯網上。代理服務器常見的請求有GET、POST和CONNECT,下面分別做介紹: 1.1、GET 如果我們通過代理服務器訪問某個http協議的網站網頁,那么瀏覽器就會向HTTP代理服務器發送GET請求。比如我們通過代理服務器訪問 http://www.microsoft.com/ ,那么瀏覽器就會向HTTP代理服務器發送數據: GET http://www.microsoft.com/ HTTP/1.1 之后代理服務器取得數據后把網頁返回給瀏覽器: HTTP/1.1 200 OK 我們來和沒有使用代理服務器的情況對比一下,如果沒有使用代理服務器,那么我們訪問 http://www.microsoft.com/ ,瀏覽器就會向 www.microsoft.com 這臺服務器發送以下請求: GET / HTTP/1.1 服務器返回: HTTP/1.1 200 OK 我們看到,使用代理服務器之后,GET請求和返回的格式基本沒有變化,是否使用代理服務器的安全性上基本沒有差異。 1.2、POST 當我們在使用http協議的網站上提交表單時(比如網站上的用戶登陸表單,填寫好用戶名和口令,然后點登陸,就把表單提交到服務器了),如果表單類型是POST(大多數表單類型都為POST,不過搜索引擎的搜索表單好像都是GET類型的),那么瀏覽器就會向代理服務器發送POST請求。比如在 http://www.williamlong.info/archives/2209.html 中進行評論,數據會提交到 http://www.williamlong.info/cmd.asp?act=cmt&key=a666b083 ,如果我們使用HTTP代理服務器,以下請求會發送到代理服務器: POST http://www.williamlong.info/cmd.asp?act=cmt&key=a666b083 HTTP/1.1 如果沒有使用代理服務器,那么以下POST請求直接發送到 www.williamlong.info 服務器: POST /cmd.asp?act=cmt&key=a666b083 HTTP/1.1 使用代理服務器和沒有使用代理服務器的返回結果也是基本一致的。所以POST請求在是否使用代理服務器的安全性上也是基本沒有差異的。 1.3、CONNECT 當我們訪問https協議的網站時,瀏覽器會向代理服務器發送CONNECT請求。比如我們訪問 https://mail.google.com/mail/?shva=1#inbox 時,瀏覽器會向代理服務器發送以下請求: CONNECT mail.google.com:443 HTTP/1.0 之后服務器返回: HTTP/1.1 200 Connection established 然后瀏覽器開始向代理服務器發送加密的數據,使用的是 mail.google.com 的SSL證書。代理服務器把 mail.google.com 返回的加密數據原原本本的返回給瀏覽器。 如果沒有使用代理服務器,那么瀏覽器直接連接 mail.google.com:443 ,然后開始發送和接收加密數據。 我們看到,使用了HTTP代理服務器之后,HTTPS協議傳輸的內容仍舊是端到端加密的,HTTPS仍舊保持了傳輸的內容不被任何負責傳輸數據的設備(包括代理服務器)看到的特性。是否使用代理服務器對HTTPS協議的安全性沒有變化。 2、深入討論 Q:我們看到,使用了代理服務器之后,都會把需要訪問網站的域名(包括https的)發送給代理服務器,這樣如果網絡受到監視,就能知道我們在訪問什么網站(但https協議監控不到傳輸的內容,只能知道我們訪問了這個網站),這樣是否降低了安全性? Q:有些代理服務器產品聲稱能夠記錄HTTPS傳輸的內容,是怎么做到的呢? Q:如果我們原先不能訪問某個網站,使用了代理服務器可以放問這個網站了,這個網站是http協議的,這樣訪問這個網站所有的行為在受監控的網絡環境內都會被記錄吧? Q:使用了代理服務器后,網絡數據包所經過的路和沒有使用代理服務器時不同,對安全性有什么影響呢? 3、總結 綜合上述,使用遠程HTTP代理服務器的安全性和不使用代理服務器相比基本沒有什么差別,我們面對的人為網絡故障在使用了代理服務器后也有可能依然存在,也有可能減少甚至消失了。 該文章在 2011/8/31 23:09:49 編輯過 |
關鍵字查詢
相關文章
正在查詢... |