跳到主要內容

為何 Fiddler2可以Decrypt captured SSL packets?

--
fiddler2下載點:http://www.fiddler2.com/fiddler2/version.asp
設定:tools->Fiddler Option ->HTTPS->Capture HTTPS Connects
---
Fiddler2 為何可以decrypt ssl packets? 我思考了後得到這個答案

正確的說法他不是decrypt ssl , 他是屬於使用欺瞞的方式解開ssl 封包

ie----ssl----webserver

我們知道,在ie 與 webserver 中間,如果走了ssl , 那麼由外面攔截封包是沒用的,所以;我們可以大膽的說,途中封包經過任何的proxy gateway .... 都不會因為封包被攔截而導致資料外洩那麼 fiddler2 是怎麼辦到的?我們可以使用IE(一定用ie)連接一個真實的SSL 的website https://www.ssl.com/ 仔細觀察當 fiddler2 開啟時和不開啟時,有什麼差異?

當fiddler2 開啟時會出現此訊息

---
此網站的安全性憑證有問題。

此網站出示的安全性憑證並非由信任的憑證授權單位所發行。
安全性憑證問題可能表示其他人可能正在嘗試欺騙您,或是攔截您傳送到該伺服器的任何資料。

我們建議您關閉此網頁,而且不要繼續瀏覽此網站。

按這裡關閉此網頁。
繼續瀏覽此網站 (不建議)。
其他資訊

若您是按一下連結到達此頁面,請檢查網址列中的網址,確定它是您要瀏覽的位址。
當您使用網址 (例如 https://example.com) 瀏覽網站,請嘗試在網址前加上 'www' (例如 https://www.example.com)。
若選擇略過此錯誤並繼續,請勿在此網站輸入個人資訊。
有關進一步的詳細資料,請參閱 Internet Explorer 中的「憑證錯誤」。
----

而在fiddler2未開啟時,IE卻沒有出現此訊息

why?(這張圖應該可以清楚的表達他的運作模式)

ie--ssl(憑證1)--fiddler2--ssl(憑證2)--website

因為fiddler2 是直接在wininet api(raw socket) 上運作,所以當你的ie 要連接ssl網站時,他是被 fiddler2(proxy) 直接從網卡accept , 由fiddler2 動態產生憑證 (憑證1:這是為何出現上面訊息的原因,因為憑證1並不是真正由webserver發出),因為憑證1 是由fiddler2 產生,所以他能夠解開ie 送出的封包,而當他收到ie 封包且解開後,再反過來跟webserver 做資訊的交通(此時使用的的是憑證2)

fiddler2 是微軟的工程師做的,他會從wininet 著手一點都不覺得奇怪,因為wininet api 是所有微軟ie 送資料(socket)的核心(因此;fiddler可以收到部分MSN 收送HTTP Protocol的資訊),正因fiddler1只從 wininet 著手,所以firefox... 他就無法得到資訊,而 fiddler2 聽說也可以接收其他瀏覽器的封包,我實際測試卻發現firefox3好像也聽不到封包,而要能跨越瀏覽器一定要從網卡下手,從網卡直接修改網路封包,而要有能力這麼做,程式必須要使用root/administrator來跑,也就是說;非使用者安裝的程式無法直接存取硬體, 而且他只能debug 自己的server,無法監聽其他網路上的封包,基本上如果是使用HUB 把其他機器接在一起, 可能聽的到攔不到,所以decrypt ssl 的功能也會跟著失效

留言

這個網誌中的熱門文章

怎麼在網路上註冊成為youbike 會員?

新版官網請參考  怎麼在網路上註冊成為youbike 會員?   http://rd-program.blogspot.tw/2014/04/youbike.html 網路的申請步驟類似,下面將以網路申請來說明申請步驟:申請的時候需要準備悠遊卡、或晶片信用卡,以及手機門號。 1. 請先登入ubike網址: http://www.youbike.com.tw/ ,登入後選擇【正體中文】,要選英文也可以啦! 2. 在螢幕的右上角選擇【註冊】。 3.點擊【開始註冊】。 4. 點擊【同意】。(沒有其他選擇?) 5. 輸入您的【手機號碼】以及【認證碼】,然後按【送出】。這時候手機會收到ubike傳來的簡訊,通之驗證碼,有四個阿拉伯數字。 6. 輸入帳號(手機號碼)、驗證碼(ubike傳到手機的簡訊)、密碼,然後按【下一步】。 7. 還沒完成喔!這裡告訴你如何租車及還車的步驟。把螢幕拉到最下面,記得勾選【我已清楚瞭解租還車步驟】,然後按【下一步】。 8. 選擇悠遊卡或是晶片信用卡,然後輸入卡片號碼,卡片號碼請參卡畫面又下方的提示位置,請注意有些卡號可能已經模糊不清,可能無法輸入。每隻手機不只可以輸入一個卡號。 9. 填寫個人姓名及Email帳號,如果不想收到相關訊息就把前面的打勾取消。按【確認】按鈕。 10. 恭喜您註冊成功,可已開始使用YouBike了。

3分鐘學會使用程式發送msn訊息,php篇(一)

---電子發票整合方案 http:// rd-program.blogspot.com/ 2012/03/blog-post.html --- < imoo msn機器人測試平台,將於下週三(2009.6.24)取消所有未經申請試用的認證資訊 , 詳見相關資訊 > msnSDK訊息控制開發套件 同時支援MSN/Yahoo即時通 訊息雙向傳遞 ps.也請參考 msnSDK的使用流程 ================================ 步驟一:取得api 使用的權限(GETSPID) $file="http://59.120.234.84:8082/msnSDK/msn_cgi-win32?FUNC=GETSPID&USERID=apiblogt1&PASSWD=msnsdkt" ; $myArray=''; $mySession=''; $myResult=''; $getline=''; if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } while ($getline = fgets($fp, 4096)) { $myArray=explode("\t",$getline); $myResult=$myArray[0]; $mySession= $myArray[1]; } fclose($fp); if ($myResult=="0") { echo "get session fail... "; exit(); } else { //$_SESSION["mySession"]= $mySession; echo "get session=".$mySession." "; } echo "<a href='REGISTER.php?uids=".$_GET["uids...