登錄知乎時,賬號密碼是明文傳送的,安全嗎?

最近在仿知乎,做一個demo(項目經歷)出來。
在做·記住密碼·的時候,考慮了安全問題。
試了下抓知乎登錄的包,賬號密碼是!明文!顯示的,那麼不是非常的不安全嗎?

Ps:用的Fiddler抓的,也可以用Wireshark。


安全是個整體性的問題,雖然一般建議登錄註冊頁面需要用HTTPS,但是這一個點只能說是一個薄弱點,真正要通過這個點來攻擊,還是不容易的。


如果有人能監聽到你的網路訪問卻只關心你的知乎密碼,那一定是真愛= =


http本來就是明文傳輸的。
那如果要加密傳輸密碼,只能通過js加密或者控制項加密,問題是,js加密完全在瀏覽器端進行,加密方法源碼都可以看到,所以js加密意義不大。。。(此處有誤,沒有考慮到非對稱性加密。)
--------------------------------------------------
說到MD5,可分為MD5簽名隨機串加鹽MD5簽名
MD5簽名
在密碼不變的情況下,簽名總是一致的。所以黑客知道簽名和知道密碼幾乎是等效的,都可以登錄你的賬號。
隨機串加鹽MD5簽名
隨機串每次請求都是隨機的,使用一次後失效,這樣可以確保每次的簽名結果都是不一樣的。但是,網站端必須保存你的明文密碼,才能進行校驗。
比較好的解決辦法是,網站端保存明文密碼的MD5簽名,js進行MD5(MD5(pass)+salt)簽名。這樣就不怕被抓包了,因為只要這個簽名被校驗過一次就失效了。(但是要注意,這裡的MD5()可以用MD5(SHA1())代替,可以極大增加暴力破解MD5的時間。)
我沒有做過調查,如果有使用隨機串加鹽MD5簽名的知友,請在評論區回復下。或者有更好的簽名演算法,也可以回復下。
--------------------------------------------------
控制項加密需要安裝加密控制項,開發和安裝比較麻煩,一般涉及到金錢方面的站點才會做,知乎沒必要這樣做。

網站安全要求的是保存密碼為非明文,這樣就算被拖庫,都不會泄露密碼。至於傳輸密碼明文不明文,這不重要啊。
畢竟要是能在數據傳輸的時候入侵,那就不是盜取密碼這種小事了。。。
------------------------------------------------------------
我之前的想法是有點問題,沒有考慮到非對稱性加密。
所以,密碼傳輸使用RSA加密即可。
例如:JS客戶端RSA加密,Java服務端解密


今天突然發現,知乎已經是https了 =.=


如果要防止密碼明文泄露,簡單的將密碼Hash就可以了。
如果要抵禦重放攻擊,簡單的CHAP協議就可以了。
這兩種方法本應該是最基礎的安全措施,可是知乎偏偏不採用,那隻能得出結論:知乎認為用戶到知乎伺服器之間的鏈路是完全可靠的,或者知乎根本就不重視用戶安全。


明顯錯誤的回答還有人點贊?就說一點,假設用戶用同一個密碼登陸多個網站,將密碼用明文在網路上傳輸,請問這是將用戶置於何地?

最起碼你把用戶的密碼和固定串做個hash,讓抓包的看不到原始密碼也好啊,自己網站爛起碼不要影響別個的吧

氣屎我了


因為懶,連個sha都懶得取


HTTP網頁都有這個問題,就算經過一些演算法的混餚也容易破解。
擁抱HTTPS。


題主你抓取的包是在你自己電腦上,未進行http或https協議加密前的數據包,這個東西是明文是正常的,在數據經過協議加密之後再發送出去,通過某個節點進行抓取這個數據流的話,就無法解析了。因此常規的盜號方法是通過在你本地機器上安插木馬,獲取加密前的明文數據。


鑒於大多數人在註冊諸多網站時喜歡使用同樣的密碼,所以在密碼傳輸前進行非對稱加密還是很有必要的。


不安全
捨不得上https就沒辦法
馬上letsencrypt出來了看看知乎會不會用上


實際上你訪問的每個知乎頁面都要上傳cookie信息的,看不出黑客盜cookie和盜密碼md5值有多大差別,所以要麼全程https,要麼就這樣


看到這個問題之後,去試了下。發現知乎還是http明文傳輸密碼,這股知錯不改的勁,也是醉了。


不安全
使用HTTP協議傳輸明文密碼,有兩點不安全:
1、傳輸過程中容易被截獲到明文密碼
2、知乎可能存儲明文密碼

對於第一點,HTTP協議在傳輸中都是明文傳輸,用戶的密碼就明文地在網路中傳來傳去,任何一級的路由都可以被看到,被抓取到。比如自己搭建一個WiFi讓別人連上,那別人明文傳輸的密碼就非常容易被獲取到。
對於第二點, 如果只是為了用戶認證,網站沒有任何理由傳明文密碼。MD5加密一下,就多些兩行代碼(此處兩行為實指),就比明文安全一個level,如果密碼設置的足夠強壯,就可以抵禦很大部分的逆向破解。當然,多加幾行代碼,多重MD5加密、加salt、加防重放攻擊邏輯等,就比較完善了。

相比之下,騰訊的用戶認證就比較完善。騰訊自己也沒有存用戶的密碼,存的都是MD5值,以上防範措施都有,不過協議還沒有用HTTPS,但內容被截獲後基本也沒有風險。

PS.現在這麼多網站都獲取明文密碼,個人認為是別有用心,但只是自己的猜測。不過即使想獲取用戶的明文密碼,非對稱加密一下行不?


推薦閱讀:

安全套接層有什麼用?
通過軟/硬體技術可以做到真正的IP偽造嗎?
在facebook註冊的賬號被禁用了怎麼解決?
OSI七層模型中,每一層的數據包都是誰生成和解包的?
計算機網路中信息傳輸的安全是如何保障的?

TAG:知乎 | 網路安全 | 知乎設計 | HTTPS | HTTP |