點擊上方“IT那活兒”公眾號,關注后了解更多內容,不管IT什么活兒,干就完了!!!
背 景
本地某系統使用了Apache Shiro,Shiro 提供了記住我(RememberMe)的功能,下次訪問時無需再登錄即可訪問。系統將密鑰硬編碼在代碼里,且在官方文檔中并沒有強調修改該密鑰,導致使用者大多數都使用了默認密鑰。
攻擊者可以構造一個惡意的對象,并且對其序列化、AES加密、base64編碼后,作為cookie的rememberMe字段發送。Shiro將rememberMe進行解密并且反序列化,最終造成反序列化漏洞,進而在目標機器上執行任意命令。
漏洞修復
KeyGenerator keygen = KeyGenerator.getInstance("AES");
SecretKey deskey = keygen.generateKey();
System.out.println(Base64.encodeToString(deskey.getEncoded()));
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/129152.html
摘要:關于的自動對用戶對象序列化并加密當獲得請求時能夠獲取反序列化且解密之后的用戶對象。 shirorememberMe流程原理研究 輸入用戶密碼正兒八經登錄時, 如果勾選了記住我, 則后臺給shiro設置rememberme showImg(https://segmentfault.com/img/remote/1460000012800157); 前一次登錄勾選了記住我, 則本次登錄時...
摘要:寫在前面在一款應用的整個生命周期,我們都會談及該應用的數據安全問題。用戶的合法性與數據的可見性是數據安全中非常重要的一部分。 寫在前面 在一款應用的整個生命周期,我們都會談及該應用的數據安全問題。用戶的合法性與數據的可見性是數據安全中非常重要的一部分。但是,一方面,不同的應用對于數據的合法性和可見性要求的維度與粒度都有所區別;另一方面,以當前微服務、多服務的架構方式,如何共享Sessi...
閱讀 1353·2023-01-11 13:20
閱讀 1700·2023-01-11 13:20
閱讀 1212·2023-01-11 13:20
閱讀 1904·2023-01-11 13:20
閱讀 4164·2023-01-11 13:20
閱讀 2751·2023-01-11 13:20
閱讀 1397·2023-01-11 13:20
閱讀 3666·2023-01-11 13:20