今天研究了一整天如何完整清除系統的帳密,大部分能夠刪除的檔案、登錄檔我都已經刪除,可是就卡在某些軟體如:SIW, MassPass, Mail PassView …等總是能夠撈出一些帳密資訊,我還嘗試用 Process Monitor 監看這些軟體到底做了哪些事情居然…沒有,我這麼煞費苦心主要還是找到的軟體都是幫你挖出密碼,但是都沒有提供刪除這些資訊的功能 orz
只好在網路收集研究這類軟體到底怎麼作,最後終於讓我搞清楚了為什麼那些程式沒存取特別的檔案頁沒讀寫 registry 卻能破解我的帳密。主要都是圍繞在 Windows 提供了“Credential Store”架構讓網路帳密可安全的儲存。所以只要使用這個架構來儲存帳密的程式(如:標題條列的那些)都會被剛剛提到的軟體撈出來,該架構可透過 Credential Management API 存取,上述提到的程式也是透過 Credential Management API 取得,所以這些程式必須在使用者登入狀態才能作用,因為他與目前登入的 Session 有關,所以他無法登入 A 帳號去撈 B 帳號 Credential Store 中的帳密。不信你可用那些程式在不同的帳號中查看會出現不同的帳密。
那破解程式用 API 可取出你的帳密,我們當然也可以自己寫嗎?當然可以,破解程式網路太多我就不列了自己 Google 一下就可以找到。我的重點是怎麼清除那些資訊?簡單的來說只需要用 API 提供的 CredEnumerate() 列出所有的儲存紀錄,然後再用 CredDelete() 逐一刪除即可。
程式太簡單了原始碼就不列了,有興趣的可下載DelCredentialStoreRecord.zip 清除自己的紀錄
執行範例
補充:
* 除了上述透過程式刪除之外,其實還有一個方法這也是我原本想的最終作法,就是把你的帳號刪除,因為其實那些編碼過的資訊是儲存在個人帳號中,所以刪除個人帳號也會一併刪除那些資訊。
你好!不好意思冒昧打擾你了!我有些問題想請教一下,就是在"[C#]一個監聽 http:// 伺服器的範例"這篇文章中(以下為網址)http://chuiwenchiu.spaces.live.com/blog/cns!CA5D9227DF9E78E8!697.entry他建立一個server,那client要怎麼使用他呢?當使用時server端會顯示出訊息嗎?因為禮拜一我要上台報告關於server和client的實際運作,找到你的這篇文章剛好是我想要的,希望版主可以幫我一下,要是方便的話也可以用手機回覆我,不好意思!my phone:0912157354 黃同學